Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

header of jumbo ethernet frame and of super jumbo frame

There is possible to use very big frames with some ethernet cards. One case is 9k frames or jumbo frame and other case is super jumbo frame (as i know, up to 64k).

What is format of frame used for such huge packets?

As I know, for normal frames two formats used widely:

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

In one case, the ethertype is used for length, and in second - for packet type. If this field is < 0x0600 (decimal 1536 bytes), this is a length; if >= 0x0600 - it is a type.

So, it looks impossible to store 9000 in this field as length. How length of jumbo and super jumbo frames is stored?

like image 466
osgx Avatar asked Oct 27 '11 16:10

osgx


1 Answers

The format used for jumbos is the same. Despite this description, the Ethertype field is not normally used to store a length. Normally in the Ethertype field, you will not see a length; you will see a type. Types are specified by IANA here:

http://www.iana.org/assignments/ethernet-numbers

Usually you'll see one of the following types from the table:

Ethertype         Exp. Ethernet   Description           References
----------------  --------------  --------------------  ----------
  2054   0806        -      -     ARP                       [IANA]
  2048   0800        513   1001   Internet IP (IPv4)        [IANA]
         86DD                     IPv6                      [IANA]

There are two reasons this works:

  • The hardware sending the packet doesn't depend on the Layer 2 length field to know the Layer 1 length.
  • Some Layer 3 packets such as ARP have a known size (at least, for a known combination of hardware/protocol address length, such as Ethernet/IP where it is normally used). IPv4/IPv6 packets have a length field in their own header.
like image 93
mpontillo Avatar answered Sep 29 '22 10:09

mpontillo