以太帧格式
一、以太帧使用场景
1.1 Ethernet Ⅱ以太帧简介
Ethernet II(又称 DIX 2.0)是最广泛使用的以太网帧格式,由DEC、Intel和Xerox在1982年标准化,是TCP/IP网络中最常见的链路层协议。
1.2 Novell Netware 802.3 Raw以太帧简介
这是 1983 年 Novell 发布其划时代的 Netware/86 网络套件时采用的私有以太网帧格式,该格式以当时尚未正式发布的 802.3 标准为基础。
1.3 IEEE 802.3 LLC以太帧简介
IEEE 802.3 LLC以太帧,也称为IEEE 802.3 SAP以太帧,是IEEE 正式的802.3标准,它由Ethernet II发展而来。
1.4 IEEE 802.3 SNAP以太帧简介
IEEE 802.3 SNAP以太帧,是IEEE为保证在802.3 LLC上支持更多的上层协议同时更好的支持IP协议而发布的标准。
二、以太帧结构
2.1 Ethernet Ⅱ以太帧结构
字段 长度 含义 DMAC 6字节 目的MAC地址,IPv4为6字节,该字段标识帧的接收者。 SMAC 6字节 源MAC地址,IPv4为6字节,该字段标识帧的发送者。 Type 2字节 协议类型
0x0800:IP协议
0x0806:ARP协议
0x06DD:IPv6
0x8100: VLAN 802.1QData 46~1500字节 数据字段,标识帧的负载(可能包含填充位)。数据字段的最小长度必须为46字节以保证帧长至少为64字节,这意味着传输1字节信息也必须使用46字节的数据字段。如果填入该字段的信息少于46字节,该字段的其余部分也必须进行填充。数据字段的最大长度为1500字节。以太帧的长度必须为整数字节,因此帧的负载长度不足整数字节,需插入填充字段以保证数据帧的长度为整数字节。 FCS 4字节 帧校验序列FCS(Frame Check Sequence)是为接收者提供判断是否传输错误的一种方法,如果发现错误,丢弃此帧。FCS只是通用叫法,具体的FCS还可以细分多种校验方法。在以太帧中,FCS通常采用循环冗余码校验CRC(Cyclical Redundancy Check)。 前导码 7字节 以太网标准中规定前导码为10101010 10101010 10101010 10101010 10101010 10101010 10101010(二进制),共7字节。 帧开始定界符 1字节 以太网标准中规定帧开始定界符为10101011(二进制),共1字节。
2.2 Novell Netware 802.3 Raw以太帧
当Type字段的值为0000-05DC时,Type字段后变为Length,指后续数据的字节长度,但不包括FCS字段。
Data的字节变为如果填入该字段的信息少于44字节,该字段的其余部分也必须进行填充。数据字段的最大长度为1498字节。
字段 长度 含义 DMAC 6字节 以太网帧的目的MAC地址,指明帧的接收者。 SMAC 6字节 以太网帧的源MAC地址,指明帧的发送者。 Length 2字节 指后续数据的字节长度,但不包括FCS字段。 Data 44~1498字节 数据字段,标识帧的负载(可能包含填充位)。数据字段的最小长度必须为44字节以保证帧长至少为64字节,这意味着传输1字节信息也必须使用44字节的数据字段。如果填入该字段的信息少于44字节,该字段的其余部分也必须进行填充。数据字段的最大长度为1498字节。以太帧的长度必须为整数字节,因此帧的负载长度不足整数字节,需插入填充字段以保证数据帧的长度为整数字节。 FCS 4字节 帧校验序列FCS(Frame Check Sequence)是为接收网卡提供判断是否传输错误的一种方法,如果发现错误,丢弃此帧。FCS只是通用叫法,具体的FCS还可以细分多种校验方法。在以太帧中,FCS通常采用循环冗余码校验CRC(Cyclical Redundancy Check)。
2.3 IEEE 802.3 LLC以太帧简介
IEEE 802.3 LLC以太帧,也称为IEEE 802.3 SAP以太帧,是IEEE 正式的802.3标准,它由Ethernet II发展而来。
字段 长度 含义 DMAC 6字节 目的MAC地址,该字段标识帧的接收者。 SMAC 6字节 源MAC地址,该字段标识帧的发送者。 Length 2字节 指后续数据的字节长度,但不包括FCS字段。 DSAP 1字节 目的服务访问点,长度为1字节,取值范围是0x00~0xFF。 SSAP 1字节 源服务访问点,长度为1字节,取值范围是0x00~0xFF。 Ctrl 1字节 该字段值通常设为0x03,表示无连接服务的IEEE 802.2无编号数据格式。 Data 43~1497字节 数据字段,标识帧的负载(可能包含填充位)。数据字段的最小长度必须为43字节以保证帧长至少为64字节,这意味着传输1字节信息也必须使用43字节的数据字段。如果填入该字段的信息少于43字节,该字段的其余部分也必须进行填充。数据字段的最大长度为1497字节。以太帧的长度必须为整数字节,因此帧的负载长度不足整数字节,需插入填充字段以保证数据帧的长度为整数字节。 FCS 4字节 帧校验序列FCS(Frame Check Sequence)是为接收网卡提供判断是否传输错误的一种方法,如果发现错误,丢弃此帧。FCS只是通用叫法,具体的FCS还可以细分多种校验方法。在以太帧中,FCS通常采用循环冗余码校验CRC(Cyclical Redundancy Check)。
2.4 IEEE 802.3 SNAP以太帧简介
字段 长度(字节) 含义 DMAC 6字节 目的MAC地址,该字段标识帧的接收者。 SMAC 6字节 源MAC地址,该字段标识帧的发送者。 Length 2字节 指后续数据的字节长度,但不包括FCS字段。 DSAP 1字节 目的服务访问点,该值固定为0xAA。 SSAP 1字节 源服务访问点,该值固定为0xAA。 Ctrl 1字节 该字段值固定设为0x03,表示无连接服务的IEEE 802.2无编号数据格式。 SNAP-ID 5字节 由OUI和Type两部分组成。 OUI 3字节 3字节的组织唯一标识符(Organizationally Unique Identifier),其值通常等于MAC地址的前3字节,即网络适配器厂商代码。 Type 2字节 标识以太网帧所携带的上层数据类型。根据RFC1042标准,OUI使用一个特殊的数值0x00-00-00,当这个字段为0x00-00-00时,Type字段与Ethernet II封装中的Type具有相同的含义。 Data 38~1492字节 数据字段,标识帧的负载(可能包含填充位)。数据字段的最小长度必须为38字节以保证帧长至少为64字节,这意味着传输1字节信息也必须使用38字节的数据字段。如果填入该字段的信息少于38字节,该字段的其余部分也必须进行填充。数据字段的最大长度为1492字节。以太帧的长度必须为整数字节,因此帧的负载长度不足整数字节,需插入填充字段以保证数据帧的长度为整数字节。 FCS 4字节 帧校验序列FCS(Frame Check Sequence)是为接收网卡提供判断是否传输错误的一种方法,如果发现错误,丢弃此帧。FCS只是通用叫法,具体的FCS还可以细分多种校验方法。在以太帧中,FCS通常采用循环冗余码校验CRC(Cyclical Redundancy Check)。
三、以太帧结构对比
3.1 Type(Length变种)字段的不同导致
字段功能 数值范围 帧类型 用途 长度字段 0 ≤ Length ≤ 1500 IEEE 802.3(原始/LLC/SNAP) 显式声明数据载荷长度 类型字段 Type ≥ 1536 (0x0600) Ethernet II(DIX) 标识上层协议(如IPv4、IPv6、VLAN) 无效范围 1501 ≤ X ≤ 1535 无效帧 设备直接丢弃





浙公网安备 33010602011771号