欢迎您访问科普小知识本站旨在为大家提供日常生活中常见的科普小知识,以及科普文章!
您现在的位置是: 首页

以太网帧格式

科普小知识 2024-04-17 18:26:44
...

以太网帧格式,即在以太网帧头、帧尾中用于实现以太网功能的域。

中文名:以太网帧格式

IEEE802.3:Original

IEEE802:Revised1997

V1:原始的一种格式

V2(ARPA):更改EthernetV1电气特性物理接口

RAW802.3:跟正式的IEEE802.3标准不兼容

1、基本简介

在以太网的帧头和帧尾中有几个用于实现以太网功能的域,每个域也称为字段,有其特定的名称和目的

DIX(DigitalEquipmentCorporation,Intel,Xerox——数字设备公司,英特尔,施乐)

Preamble

8

Destination

6

Source

6

Type

2

DataandPad

46~1500

FCS

4

IEEE802.3(Original)

Preamble

7

SFD

1

Destination

6

Source

6

Length

2

DataandPad

46~1500

FCS

4

IEEE802.3(Revised1997)

Preamble

7

SFD

1

Destination

6

Source

6

Length/

Type2

DataandPad

46~1500

FCS

4

2、历史分类

EthernetV1(1980)

这是最原始的一种格式,是由XeroxPARC提出的3MbpsCSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成EthernetV1标准.

EthernetV2(ARPA,1982)

由DEC,Intel和Xerox在1982年公布其标准,主要更改了EthernetV1的电气特性和物理接口,在帧格式上并无变化;EthernetV2出现后迅速取代EthernetV1成为以太网事实标准;EthernetV2帧头结构为6bytes的目标地址+6bytes的源地址+2Bytes的协议类型字段+数据。


以太网帧格式

RAW802.3(Novell,1983)

这是1983年Novell发布其划时代的Netware/86网络套件时采用的私有以太网帧格式,该格式以当时尚未正式发布的802.3标准为基础;但是当两年以后IEEE正式发布802.3标准时情况发生了变化—IEEE在802.3帧头中又加入了802.2LLC(LogicalLinkControl)头,这使得Novell的RAW802.3格式跟正式的IEEE802.3标准互不兼容.该格式中将EthernetV2格式中的type字段改为length字段,因为RAW802.3帧只支持IPX/SPX一种协议。

IEEE802.3/802.2LLC(1985)

这是IEEE正式的802.3标准,它由EthernetV2发展而来。它将EthernetV2帧头的协议类型字段替换为帧长度字段(取值为0000-05dc;十进制的1500),如此一来丧失了与EthernetV2的兼容性,并且导致只能封装一种上层服务,即LLC;并加入802.2LLC头用以标志上层协议,LLC头中包含DSAP,SSAP以及Crontrol字段.

IEEE802.3/802.2SNAP(1985)

这是IEEE为保证在802.2LLC上支持更多的上层协议同时更好的支持IP协议而发布的标准,与802.3/802.2LLC一样802.3/802.2SNAP也带有LLC头,但是扩展了LLC属性,新添加了一个2Bytes的协议类型域(同时将SAP的值置为AA),从而使其可以标识更多的上层协议类型;另外添加了一个3Bytes的OUI字段用于代表不同的组织,RFC1042定义了IP报文在802.2网络中的封装方法和ARP协议在802.2SANP中的实现.

802.3以太网帧格式备注:

以太网帧格式多达5种,这是由历史原因造成的。那么实际使用中具体会用哪种呢?事实上,今天的大多数TCP/IP应用都是用EthernetV2帧格式(IEEE802.3-1997改回了对这一格式的兼容),而交换机之间的BPDU(桥协议数据单元)数据包则是IEEE802.3/LLC的帧,VLANTrunk协议如802.1Q和Cisco的CDP(思科发现协议)等则是采用IEEE802.3SNAP的帧。

前导码(7字节)、帧起始定界符(1字节)、目的MAC地址(6字节)、源MAC地址(6字节)、类型/长度(2字节)、数据(46~1500字节)、帧校验序列(4字节)

字段

字段长度(字节)

目的

前导码(Preamble)

7

同步

帧开始符(SFD)

1

标明下一个字节为目的MAC字段

目的MAC地址

6

指明帧的接受者

源MAC地址

6

指明帧的发送者

长度(Length)

2

帧的数据字段的长度(长度或类型)

类型(Type)

2

帧中数据的协议类型(长度或类型)

数据和填充(DataandPad)注

46~1500

高层的数据,通常为3层协议数据单元。对于TCP/IP是IP数据包

帧校验序列(FCS)

4

对接收网卡提供判断是否传输错误的一种方法,如果发现错误,丢弃此帧

注:如果帧长小于64字节,则要求“填充”,以使这个帧的长度达到64字节。

3、分类区别

在IEEE建立以太网成帧标准时,与DIXv2规范相比,做了略微的修改。如上图1顶上部分,显示了原始DIX的帧结构,中间部分为最初的IEEE帧,IEEE帧在图的下部。

DIX帧与原始802.3的标准有两个不同。DIX不使用SFD,它把前8个字节作为一个整体,用于同步成为前导码。前8个字节在功能上对DIX帧和802.3的标准帧是没有区别的,只是所使用的名称不同。

另一个不同是DIXv2的类型字段和IEEE的长度字段。DIXv2的类型字段指帧中数据字段的内容。施乐设定其占2个字节,称为协议代码,指明某一特定的协议。任何供应商都可向施乐注册,为其协议分配一个代码——协议指任何想通过以太网传输的协议。后来,IEEE接管了协议代码的管理。

在解封装的过程中协议代码非常重要。如:一块网卡收到一个帧,它要将数据从以太帧中解封出来,给接收计算机的正确的软件处理。类型字段指明数据的类型——如,IP分组或其他协议的3层PDU。如果没有类型字段的信息,接收计算机将不会知道要把数据送给哪个软件处理。2字节的IEEE长度字段在帧中所占的位置与DIX类型字段一致。它以字节为单位指明数据的长度。而IEEE完成DIX类型字段任务则要依靠802.3之后的其他协议头。


以太网交换机VLAN配置

有意思的是,IEEE所制定的以太网标准使得DIXv2帧和IEEE帧在一个局域网中不能共存。因此,IEEE允许从现存的DIXv2网卡和网络设备到IEEE的标准设备的迁移。为了让设备可以识别使用的是哪种类型的帧,IEEE没有分配1536以下(十六进制数为0x0600)的数为协议类型代码。数据字段的最大值为1500字节。所以一台设备可以很容易从源地址之后的2个字节来判断是哪种类型的帧,如果值为1536(十进制)或更高则为类型字段,意味着是dixv2帧。如果从源地址之后的2个字节小于1536,则可确定是长度字段,为IEEE802.3帧。

4、参考文献

.WendellOdom,TomKnott著.思科网络技术学院教程CCNA1网络基础.北京:人民邮电出版社,2008,4.

.WadeEdwards,TerryJack,ToddLammle著.CCNP四合一学习指南(中文版).北京:电子工业出版社,2005,7.