There are several types of Ethernet frames: • Ethernet II frame, or Ethernet Version 2, or DIX frame is the most common type in use today, as it is often used directly by the Internet Protocol. •
Novell raw
IEEE 802.3 non-standard variation frame •
IEEE 802.2 Logical Link Control (LLC) frame •
IEEE 802.2 Subnetwork Access Protocol (SNAP) frame The different frame types have different formats and
MTU values, but can coexist on the same physical medium. Differentiation between frame types is possible based on the table on the right. In addition, all four Ethernet frame types may optionally contain an IEEE 802.1Q tag to identify what VLAN it belongs to and its priority (
quality of service). This encapsulation is defined in the
IEEE 802.3ac specification and increases the maximum frame size by 4 octets. The IEEE 802.1Q tag, if present, is placed between the Source Address and the EtherType or Length fields. The first two octets of the tag are the Tag Protocol Identifier (TPID) value of 0x8100. This is located in the same place as the EtherType/Length field in untagged frames, so an EtherType value of 0x8100 means the frame is tagged, and the true EtherType/Length is located after the Q-tag. The TPID is followed by two octets containing the Tag Control Information (TCI) (the IEEE 802.1p priority (
quality of service) and VLAN id). The Q-tag is followed by the rest of the frame, using one of the types described above.
Ethernet II Ethernet II framing (also known as
DIX Ethernet, named after
DEC,
Intel and
Xerox, the major participants in its design), defines the two-octet
EtherType field in an Ethernet
frame, preceded by destination and source MAC addresses, that identifies an
upper layer protocol encapsulated by the frame data. Most notably, an EtherType value of 0x0800 indicates that the frame contains an
IPv4 datagram, 0x0806 indicates an
ARP datagram, and 0x86DD indicates an
IPv6 datagram. See for more. As this industry-developed standard went through a formal
IEEE standardization process, the EtherType field was changed to a (data) length field in the new 802.3 standard. Since the recipient still needs to know how to interpret the frame, the standard required an
IEEE 802.2 header to follow the length and specify the type. Many years later, the 802.3x-1997 standard, and later versions of the 802.3 standard, formally approved of both types of framing. Ethernet II framing is the most common in Ethernet local area networks, due to its simplicity and lower overhead. In order to allow some frames using Ethernet II framing and some using the original version of 802.3 framing to be used on the same Ethernet segment, EtherType values must be greater than or equal to 1536 (0x0600). That value was chosen because the maximum length of the payload field of an Ethernet 802.3 frame is 1500 octets (0x05DC). Thus if the field's value is greater than or equal to 1536, the frame must be an Ethernet II frame, with that field being a type field. If it's less than or equal to 1500, it must be an IEEE 802.3 frame, with that field being a length field. Values between 1500 and 1536, exclusive, are undefined. This convention allows software to determine whether a frame is an Ethernet II frame or an IEEE 802.3 frame, allowing the coexistence of both standards on the same physical medium.
Novell raw IEEE 802.3 Novell's raw 802.3 frame format was based on early IEEE 802.3 work. Novell used this as a starting point to create the first implementation of its own
IPX Network Protocol over Ethernet. They did not use any LLC header but started the IPX packet directly after the length field. This does not conform to the IEEE 802.3 standard, but since IPX always has FF as the first two octets (while in IEEE 802.2 LLC that pattern is theoretically possible but extremely unlikely), in practice this usually coexists on the wire with other Ethernet implementations, with the notable exception of some early forms of
DECnet which got confused by this.
Novell NetWare used this frame type by default until the mid-nineties, and since NetWare was then very widespread, while IP was not, at some point in time, most of the world's Ethernet traffic ran over raw 802.3 carrying IPX. Since NetWare 4.10, NetWare defaults to IEEE 802.2 with LLC (NetWare Frame Type Ethernet_802.2) when using IPX.
IEEE 802.2 LLC Some protocols, such as those designed for the
OSI stack, operate directly on top of IEEE 802.2 LLC encapsulation, which provides both connection-oriented and connectionless network services. IEEE 802.2 LLC encapsulation is not in widespread use on common networks currently, with the exception of large corporate
NetWare installations that have not yet migrated to NetWare over
IP. In the past, many corporate networks used IEEE 802.2 to support transparent translating bridges between Ethernet and
Token Ring or
FDDI networks. There exists an
Internet standard for encapsulating IPv4 traffic in IEEE 802.2 LLC SAP/SNAP frames. It is almost never implemented on Ethernet, although it is used on FDDI, Token Ring,
IEEE 802.11 (with the exception of the
5.9 GHz band, where it uses EtherType) and other
IEEE 802 LANs. IPv6 can also be transmitted over Ethernet using IEEE 802.2 LLC SAP/SNAP, but, again, that's almost never used.
IEEE 802.2 SNAP By examining the 802.2 LLC header, it is possible to determine whether it is followed by a SNAP header. The LLC header includes two eight-bit address fields, called
service access points (SAPs) in OSI terminology; when both source and destination SAPs are set to the value 0xAA, the LLC header is followed by a SNAP header. The SNAP header allows EtherType values to be used with all IEEE 802 protocols, as well as supporting private protocol ID spaces. In IEEE 802.3x-1997, the IEEE Ethernet standard was changed to explicitly allow the use of the 16-bit field after the MAC addresses to be used as a length field or a type field. The
AppleTalk v2 protocol suite on Ethernet ("
EtherTalk") uses IEEE 802.2 LLC + SNAP encapsulation. ==Maximum throughput==