计算机网络专业课程设计帧封装.doc
《计算机网络专业课程设计帧封装.doc》由会员分享,可在线阅读,更多相关《计算机网络专业课程设计帧封装.doc(22页珍藏版)》请在咨信网上搜索。
1、学 号: 课 程 设 计题 目帧封装学 院计算机科学与技术学院专 业软件工程专业班 级软件0902班姓 名指引教师年6月20日课程设计任务书学生姓名: 专业班级: 软件0902班 指引教师: 工作单位: 计算机学院 题目一:帧封装 初始条件:(1)学习有关知识(2)C/C+/VC/VB/JAVA语言(3)PC机一台规定完毕重要任务:(涉及课程设计工作量及其技术规定,以及阐明书撰写等详细规定)编写程序,依照给出原始数据,组装一种IEEE802.3格式帧(题目默认输入文献为二进制原始数据(文献名为input1和input2)。1)规定程序为命令行程序。例如,可执行文献名为framer.exe,则命
2、令行形式如下:framer inputfile outputfile其中,inputfile为原始数据文献,outputfile为输出成果。使用操作系统、语言、编程环境不限,但在报告中必要注明。2)输出:相应input1和input2成果分别为output1和output2。时间安排:第一、二天:查阅资料,学习算法第三、四天:编程调试第五天:书写报告指引教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录1.引言42.以太网帧格式发展43.IEEE802.3帧构造54.错检测65.实现环节75.1前导符75.2目地址及源地址75.3长度及数据字段85.4帧检查序列86.源代码107
3、.运营成果示例178.心得体会189.参照文献19帧封装1. 引言以太网这个术语普通是指由DEC、Intel和Xerox公司在1982年联合发布一种原则,它是当今TCP/IP采用重要局域网技术,它采用一种称作CSMA/CD媒体接入办法。在TCP/IP世界中,以太网IP数据报文封装在RFC 894中定义。以太网采用广播机制,所有与网络连接工作站都可以看到网络上传递数据。通过查看包括在帧中目的地址,拟定与否进行接受或放弃。如果证明数据的确是发给自己,工作站将会接受数据并传递给高层合同进行解决。以太网采用CSMA/CD(Carrier Sense Multiple Access/Collision
4、Detection)媒体访问机制,任何工作站都可以在任何时间访问网络。在以太网中,所有节点共享传播介质。如何保证传播介质有序、高效地为许多节点提供传播服务,就是以太网介质访问控制合同要解决问题。帧是在数据链路层数据进行传播与互换基本单位。构造帧对于理解网络合同概念、合同执行过程以及网络问题解决普通办法具备重要意义。本次课程设计目是应用数据链路层与介质访问控制层知识,依照数据链路层基本原理,通过构造一种详细Ethernet帧,从而进一步理解网络合同基本概念与网络问题解决普通办法。2. 以太网帧格式发展1980,DEC、Intel、Xerox制定了Ethernet I原则;1982,DEC、Int
5、el、Xerox又制定了Ehternet II原则;1982,IEEE开始研究Ethernet国际原则802.3;1983,迫不及待Novell基于IEEE802.3原始版开发了专用Ethernet帧格式;1985,IEEE推出IEEE 802.3规范,日后为解决EthernetII与802.3帧格式兼容问题,推出折衷Ethernet SNAP格式。3. IEEE802.3帧构造数据在网络上是以很小称为帧(Frame)单位传播,帧由几某些构成,不同某些执行不同功能。帧通过特定称为网络驱动程序软件进行成型,然后通过网卡发送到网线上,通过网线到达它们目机器,在目机器一端执行相反过程。接受端机器以太
6、网卡捕获到这些帧,并告诉操作系统帧已到达,然后对其进行存储。“帧”数据大体由两某些构成:帧头和帧数据。帧头涉及接受方主机物理地址定位以及其他网络信息。帧数据区具有一种数据体。为保证计算机可以解释数据帧中数据,这两台计算机使用一种公用通讯合同。互联网使用通讯合同简称IP,即互联网合同。IP数据体由两某些构成:数据体头部和数据体数据区。数据体头部涉及IP源地址和IP目的地址,以及其他信息。数据体数据区涉及顾客数据合同(UDP),传播控制合同(TCP),尚有数据包其她信息。这些数据包都具有附加进程信息以及实际数据。866246 15004前导符目地址源地址长度数据FCS图3.1 IEEE802.3帧
7、构造惯用以太网MAC帧格式用两种原则,一种是DIX Ethernet V2原则(即以太网V2原则),另一种是IEEE802.3原则。这里只简介符合IEEE802.3原则帧,其格式如图3.1所示。它构成比较简朴,由6个字段构成。接下来对这6个某些详细简介一下。(1)前导符:由7字节前同步码和1字节帧起始定界符构成。前同步码:这个字段有7个字节(56位)交替浮现1和0,它作用就是提示接受系统有帧到来,以及使到来帧与计时器进行同步。前同步码其实是在物理层添加上去,并不是(正式)帧一某些。前同步码目的是容许物理层在接受到实际帧起始符之前检测载波,并且与接受到帧时序达到稳定同步。帧起始定界符:这个字段用
8、1字节(10101011)作为帧开始信号,表达一帧开始。最后两位是11,表达下面字段是目地址。(2)目地址(DA) 48位,表达帧准备发往目站地址,共6个字节,可以是单址(代表单个站)、多址(代表一组站)或全地址(代表局域网上所有站)。当目地址浮现多址时,表达该帧被一组站同步接受,称为“组播”(Multicast)。目地址浮现全地址时,表达该帧被局域网上所有站同步接受,称为“广播”(Broadcast),普通以DA最高位来判断地址类型,若第一字节最低位为“0”则表达单址,第一字节最低位为“1”则表达组播。(3)源地址(SA)48位,表白该帧数据是哪个网卡发,即发送端网卡地址。(4)该字段是“长
9、度/类型”。当这个字段值不不大于0X0600时(相称于十进制1536),就表达“类型”。这样帧和以太网V2 MAC帧完全同样。只有当这个字段值不大于0X0600时才表达“长度”,即MAC帧数据某些长度。(5)数据字段最小长度必要为46字节以保证帧长至少为64字节,这意味着传播一字节信息也必要使用46字节数据字段:如果填入该字段信息少于46字节,该字段别的某些也必要进行填充。数据字段默认最大长度为1500字节。(6)帧检查序列(FCS)是32位冗余检查码(CRC),检查除前导、SFD和FCS以外内容。当发送站发出帧时,一边发送,一边逐位进行CRC检查。最后形成一种32位CRC检查和填在帧尾FCS
10、位置中一起在媒体上传播。接受站接受后,从DA开始同样边接受边逐位进行CRC检查。最后接受站形成检查和若与帧检查和相似,则表达媒体上传播帧未被破坏。反之,接受站以为帧被破坏,则会通过一定机制规定发送站重发该帧。4. 错检测在校验字段中,使用是CRC校验。校验范畴涉及目地址字段、源地址字段、长度字段、LLC数据字段。循环冗余编码(CRC)是一种重要线性分组码、编码和解码办法,具备简朴、检错和纠错能力强等特点,在通信领域广泛地用于实现差错控制。CRC校验码检错能力很强,不但能检查出离散错误,还能检查出突发错误。运用CRC进行检错过程可简朴描述如下:在发送端依照要传送k位二进制码序列,以一定规则产生一
11、种校验用r位监督码(CRC码),附在原始信息后边,构成一种新二进制码序列(共k+r位),然后发送出去。在接受端,依照信息码和CRC码之间所遵循规则进行检查,以拟定传送中与否出错。这个规则在差错控制理论中称为“生成多项式”。循环冗余校验码特点:(1)CRC校验码可检测出所有单个错误。(2)CRC校验码可检测出所有奇数位错误。(3)CRC校验码可检测出所有双位错误。(4)CRC校验码可检测出所有不大于、等于校验位长度突发错误。(5)CRC校验码可以 概率检测出长度为(K+1)位突发错误。5. 实现环节123455.1 前导符前导符涉及7字节前发送码和1字节帧起始定界符。由于这些都是固定写法,因而添
12、加起来非常简朴。相应办法如下。public static boolean appendPrefix() / 前导符中前7个字节是交替浮现1和0for (int i = 0;i 7;+i) tmp.add(0XAA);/ 前导符第8个字节是商定好0XABtmp.add(0XAB);return true;5.2 目地址及源地址咱们懂得,目机器硬件地址是通过ARP合同得到,这需要发送ARP祈求包才干得到,为了简化程序设计,突出本次设计要点,因而将目地址固定写成“FF:FF:FF:FF:FF:FF”。类似地,获得本机地址也需要通过一系列函数调用,在程序中就直接写成已知硬件地址“74:E5:0B:7D
13、:CE:3A”。相应办法如下。public static boolean appendAddress() / 由于未显式规定目地址,因而程序中将目地址固定为FF:FF:FF:FF:FF:FFfor (int i = 0;i 6;+i) tmp.add(0XFF);/ 本机地址为74:E5:0B:7D:CE:3Atmp.add(0X74);tmp.add(0XE5);tmp.add(0X0B);tmp.add(0X7D);tmp.add(0XCE);tmp.add(0X3A);return true;5.3 长度及数据字段对于发送端来说,必要先获得数据长度,将长度字段添加到帧中之后才干再添加数据
14、字段,这就限定了必要访问输入文献两次,第一次用于获得文献长度,第二次用于封装帧。固然在进行CRC计算时候有某些地方可以优化。本程序文献是通过FileInputStream进行读入,通过FileOutputStream进行输出。5.4 帧检查序列计算FCS是本程序最困难某些。算法描述如下:(1)输入需要检查序列M,以及发送方与接受方商定好除数P,并初始化余数R为0,若P有n位,则R有n 1位;(2)对序列M中每一位(记为b)进行环节(3)。结束后R即为FCS。(3)将R左移1位,并将b添加到R最低位,判断R最高位,如果是0,则继续(3),如果是1,则将R和P进行按位与操作,成果保存到R中。图5.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络 专业课程 设计 封装
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【a199****6536】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【a199****6536】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。