某些以太网卡可以使用非常大的框架。一种情况是9k帧或巨型帧,另一种情况是超级巨型帧(据我所知,最大为64k)。
如此大的数据包使用什么格式的帧?
据我所知,普通帧有两种广泛使用的格式:
Preamble Start_byte dest_mac src_mac Ethertype/length Payload CRC Interframe gap
10101010x7 10101011 6 bytes 6 bytes 2 bytes 46–1500 bytes 4 bytes 12 bytes
在一种情况下,以太类型用于长度,其次用于分组类型。如果此字段 = 0x0600-它是一种类型。
因此,将9000作为长度存储在该字段中似乎是不可能的。巨型和超级巨型帧的长度如何存储?
最佳答案
jumbos使用的格式是相同的。尽管有此说明,但以太类型字段通常不用于存储长度。通常,在以太类型字段中,您不会看到长度。您会看到一种类型。类型是由IANA在此处指定的:
http://www.iana.org/assignments/ethernet-numbers
通常,您将从表中看到以下类型之一:
Ethertype Exp. Ethernet Description References
---------------- -------------- -------------------- ----------
2054 0806 - - ARP [IANA]
2048 0800 513 1001 Internet IP (IPv4) [IANA]
86DD IPv6 [IANA]
起作用的原因有两个:
发送数据包的硬件不依赖Layer 2 length字段来知道Layer 1长度。
某些Layer 3数据包(例如ARP)具有已知大小(至少对于已知的硬件/协议地址长度组合,例如通常使用的以太网/ IP)。 IPv4 / IPv6数据包在其自己的标头中具有长度字段。