欢迎来到天天文库
浏览记录
ID:57011783
大小:222.00 KB
页数:19页
时间:2020-07-26
《Ethernet帧结构解析程序课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、吴功宜董大凡王珺刘乾“十一五”国家重点图书计算机科学与技术学科前沿丛书计算机科学与技术学科研究生系列教材(中文版)计算机网络高级软件编程技术1《计算机网络高级软件编程技术》第2章Ethernet帧结构解析程序2《计算机网络高级软件编程技术》概述帧是网络中基本传输单元,熟悉帧结构对于理解网络协议的概念、协议执行过程以及网络层次结构具有重要的意义3《计算机网络高级软件编程技术》编程训练目的编程训练要求相关知识介绍程序设计分析扩展与提高提纲4《计算机网络高级软件编程技术》编程训练目的根据局域网MAC子层的基本原理,通过解析Ethernet帧,掌握帧结构的各个字段含义以及帧的接收过程,加深对M
2、AC子层设计思想与设计方法的理解掌握Ethernet帧结构解析软件设计与编程实现的方法掌握帧CRC校验算法原理与编程实现方法5《计算机网络高级软件编程技术》编程训练目的编程训练要求相关知识介绍程序设计分析扩展与提高提纲6《计算机网络高级软件编程技术》编程训练要求编写程序,解析EthernetV2.0格式的帧封包文件:程序为命令行程序,命令行格式如下:FrameParser.exeinputfile其中,inputfile为Ethernet帧封包文件。帧解析的结果显示在控制台上,格式为:序号:1(表示第n帧)前导码:xxxxxxxxxxxxxx帧前定界符:xx目的地址:xx-xx-xx-xx
3、-xx-xx源地址:xx-xx-xx-xx-xx-xx类型字段:xxxx数据字段:……CRC校验(正确):xx或CRC校验(错误):xx应为:xx状态:Accept或Discard7《计算机网络高级软件编程技术》程序运行的参考界面8《计算机网络高级软件编程技术》编程训练目的编程训练要求相关知识介绍程序设计分析扩展与提高提纲9《计算机网络高级软件编程技术》帧结构EthernetV2.0的帧结构802.3标准的帧结构前导码帧前定界符目的地址源地址类型数据帧校验(7B)(1B)(6B)(6B)(2B)(46~1500B)(4B)前导码帧前定界符目的地址源地址长度数据校验字段(7B)(1B)(2/
4、6B)(2/6B)(2B)(46~1500B)(4B)10《计算机网络高级软件编程技术》Ethernet帧的接收流程分析11《计算机网络高级软件编程技术》CRC校验CRC是一类重要的线性分组码,编码和解码方法简单,检错和纠错能力强它是目前应用最广泛的检错编码方法之一,广泛应用于通信和测控领域12《计算机网络高级软件编程技术》CRC校验——工作原理在发送端用生成多项式G(x)去除发送数据多项式f(x),求得一个余数多项式。将余数多项式附在数据多项式之后发送到接收端在接收端用同样的生成多项式G(x)去除接收数据多项式f(x),得到计算余数多项式通过计算余数多项式与接收余数多项式是否相同来判断是
5、否在传输过程中出现差错13《计算机网络高级软件编程技术》CRC校验——硬件电路实现计算CRC-8(x8+x2+x1+1)的硬件电路实现14《计算机网络高级软件编程技术》编程训练目的编程训练要求相关知识介绍程序设计分析扩展与提高提纲15《计算机网络高级软件编程技术》CRC-8校验算法的实现把register8中的值置为0;//register8是一个8位的寄存器在原始数据input后添加8个0;while(数据未处理完){if(register8首位是1){register8中的数据左移1位;if(从input中读入的新的数据为1){将register8的最低位置1;}register8=r
6、egister8XOR00000111;}else{register8中的数据左移1位;if(从input中读入的新的数据为1){将register8的最低位置1;}}}16《计算机网络高级软件编程技术》编程训练目的编程训练要求相关知识介绍程序设计分析扩展与提高提纲17《计算机网络高级软件编程技术》扩展与提高CRC-32校验查表法实现串行方法算法简单,易于实现,对任意长度的生成多项式都适用,但是它一次只能处理一位数据,效率太低。为了提高处理效率,可以一次处理4位、8位、16位或32位程序分两步实现:计算参数表,计算校验码时只要从表中查找对应的值进行处理即可计算CRC校验码18《计算机网络高
7、级软件编程技术》扩展与提高Ethernet帧的发送流程分析19《计算机网络高级软件编程技术》
此文档下载收益归作者所有