第12章-以太帧封装.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章-以太帧封装

第12章 Ethernet帧封装程序设计 基础知识 例题分析 练习题 基础知识 数据链路层的基本概念 Ethernet的基本概念 Ethernet帧的基本格式 CRC校验,工作原理 数据链路层的基本概念(1) 数据链路层(Data Link Layer)的概念,最初是由OSI参考模型提出 数据链路层的主要功能:在底层的物理层提供的服务基础上,在主机之间提供无差错的数据链路 数据链路层的基本概念(2) IEEE802参考模型对应于OSI参考模型的数据链路层与物理层 IEEE 802模型将数据链路层分为2层:逻辑链路控制(LLC,Logical Link Control)与介质访问控制(MAC,Media Access Control) 不同局域网在MAC层与物理层可采用不同协议,在LLC子层需要采用相同协议 Ethernet的基本概念(1) Ethernet是一种总线型局域网,所有节点通过网卡连接在共享的总线上 所有节点可以通过总线发送或接收数据,当一个节点通过总线以广播方式发送数据时,其它节点只能以收听方式接收数据 如果同时有两个或以上节点通过总线发送数据,这时会由于发生冲突而造成传输失败 Ethernet的基本概念(2) Ethernet的核心技术:带冲突检测的载波侦听多路访问(CSMA/CD,Carrier Sense Multiple Access with Collision Detection)控制方法 CSMA/CD的工作流程:先听后发,边听边发,冲突停止,延迟重发 Ethernet帧的结构(1) 帧(Frame)是数据链路层的数据传输基本单位 源节点在数据的前后各添加特殊的字符构成帧,这些特殊的字符是帧头与帧尾 Ethernet帧的结构(2) 前导码(Preamble):帧开始与同步 帧前定界符(Start Delimiter):帧开始与同步 地址(Address):包括目的地址与源地址,接收与发送帧的主机的硬件(MAC)地址 帧长度(Frame Length):帧的总长度 数据(Data):发送给目的节点的实际数据 帧校验和(Frame Checksum):帧传输是否出错 CRC校验的工作原理(1) 数据链路层的差错控制方法 纠错码:接收方发现并自动纠正传输差错,需要为数据添加足够的冗余信息 检错码:接收方能发现差错并要求对方重传数据,只需为数据添加一定的冗余信息 CRC校验的工作原理(2) CRC校验的工作过程 发送端根据要传送的k位二进制序列,以一定规则产生一个校验用的r位二进制序列(CRC),附加在原始信息后构成k+r位的二进制序列,然后发送整个信息 接收端根据信息与CRC之间的规则来校验,以确定在传输中是否出现错误 CRC校验的工作原理(3) 主要的CRC标准 例题设计要求(1) 编写一个Ethernet帧封装程序,具体要求如下 要求实现的程序为图形化界面,可以输入Ethernet帧的数据字段,输出封装的帧的相关字段(前导码、帧前定界符、目的地址、源地址、帧长度、数据与帧校验和) 可以封装包含标准MAC地址的Ethernet帧。点击“Encap”按钮,实现对Ethernet帧的封装 例题设计要求(2) 程序图形界面 关键问题分析(1) 定义Ethernet帧的数据结构 构造Ethernet帧的数据结构,需要符合IEEE 802.3规定的Ethernet帧结构 在这个数据结构中,依次为7字节的前导码、1字节的帧前定界符、6字节的目的地址与源地址、2字节的帧长度、46~1500字节的数据字段与4字节的帧校验和 关键问题分析(2) 填充Ethernet帧的各字段 前导码字段填充为7个连续的0xaa,帧前定界符字段填充为1个0xab,源地址与目的地址字段分别填充为MAC地址80-00-fe-85-3a-5f与80-00-ff-60-2c-dc 帧长度字段根据数据部分计算得到,如果数据部分长度小于46字节,填充0来补足46个字节,帧长度字段填充为64;如果数据部分长度大于1500字节,将数据封装为多个满足要求的帧,每个帧长度需要分别计算 关键问题分析(3) CRC校验算法的实现 构造一个8位的寄存器CRC,将CRC初始值设为0 将数据依次移入CRC的最低位,同时将CRC的最高位移出。当移出数据为1时,CRC行X0R运算;当移出数据为0时,不做运算 每次CRC中的数据左移后,从输入数据中读入一位新数据。由于左移时CRC的最低位补0,当读入数据最高位为1时,将CRC的最低位置1 练习题设计要求(1) 编写一个Ethernet帧封装程序,具体要求如下 要求实现的程序为图形化界面,可以输入Ethernet帧的数据字段,输出封装的帧的相关字段(前导码、帧前定界符、目

文档评论(0)

dajuhyy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档