Ethernet II帧格式 为什么帧长必须在64和1518字节之间
| DA | SA | TYPE | DATA | FCS |
6Bytes 6Bytes 2Bytes 46-1500Bytes 4Bytes
Ethernet II类型以太网帧的最小长度为64字节(6+6+2+46+4),最大长度为1518字节(6+6+2+1500+4)如果包括vlan头,应该再多出4字节。其中前12字节分别标识出发送数据帧的源节点MAC地址和接收数据帧的目标节点MAC地址。
接下来的2个字节标识出以太网帧所携带的上层数据类型,如16进制数0x0800代表IP协议数据,16进制数0x86dd代表IPv6协议数据,16进制数0x809B代表AppleTalk协议数据,16进制数0x8138代表Novell类型协议数据等。
在不定长的数据字段后是4个字节的帧校验序列(Frame. Check Sequence,FCS),采用32位CRC循环冗余校验对从"目标MAC地址"字段到"数据"字段的数据进行校验。
在不定长的数据字段后是4个字节的帧校验序列(Frame. Check Sequence,FCS),采用32位CRC循环冗余校验对从"目标MAC地址"字段到"数据"字段的数据进行校验。
以太网最小发送帧长为64字节,按照标准,10Mbps以太网采用中继器时,连接的最大长度是2500米,最多经过4个中继器,因此规定对10Mbps以太网一帧的最小发送时间为51.2微秒。这段时间所能传输的数据为512位,因此也称该时间为512位时。这个时间定义为以太网时隙,或冲突时槽。512位=64字节,这就是以太网帧最小64字节的原因。现在基本上都是交换机或路由器直接连接计算机,集线器连接很少存在了,在交换机或路由器直接连接计算机时每个计算机与设备之间都是一个独立的冲突域,是不会产生冲突的,因此,此时发送长度小于64字节的帧理论上是可以的,但为了遵循原有标准,考虑到有些集线器设备依旧在使用,因此保持最小帧长64字节不变。
每个字段的详细解释如下:
目标地址:此数据包的目标MAC地址。
l
源地址:此数据包的源MAC地址。 l
协议类型:上层协议,表示网络层使用的协议。 l
数据:高层协议、数据和填充符,范围在46~1500字节。 l
源地址:此数据包的源MAC地址。 l
协议类型:上层协议,表示网络层使用的协议。 l
数据:高层协议、数据和填充符,范围在46~1500字节。 l
FCS:数据帧校验序列,用于确定数据包在传输过程中是否损坏。
l
加上VLAN tag的帧: