本文共 2384 字,大约阅读时间需要 7 分钟。
原创作品,允许转载,转载时请务必以超链接形式标明文章 、作者信息和本声明。否则将追究法律责任。
四种格式的以太网帧结构
用过NetXray之类的抓包软件的人,可能经常会被一些不同的Frame Header搞糊涂,为何用的Frame的Header是这样的,而另外的又不一样。这是因为在Ethernet中存在几种不同的帧格式,下面我就简单介绍一下几种不同的帧格式及他们的差异。
1980 DEC,Intel,Xerox制订了Ethernet I的标准;
1982 DEC,Intel,Xerox又制订了Ehternet II的标准;
1982 IEEE开始研究Ethernet的国际标准802.3;
1983 迫不及待的Novell基于IEEE的802.3的原始版开发了专用的Ethernet帧格式;
后来为解决EthernetII与802.3帧格式的兼容问题推出折衷的Ethernet SNAP格式 。
(其中早期的Ethernet I已经完全被其他帧格式取代了所以现在Ethernet只能见到后面几种Ethernet的帧格式现在大部分的网络设备都支持这几种Ethernet的帧格式如:cisco的路由器在设定Ethernet接口时可以指定不同的以太网的帧格式:arpa,sap,snap,novell-ether)
是DIX以太网联盟推出的,它由6个字节的目的MAC地址,6个字节的源MAC地址,2个字节的类型域(用于表示装在这个Frame、里面数据的类型),以上为Frame Header,接下来是46--1500 字节的数据,和4字节的帧校验)
它的帧头与Ethernet有所不同其中EthernetII帧头中的类型域变成了长度域,
后面接着的两个字节为0xFFFF用于标示这个帧是Novell Ether类型的Frame,由于前面的0xFFFF站掉了两个字节所以数据域缩小为44-1498个字节,帧校验不变。
802.3的Frame Header和Ethernet II的帧头有所不同,它把EthernetII类型域变成了长度域(与Novell Ethernet相同)。其中又引入802.2协议(LLC)在802.3帧头后面添加了一个LLC首部,由DSAP(Destination Service Access Point) 1 byte,SSAP(Source SAP) 1 byte,一个控制域 1 byte! SAP用于表示帧的上层协议。
Ethernet SNAP Frame与802.3/802.2 Frame的最大区别是增加了一个5 Bytes的SNAP ID,其中前面3个byte通常与源mac地址的前三个bytes相同,为厂商代码!有时也可设为0。后2 bytes 与Ethernet II的类型域相同。
Ethernet II和IEEE802.3是局域网里最常见的帧: Ethernet II可以装载的数据长度是46---1500; IEEE802.3 SAP可以装装的数据长度是43---1497; IEEE 802.3 SNAP可以装载的数据长度是38---1492. Ethernet II不提供MAC层的数据填充功能; IEEE802.3 SAP和SNAP都提供数据填充功能. 比IEEE802.3 SAP和SNAP更适合于传输大量的数据,但Ethernet II缺乏对数据链路层的控制,不利于传输需要严格传输控制的数据. <span color:="" red;="" font-family:="" 宋体;="" mso-font-kerning:="" 0pt;="" mso-bidi-font-family:="" mso-highlight:="" silver"="" style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font-size: 12pt; ">实际中,我们会发现,大多数应用程序的以太网数据包都是Ethernet II帧的(如HTTP/Telnet/FTP/SMTP/POP3等应用),而交换机之间的BPDU是采用IEEE802.3 SAP帧,VLAN Trunk协议802.1Q和Cisco CDP都是采用IEEE802.3 SNAP帧. 顺便提供一下各种Ethertype(以太网类型)和SAPs(服务访问点):
Netware 8137 Netware 10,E0
IP(Wines) 0BAD,80C4 SNA 04,05,08,0C
LAT 6004 ISO 20,34,EC,FE,14,54
ARP(AppleTalk) 80F3
本文出自 “” 博客,请务必保留此出处