分类: 系统运维
2008-12-12 17:32:21
用过NetXray之类的抓包软件的人,可能经常会被一些 不同的Frame Header搞糊涂,为何用的Frame的Header
是这样的,而另外的又不一样。这是因为在Ethernet 中存在几种不同的帧格式,下面我就简单介绍一下几种
不同的帧格式及他们的差异。
一。Ethernet帧格式的发展
1980 DEC,Intel,Xerox制订了Ethernet I的标准
1982 DEC,Intel,Xerox又制订了Ehternet II的标准
1982 IEEE开始研究Ethernet的国际标准802.3
1983 迫不及待的Novell基于IEEE的802.3的原始版开发了专用的Ethernet帧格式
1985 IEEE推出IEEE 802.3规范
后来为解决EthernetII与802.3帧格式的兼容问题推出折衷的Ethernet SNAP格式
(其中早期的Ethernet I已经完全被其他帧格式取代了所以现在Ethernet只能见到后面几种Ethernet的帧格式现在大部分的网络设备都支持这几种Ethernet的帧格式如:cisco的路由器再设定Ethernet接口时可以指定不同的以太网的帧格式:arpa,sap,snap,novell-ether)
二.各种不同的帧格式
下面介绍一下各个帧格式
三.如何区分不同的帧格式
Ethernet中存在这四种Frame那些网络设备又是如何识别的呢? 如何区分EthernetII与其他三种格式的Frame 如果帧头跟随source mac地址的2 bytes的值大于1500 则此Frame为EthernetII格式的。
接着比较紧接着的两bytes如果为0xFFFF则为Novell Ether 类型的Frame
如果为0xAAAA则为Ethernet SNAP格式的Frame ,如果都不是则为Ethernet 802.3/802.2格式的帧
以太网帧结构概述
以太网帧是OSI参考模型数据链路层的封装,网络层的数据包被加上帧头和帧尾,构成可由数据链路层识别的数据帧。虽然帧头和帧尾所用的字节数是固定不变的,但根据被封装数据包大小的不同,以太网帧的长度也随之变化,变化的范围是64-1518字节(不包括8字节的前导字)。
一、典型帧结构:Ethernet_II
Ethernet_II中所包含的字段:
前导码:包括同步码(用来使局域网中的所有节点同步,7字节长)和侦标志(帧的起始标志7,1字节)两部分;
目的地址:接收端的MAC地址,6字节长;
源地址:发送端的MAC地址,6字节长;
类型:数据包的类型(即上层协议的类型),2字节长;
数据:被封装的数据包,46-1500字节长;
校验码:错误检验,4字节长。
Ethernet_II的主要特点是通过类型域标识了封装在帧里的数据包所采用的协议,类型域是一个有效的指针,通过它,数据链路层就可以承载多个上层(网络层)协议。但是,Ethernet_II的缺点是没有标识帧长度的字段。
二、原始的802.3
原始的802.3帧是早期的Novell NetWare网络的默认封装。它使用802.3的帧类型,但没有LLC域。同Ethernet_II的区别:将类型域改为长度域,解决了原先存在的问题。但是由于缺省了类型域,因此不能区分不同的上层协议。
三、802.2SAP/SNAP:
为了区别802.3数据帧中所封装的数据类型, IEEE引入了802.2SAP和SNAP的标准。它们工作在数据链路层的LLC(逻辑链路控制)子层。通过在802.3帧的数据字段中划分出被称为服务访问点(SAP)的新区域来解决识别上层协议的问题,这就是802.2SAP。LLC标准包括两个服务访问点,源服务访问点(SSAP)和目标服务访问点(DSAP)。每个SAP只有1字节长,而其中仅保留了6比特用于标识上层协议,所能标识的协议数有限。因此,又开发出另外一种解决方案,在802.2SAP的基础上又新添加了一个2字节长的类型域(同时将SAP的值置为AA),使其可以标识更多的上层协议类型,这就是802.2SNAP。
帧格式及图解
以太网帧结构概述 以太网帧是OSI参考模型数据链路层的封装,网络层的数据包被加上帧头和帧尾,构成可由数据链路层识别的数据帧。虽然帧头和帧尾所用的字节数是固定不变的,但根据被封装数据包大小的不同,以太网帧的长度也随之变化,变化的范围是64-1518字节(不包括8字节的前导字)。 一、典型帧结构:Ethernet_II Ethernet_II中所包含的字段: 前导码:包括同步码(用来使局域网中的所有节点同步,7字节长)和侦标志(帧的起始标志7,1字节)两部分; 目的地址:接收端的MAC地址,6字节长; 源地址:发送端的MAC地址,6字节长; 类型:数据包的类型(即上层协议的类型),2字节长; 数据:被封装的数据包,46-1500字节长; 校验码:错误检验,4字节长。 Ethernet_II的主要特点是通过类型域标识了封装在帧里的数据包所采用的协议,类型域是一个有效的指针,通过它,数据链路层就可以承载多个上层(网络层)协议。但是,Ethernet_II的缺点是没有标识帧长度的字段。 Ethernet II: 二、原始的802.3 原始的802.3帧是早期的Novell NetWare网络的默认封装。它使用802.3的帧类型,但没有LLC域。同Ethernet_II的区别:将类型域改为长度域,解决了原先存在的问题。但是由于缺省了类型域,因此不能区分不同的上层协议。 三、802.2SAP/SNAP: 为了区别802.3数据帧中所封装的数据类型, IEEE引入了802.2SAP和SNAP的标准。它们工作在数据链路层的LLC(逻辑链路控制)子层。通过在802.3帧的数据字段中划分出被称为服务访问点(SAP)的新区域来解决识别上层协议的问题,这就是802.2SAP。LLC标准包括两个服务访问点,源服务访问点(SSAP)和目标服务访问点(DSAP)。每个SAP只有1字节长,而其中仅保留了6比特用于标识上层协议,所能标识的协议数有限。因此,又开发出另外一种解决方案,在802.2SAP的基础上又新添加了一个2字节长的类型域(同时将SAP的值置为AA),使其可以标识更多的上层协议类型,这就是802.2SNAP。 |