Ethernet Frame Formats
An understanding of the basics of the Ethernet Frame Format is crucial to any discussion of Ethernet technology.
In this document, we will discuss:
- The four different frame formats used in the Ethernet world
- The purpose of each of the fields in an Ethernet frame.
- The reasons that there are so many different versions of the Ethernet Frame Format
Ethernet, Ethernet, Ethernet, or Ethernet?!
When somebody tells me that they are running Ethernet on their network, I inevitably have to ask: “Which Ethernet?”. Currently, there are many versions of the Ethernet Frame Format in the commercial marketplace, all subtly different, and not necessarily compatible with each other.
The explanation for the many types of Ethernet Frame Formats currently on the marketplace lies in Ethernet’s history. In 1972, Work on the original version of Ethernet, Ethernet Version 1, began at the Xerox Palo Alto Research Center. Version 1 Ethernet was released in 1980 by a consortium of companies consisting of DEC, Intel, and Xerox. In the same year, the IEEE meetings on Ethernet began. In 1982, the DIX (DEC/Intel/Xerox) consortium released Version II Ethernet, and since then, it has almost completely replaced Version I in the marketplace. In 1983, Novell NetWare ’86 was released, with a proprietary frame format based on a preliminary release of the 802.3 spec. Two years later, when the final version of the 802.3 spec was released, it had been modified to include the 802.2 LLC Header, making NetWare’s proprietary format incompatible. Finally, the 802.3 SNAP format was created to address backwards compatibility issues between Version 2 and 802.3 Ethernet.
As you can see, the large number of players in the Ethernet world has created a number of different choices. The bottom line is this: Either a particular driver supports a particular frame format, or it doesn’t. Typically, Novell stations can support any of the frame formats, while TCP/IP stations will support only one, although there are no hard and fast rules in Networking.
Ethernet Frame Formats
The following sections of the essay will outline the specific fields in the different types of Ethernet frames. Throughout the section, we will refer to fields by referencing their “offset” or number of bytes from the start of the frame, beginning with zero. Therefore, when we say that the destination address field is from offset zero through five, we are referring to the first six bytes of the frame.
Regardless of the frame type being used, the means of digital signal encoding on an Ethernet network is the same. While a discussion of Manchester Encoding is beyond the scope of this document, it is sufficient to say this: On an idle Ethernet network, there is no signal. Because each station has its own oscillating clock, the communicating stations have to have some way to “synch up” their clocks and thereby agree on how long one bit time is. The preamble facilitates this. The preamble consists of 8 bytes of alternating ones and zeros, ending in 11. A station on an Ethernet network detects the change in voltage that occurs when another station begins to transmit, and uses the preamble to “lock on” to the sending station’s clock signal. Because it takes some amount of time for a station to “lock on”, it does not know how many bits of the preamble have gone by. For this reason, we say that the preamble is “lost” in the “synching up” process. No part of the preamble ever enters the adapter’s memory buffer. Once locked on, the receiving station waits for the 11 that signals that the Ethernet frame follows.
Most modern Ethernet adapters are guaranteed to achieve a signal lock within 14 bit-times.
While the preamble is common to every type of Ethernet, what follows it is certainly not. The major types of Ethernet Frame Format are:
|Frame Type||Novel calls it…||Cisco calls it…|
|IEEE 802.3||SNAP||ETHERNET_SNAP SNAP|
|Novell Proprietary (“802.3 Raw”)||ETHERNET_802.3||NOVELL|
As you examine the table above please note that an IEEE 802.3 frame is referred to as an 802.2 frame by Novell. The frame that Novell refers to as “802.3 Raw” or “Ethernet_802.3” is their own proprietary frame format.