- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TOC \o 1-5 \h \z 一、课程设计的目的和意义 1
一、 课程设计的内容和要求 1
二、 课程设计的相关技术 1
1. 帧 1
校验 3
三、 课程设计过程 5
1. 填充帧头部字段 5
2. 填充数据字段 5
校验 6
4 相关扩展 7
1. 比特型运算法 7
2. 字节型算法 8
5. 程序流程图: 9
基本实现 10
7. 程序代码 11
行结果与分析 11
五、 课程设计小结 12
一、课程设计的目的和意义
目的:点对点信道的数据链路层的协议数据单元是帧。熟悉帧结构对于理解 网络协议的概念、 网络层次结构与协议执行过程具有重要意义。 本课程设计的主 要目的的是通过封装 Ethernet 帧,了解 Ethernet 帧中各个字段的含义和用途。
意义:帧是在数据链路层中进行数据传输的单位。让学生理解帧的每个字段 的含义和用途,透彻理解网络协议的概念。
一、 课程设计的内容和要求 本次课程设计我负责的主要内容为:封装 Ethernet 帧中的 CRC校验。
对于帧的封装: 首先填充帧头部字段。 其次便是填充帧的数据的字段 (注意数据字段的长度)。最后便是 CRC校验了。对于 CRC校验,我们需要将校 验结果记入帧校验字段。(其实现过程详细见课程设计过程) 根据后面介绍的帧结构,编写程序将指定数据封装为 Ethernet 帧。
1)以命令行形式运行:
EncapFrame input_file output_file
其中,EncapFrame为程序名, input_file 为输入数据文件, output_file 为输出文件。
2) 输出内容: Ethernet 帧的各字段内容。
二、 课程设计的相关技术
1. 帧
术语“帧”来源于串行线路上的通信。其中,发送者在发送数据的前后分
别添加特殊的字符,使它们成为一个帧。 Ethernet 从某种程度上可以被看做是 机器之间的数据链路层连接。
首先我们来认识一下帧结构, 规范和标准中的 Ethernet 帧结构有一些差别,
这里我们按标准的帧结构进行讨论。图为帧结构图
前导码
帧前定界
符
目的地址
源地址
长度字段
数据字
段
校验字段
(7B)
(1B)
(2/6B)
(2/6B)
(2B)
(长度
可变)
(4B)
如上图所示,标准的 Ethernet 帧结构由 7 部分组成
1) 前导码与帧前定界符字段
前导码由 56 位( 7B)的?位序列组成。帧前定界符可以视为前导码 的延续。 1B的帧前定界符结构为 .
如果将前导码与帧前定界符一起看, 那么在 62位 101010?1010位序 列之后出现 11。在 11 之后是 Ethernet 帧的目的地址字段。 前导码与 帧前定界符主要是保证接收同步,这 8B 接收后不需要保留,也不记 入帧头长度中。
2) 目的地址和源地址
目的地址( DA)与源地址( SA)分别表示帧的接收结点地址与发送结 点的硬件地址。
在Ethernet 帧中,目的地址和源地址字段长度可以是 2B或 6B。目前 的 Ethernet 都使用 6B 长度的地址。
Ethernet 帧的目的地址可以是单播地址、 多播地址与广播地址, 目的 地址的第一位为 0 表示单播地址,为 1 表示多播地址,目的地址为全 1 则表示广播地址。
3) 长度字段
Ethernet 帧用 2B 定义数据字段包含的字节数。协议规定,帧数据的 最小长度为 46B,最大长度为 1500B。设置最小帧长度的目的是使每 个接收结点能够有足够时间检测到冲突。
4) 数据字段
帧数据字段的最小长度为 46B。如果帧的 LLC 数据少于 46B,则应将 数据字段填充只 46B。填充字符是任意的,不计入长度字段值中。
(5) 校验字段
帧校验字段( FCS)采用 32 位的 CRC校验。校验的范围包括目的地址 字段、源地址字段、长度字段、 LLC数据字段。
此处,为了简便起见,采用 8 位的 CRC校验。 CRC校验的生成多项式 为:
G(X)=X^8+X^2+X+1
某些帧结构中还会包括帧类型字段, 用来识别此帧所承载的数据的类 型。当一个帧到达指定的计算机时,操作系统根据帧类型决定用哪个 协议软件模块对它进行处理。自识别帧的主要优点是,可以在同一物 理网络中使用多个协议而互不干扰。
校验
循环冗余编码的编码方式。
循环冗余编码是一种重要的线性分组编码、 解码和编码的方式, 具有简单的 检错和纠错能力。
过程:在发送端,根据要传送的 k 位二进制码序列, 以一定的规则产生一个 校验用的 r 位监督码( CRC码),附在原始信息的后边,构成一个新的二进制码 序列(共 k+r 位),然后发送出去。在接收端,根据
原创力文档


文档评论(0)