This article is from the Ethernet FAQ, by James Messer James@NetworkUptime.com with numerous contributions by others.
Ethernet Version 2 and IEEE 802.3 Frame Formats
-----------------------------------------------
The Ethernet Version 2 frame format was designed before the IEEE
specifications, but is almost identical to the 802.3 frame type.
With the Ethernet Version 2 frame type, a two-byte Type field
follows the source station's six-byte MAC address. In the 802.3
frame type, this two-byte field after the source address is a length
field specifying the number of bytes in the LLC and data fields. If
these two bytes are greater than 05DC hex (1500 decimal), the frame
is a Version 2 frame. Since all type fields are greater than 1500
decimal (the maximum Ethernet frame size), both frame types can
easily coexist on the same network. Some network protocol analyzers
call a Version 2 frame an Ethertype frame because of this two-byte
Type field.
This is an Ethernet Version 2 frame:
+--------------+
| | The preamble consists of 62 bits of alternating
| Preamble | ones and zeros that allows the Ethernet card to
| 7 bytes | synchronize with the beginning of a frame.
| |
+--------------+ The Start Frame Delimiter is the sequence
| SFD - 1 byte | 10101011, and indicates the start of a frame.
+--------------+
| | The destination address is a six byte Media Access
| Destination | Control (MAC) address, usually burned into the
| 6 bytes | ROM of the Ethernet card.
+--------------+
| | The source address is a six byte MAC address, and
| Source | can signify a physical station or a broadcast.
| 6 bytes |
+--------------+
| Type | The Type field (see explanation above).
| 2 bytes |
+--------------+
| | Any higher layer information is placed in the
| Data | data field, which could contain protocol
| | information or user data.
~ ~
~ ~
| 46 to 1500 |
| bytes |
| |
+--------------+
| FCS | The Frame Check Sequence is a cyclic redundancy
| 4 bytes | check used by the sending and receiving stations
+--------------+ to verify a successful transmission. The FCS is
based on the contents of the destination address,
source address, type, and data.
+----------------+
| |
| Preamble |
| 7 bytes |
| |
+----------------+
| SFD - 1 byte |
+----------------+
| |
| Destination |
| 6 bytes |
+----------------+
| |
| Source |
| 6 bytes |
+----------------+
| Frame Length |
| 2 bytes |
+----------------+
| DSAP - 1 byte | The Destination and Source Service Access Point
+----------------+ fields determine the protocol used for the upper
| SSAP - 1 byte | protocol type of the frame.
+----------------+
|Control - 1 byte| The Control field is used for administration by
+----------------+ certain protocols.
| Data |
| |
~ ~
~ ~
| 46 to 1500 |
| bytes |
| |
+----------------+
| FCS |
| 4 bytes |
+----------------+
+----------------+
| |
| Preamble |
| 7 bytes |
| |
+----------------+
| SFD - 1 byte |
+----------------+
| |
| Destination |
| 6 bytes |
+----------------+
| |
| Source |
| 6 bytes |
+----------------+
| Frame Length |
| 2 bytes |
+----------------+
| DSAP - 1 byte |
+----------------+
| SSAP - 1 byte |
+----------------+
|Control - 1 byte|
+----------------+ The Organizationally Unique ID (OUI) is assigned
| OUI - 3 bytes | to unique vendors to help differentiate protocols
| | from different manufacturers.
+----------------+
| Type - 2 bytes | The two-byte protocol type defines a specific
+----------------+ protocol in the SNAP. This also maintains a
| | compatibility with Ethernet v2.
| Data |
| |
~ ~
~ ~
| 46 to 1500 |
| bytes |
| |
+----------------+
| FCS |
| 4 bytes |
+----------------+
 
Continue to: