Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to determine the length of an Ethernet II frame?

The Ethernet II frame format does not contain a length field, and I'd like to understand how the end of a frame can be detected without it.

Unfortunately, I have no idea of physics, but the following sounds reasonable to me: we assume that Layer 1 (Physical Layer) provides us with a way of transmitting raw bits in such a way that it is possible to distinguish between the situation where bits are being sent and the situation where nothing is sent (if digital data was coded into analog signals via phase modulation, this would be true, for example - but I don't know if this is really what's done). In this case, an ethernet card could simply wait until a certain time intervall occurs where no more bits are being transmitted, and then decide that the frame transmission has to be finished.

Is this really what's happening?

If yes: where can I find these things, and what are common values for the length of "certain time intervall"? Why does IEEE 802.3 have a length field?

If not: how is it done instead?

Thank you for your help!

Hanno

like image 979
Hanno Avatar asked Aug 05 '10 16:08

Hanno


People also ask

How do I know my Ethernet frame size?

The frame size of a standard Ethernet frame (defined by RFC 894) is the sum of the Ethernet header (14 bytes), the payload (IP packet, usually 1,500 bytes), and the Frame Check Sequence (FCS) field (4 bytes).

What is the length of the Ethernet II frame containing the Ethernet header?

Ethernet II An Ethernet frame must be at least 64 bytes for collision detection to work, and can be a maximum of 1,518 bytes. The packet starts with a preamble that controls the synchronization between sender and receiver and a "Start Frame Delimiter" (SFD) that defines the frame.

What is length in Ethernet frame?

To recap, Ethernet has a minimum frame size of 64 bytes, comprising an 18-byte header and a payload of 46 bytes. It also has a maximum frame size of 1518 bytes, in which case the payload is 1500 bytes.

How do you determine your frame size?

Once you know the height and width of your picture frame, add the two measurements together and multiply that number by two. For example, if you are framing a print that is 11x14, you will add 11 and 14 to get 25. Then multiply that number by two to get 50. This is the total length of your print.


1 Answers

Your assumption is right. The length field inside the frame is not needed for layer1.

Layer1 uses other means to detect the end of a frame which vary depending on the type of physical layer.

  • with 10Base-T a frame is followed by a TP_IDL waveform. The lack of further Manchester coded data bits can be detected.
  • with 100Base-T a frame is ended with an End of Stream Delimiter bit pattern that may not occur in payload data (because of its 4B/5B encoding).

A rough description you can find e.g. here: http://ww1.microchip.com/downloads/en/AppNotes/01120a.pdf "Ethernet Theory of Operation"

like image 109
Curd Avatar answered Oct 11 '22 13:10

Curd