EtherType is a two-
octet field in an
Ethernet frame
In computer networking, an Ethernet frame is a data link layer protocol data unit and uses the underlying Ethernet physical layer transport mechanisms. In other words, a data unit on an Ethernet link transports an Ethernet frame as its paylo ...
. It is used to indicate which
protocol is
encapsulated in the payload of the frame and is used at the receiving end by the
data link layer
The data link layer, or layer 2, is the second layer of the seven-layer OSI model of computer networking. This layer is the protocol layer that transfers data between nodes on a network segment across the physical layer. The data link layer p ...
to determine how the payload is processed. The same field is also used to indicate the size of some Ethernet frames.
EtherType is also used as the basis of
802.1Q VLAN tagging,
encapsulating packets from VLANs for transmission multiplexed with other VLAN traffic over an
Ethernet trunk.
EtherType was first defined by the
Ethernet II framing standard and later adapted for the
IEEE 802.3 standard. EtherType values are assigned by the
IEEE Registration Authority.
Overview
In modern implementations of Ethernet, the field within the Ethernet frame used to describe the EtherType can also be used to represent the size of the payload of the Ethernet Frame. Historically, depending on the type of Ethernet framing that was in use on an Ethernet segment, both interpretations were simultaneously valid, leading to potential ambiguity.
Ethernet II framing considered these octets to represent EtherType while the original IEEE 802.3 framing considered these octets to represent the size of the payload in bytes.
In order to allow Ethernet II and IEEE 802.3 framing to be used on the same Ethernet segment, a unifying standard, IEEE 802.3x-1997, was introduced that required that EtherType values be greater than or equal to 1536. That value was chosen because the maximum length (
MTU) of the data field of an Ethernet 802.3 frame is 1500 bytes and 1536 (decimal) is 0x600 (
hexadecimal
Hexadecimal (also known as base-16 or simply hex) is a Numeral system#Positional systems in detail, positional numeral system that represents numbers using a radix (base) of sixteen. Unlike the decimal system representing numbers using ten symbo ...
). Thus, values of 1500 and below for this field indicate that the field is used as the size of the payload of the Ethernet frame while values of 1536 and above indicate that the field is used to represent an EtherType. The interpretation of values 1501–1535, inclusive, is undefined.
The end of a frame is signaled by a valid
frame check sequence followed by loss of carrier or by a special symbol or sequence in the
line coding scheme for a particular
Ethernet physical layer
The physical-layer specifications of the Ethernet family of computer network standards are published by the Institute of Electrical and Electronics Engineers (IEEE), which defines the electrical or optical properties and the transfer speed of ...
, so the length of the frame does not always need to be encoded as a value in the Ethernet frame. However, as the minimum payload of an Ethernet frame is 46 bytes, a protocol that uses EtherType must include its own length field if that is necessary for the recipient of the frame to determine the length of short packets (if allowed) for that protocol.
VLAN tagging
802.1Q VLAN tagging uses a 0x8100 EtherType value. The payload following includes a 2-byte tag control identifier (TCI) followed by an Ethernet frame beginning with a second (original) EtherType field for consumption by
end stations.
IEEE 802.1ad extends this tagging with further nested EtherType and TCI pairs.
Jumbo frames
The size of the payload of non-standard
jumbo frames, typically ~9000 Bytes long, collides with the range used by EtherType, and cannot be used for indicating the length of such a frame. The proposition to resolve this conflict was to substitute the special EtherType value 0x8870 when a length would otherwise be used. However, the proposition (its use case was bigger packets for
IS-IS) was not accepted and it is defunct. The chair of IEEE 802.3 at the time, Geoff Thompson, responded to the draft outlining IEEE 802.3's official position and the reasons behind the position. The draft authors also responded to the chair's letter, but no subsequent answer from the IEEE 802.3 has been recorded.
While defunct, this draft was implemented and is used in Cisco routers in their IS-IS implementation (for IIH Hello packets padding).
Use beyond Ethernet
With the advent of the
IEEE 802
IEEE 802 is a family of Institute of Electrical and Electronics Engineers (IEEE) standards for local area networks (LANs), personal area networks (PANs), and metropolitan area networks (MANs). The IEEE 802 LAN/MAN Standards Committee (LMSC) main ...
suite of standards, a
Subnetwork Access Protocol (SNAP) header combined with an
IEEE 802.2 LLC header is used to transmit the EtherType of a payload for IEEE 802 networks other than Ethernet, as well as for non-IEEE networks that use the IEEE 802.2 LLC header, such as
FDDI
Fiber Distributed Data Interface (FDDI) is a standard for data transmission in a local area network.
It uses optical fiber as its standard underlying physical medium.
It was also later specified to use copper cable, in which case it may be c ...
. However, for Ethernet, Ethernet II framing is still used.
Registration
EtherTypes are assigned by the IEEE Registration Authority,
which publishes them in list format.
The
Internet Assigned Numbers Authority
The Internet Assigned Numbers Authority (IANA) is a standards organization that oversees global IP address allocation, Autonomous system (Internet), autonomous system number allocation, DNS root zone, root zone management in the Domain Name Syste ...
has a separate list of some EtherType registrations, compiled from several sources, including the IEEE Registration Authority's list and some other lists.
Values
See also
*
Port (computer networking)
In computer networking, a port is a communication endpoint. At the software level within an operating system, a port is a logical construct that identifies a specific process or a type of network service. A port is uniquely identified by a numbe ...
References
External links
IEEE Registration Authority TutorialsIEEE EtherType Registration AuthorityIANA list of assigned EtherType values
{{DEFAULTSORT:Ethertype
Ethernet