以太网数据帧的格式分析.ppt

上传人:小飞机 文档编号:5215215 上传时间:2023-06-14 格式:PPT 页数:17 大小:1.35MB
返回 下载 相关 举报
以太网数据帧的格式分析.ppt_第1页
第1页 / 共17页
以太网数据帧的格式分析.ppt_第2页
第2页 / 共17页
以太网数据帧的格式分析.ppt_第3页
第3页 / 共17页
以太网数据帧的格式分析.ppt_第4页
第4页 / 共17页
以太网数据帧的格式分析.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《以太网数据帧的格式分析.ppt》由会员分享,可在线阅读,更多相关《以太网数据帧的格式分析.ppt(17页珍藏版)》请在三一办公上搜索。

1、以太网数据帧的格式分析,大家都知道我们目前的局域网大多数是以太网,但以太网有多种标准,其数据帧有多 种格式,恐怕有许多人不是太清楚,本文的目的就是通过帧格式和 Sniffer 捕捉的数据包解 码来区别它们。以太网这个术语一般是指数字设备公司(Digital Equipment)、英特尔公司(Intel)和 施乐公司(Xerox)在 1982 年联合公布的一个标准(实际上它是第二版本,第一版本早在 1972 年就在施乐公司帕洛阿尔托研究中心 PARC 里产生了)。它是目前 TCP/IP 网络采用的 主要的局域网技术。它采用一种称作 CSMA/CD 的媒体接入方法,其意思是带冲突检测的载 波侦听多

2、路接入(Carrier Sense,Multiple Access with Collision Detection)。它的速率为 10Mb/s,地址为 48 bit。,1985 年,IEEE(电子电气工程师协会)802 委员会公布了一个稍有不同的标准集,其中 802.3 针对整个 CSMA/CD 网络,802.4 针对令牌总线网络,802.5 针对令牌环网络。这 三者的共同特性由 802.2 标准来定义,那就是 802 网络共有的逻辑链路控制(LLC)。不幸 的是,802.2 和 802.3 定义了一个与以太网不同的帧格式,加上 1983 年 Novell 为其 Netware 开发的私有帧

3、,这些给以太网造成了一定的混乱,也给我们学习以太网带来了一定的影响。,数据,FCS,上图 中,数据链路层头(Header)是数据链路层的控制信息的长度不是固定的,根据以太网 数据 帧的格 式的 不同而 不同,那么 判 断 IEEE802.3、IEEE802.3 SNAP、Ethernet Version2、Netware 802.3“Raw”这些数据帧的最主要依据也源于 Header 的变化。从该图中也可以看出,Sniffer 捕捉数据包的时候是掐头去尾的,不要前面的前导码,也丢弃后面的 CRC 校验(注意它只是不在 Decode 里显示该区域,但并不代表它不去做数据包 CRC 校验),这就是

4、很多人困惑为什么 Sniffer 捕捉到的数据包长度跟实际长度不相符的 原因。那么,Sniffer 是如何来判断这些不同类型的以太网格式呢?,通过图 1-2 的逻辑结构,Sniffer 就可以判断出不同的以太网格式,这里需要注意的是,Sniffer 在数据包解码时有自己的格式,所以有 Offset 之说,图 1-2 中的 offset E 是指在 Sniffer Hex 解码窗口中从左向右第 15 位的数值。大家如果看这幅图有点发懵的话,没有关系,看 完后面的格式分析后再来看这幅图,相信一定能够明白 下面我们通过一些具体的图示和数据包来说明各种以太网格式的具体区别。,2、Ethernet Ve

5、rsion2以太网版本 2 是先于 IEEE 标准的以太网版本。,数链层,前导码,DA,SA,类型,数据,FCS,101010101011,从图 2-1 中可以看出,Ethernet V2 通过在 DLC 头中 2 个字节的类型(Type)字段来辨别接收处理。类型字段是用来指定上层协议的(如 0800 指示 IP、0806 指示 ARP 等),它的 值一定是大于 05FF 的,它提供无连接服务的,本身不控制数据(DATA)的长度,它要求 网络层来确保数据字段的最小包长度(46 字节)。,图 2-2 是 Sniffer 捕获的 Ethernet V2 帧的解码,可以看到在 DLC 层,源 DLC

6、 地址后紧 跟着就是以太网类型(Etehertype)值 0800,代表上层封装的是 IP 报文,0800 大于 05FF,因而我们可以断定它是 Ethernet V2 的帧。,3、IEEE802.3,数链层,前导码,DA,SA,长度,SFD,逻辑链路控制(LLC)802.2,Sniffer捕捉范围,SFD:开始定界符 DSAP:目标服务访问点 SSAP:源服务访问点 Control:控制信息,从图 3-1 可以看出,IEEE802.3 把 DLC 层分隔成明显的两个子层:MAC 层和 LLC 层,其中 MAC 层主要是指示硬件目的地址和源地址。LLC 层用来提供一些服务:通过 SAP 地址来

7、辨别接收和发送方法 兼容无连接和面向连接服务 提供子网访问协议(Sub-network Access Protocol,SNAP),类型字段即由它 的首部给出。,DSAP,SSAP,Control,数据+填充,MAC 层要保证最小帧长度不小于 64 字节,如果数据不满足 64 字节长度就必须进行填充。图 3-2 是 Sniffer 捕获的 IEEE802.3 帧的解码,可以看到在 DLC 层源地址后紧跟着就是802.3 的长度(Length)字段 0026,它小于 05FF,可以肯定它不是 Ethernet V2 的帧,而接 下来的 Offset 0E 处的值“4242”(代表 DSAP 和

8、SSAP),既不是 Novell 802.3“Raw”的特征 值“FFFF”,也不是 IEEE 802.3 SNAP 的特征值“AAAA”,因此它肯定是一个 IEEE802.3 的帧,4、IEEE802.3 SNAP,数链层,前导码,SFD,DA,SA,长度,逻辑链路控制(LLC)802.2,SNAP,SNAPHeader,Control,类型,数据,Sniffer捕捉范围,101010101011,SNAP(Sub-Network Access Protocol)子网访问协议,是逻辑链路控制(Logical LinkControl)的一个子集,它允许协议不用通过服务访问点(SAP)即可实现

9、IEEE 兼容的 MAC 层功能,因此它在 DSAP 和 SSAP 域里的值是固定的(AAAA)。也正源于此,它需要额外 提供 5 个字节的头来指定接收方法,3 个字节标识厂商代码,2 个字节标识上层协议。其 MAC 层保证数据帧长度不小于 64 字节,不足的话需要进行数据填充。,图 4-2 是 Sniffer 捕获的 IEEE802.3 SNAP 帧的解码,可以看到在 DLC 层源地址后紧跟 着就是 802.3 的长度(Length)字段 0175,它小于 05FF,可以肯定它不是 Ethernet V2 的帧,而接下来的 Offset 0E 处的值“AAAA”(代表 DSAP 和 SSAP

10、),这是 IEEE 802.3 SNAP 的特 征值“AAAA”,因此可以断定它是一个 IEEE802.3 SNAP 的帧。,5、Novell Netware 802.3“Raw”虽然它的产生先于 IEEE802.3 规范,但已成为 IEEE802.3 规范的一部分。它仅使用 DLC层的下半部,而不使用 LLC。,数链层,前导码,DA,SA,长度,数据,Sniffer捕捉范围,从图 5-1 中可以看出,802.3“Raw”帧通过在 DLC 头中 2 个字节的长度(Length)字段来标记数据帧长度,而在长度字段后紧跟着就是两个字节的十六进制值 FFFF,它是用来标识 IPX 协议头的开始。为了

11、确保最小数据帧长度为 64 字节,MAC 层会进行填充数据区域 来确保最小长度。在所有工作站都使用同一种数据帧类型情况下不会有什么问题,但如果是在混合以太网 帧类型环境中,Novell 的这种以太网帧会造成负面影响:当 Novell 发出广播帧时,其 FF 字 段正好是 IEEE802.3 帧中的服务访问点(SAP)域,它的“FF”值代表着广播 SAP,因此所 有的工作站(不管是不是 Netware 工作站)都会拷贝,这会造成不必要的广播影响。,图 5-2 是 Sniffer 捕获的 Netware 802.3“RAW”帧的解码,可以看到在 DLC 层源地址后 紧跟着就是 802.3 的长度(

12、Length)字段 0120,它小于 05FF,可以肯定它不是 Ethernet V2的帧,而接下来的 Offset 0E 处的值“FFFF”(代表 IPX 协议的开始),这是 Netware 802.3“Raw”的特征值“FFFF”,因此可以断定它是一个 Novell 802.3“Raw”的帧。,二、Ethernet V2 帧与 IEEE 802.3 帧的比较因为这两种帧是我们在现在的局域网里最常见的两种帧,因此,我们对它们进行一些比 较。从图 6-1 中可以看出,Ethernet V2 可以装载的最大数据长度是 1500 字节,而 IEEE 802.3 可以装载的最大数据是 1492 字节

13、(SNAP)或是 1497 字节;Ethernet V2 不提供 MAC 层的数 据填充功能,而 IEEE 802.3 不仅提供该功能,还具备服务访问点(SAP)和 SNAP 层,能 够提供更有效的数据链路层控制和更好的传输保证。那么我们可以得出这样的结论:EthernetV2 比 IEEE802.3 更适合于传输大量的数据,但 Ethernet V2 缺乏数据链路层的控制,不利于 传输需要严格传输控制的数据,这也正是 IEEE802.3 的优势所在,越需要严格传输控制的应 用,越需要用 IEEE802.3 或 SNAP 来封装,但 IEEE802.3 也不可避免的带来数据装载量的损 失,因此

14、该格式的封装往往用在较少数据量承载但又需要严格控制传输的应用中。,在实际应用中,我们会发现,大多数应用的以太网数据包是 Ethernet V2 的帧(如 HTTP、FTP、SMTP、POP3 等应用),而交换机之间的 BPDU(桥协议数据单元)数据包则是 IEEE802.3 的帧,VLAN Trunk 协议如 802.1Q 和 Cisco 的 CDP(思科发现协议)等则是采用 IEEE802.3SNAP 的帧。大家有兴趣的话,可以利用 Sniffer 等协议分析工具去捕捉数据包,然后解码 查看是不是这样的。,数链层,前导码,sfd,DA,SA,长度,逻辑链路控制(LLC).,SNAPHEADER,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号