EtherType is a two-octet field in an Ethernet frame. 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 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).[citation needed] 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.[1]
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, 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 LLC frames
The size of the payload of jumbo frames, typically up to ≈9000 octets long, collides with the range used by EtherType. Therefore, it cannot be used for indicating the length of such a frame in the old 802.2/802.3 formats that have a length field (i.e. LLC, SNAP and raw 802.3) in place of the EtherType field.
The IETF ISIS working group originally proposed[2] to resolve this conflict by substituting 0x8870 as EtherType for frames exceeding 1500 octets in length. This was initially rejected by the IEEE’s 802.3 working group, as documented in an appendix[3] to the IETF draft. However, about 15 years later, the concept was picked up by the 802.1 working group and incorporated into 802.1AC-2016[4], but due to issues in confirming ownership of the 0x8870 value[5], a new value (0xC9D1) was assigned. This value, had it gained any widespread use, would’ve led to interoperability issues and was relatively quickly rectified to use the original 0x8870 value in 802.1AC-2016/Cor 1-2018[6]. 0xC9D1 thus became an historic oddity.
Effectively, 802.1AC-2016/Cor 1-2018 has thus retroactively standardized the practice used by router vendors in their IS-IS implementations (for IIH Hello packets padding and extended size LSPs).[7]
Even though IEEE 802.3 does not currently permit jumbo frames with the commonly used limits in the 9000s of octets, it does permit payloads of up to 1982 octets[8]. This means that for a long time, it was not possible to use the maximum standard frame size from IEEE 802.3 together with the encapsulations defined in IEEE 802.2.
Use beyond Ethernet
With the advent of the IEEE 802 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. However, for Ethernet, Ethernet II framing is still used.
Registration
EtherTypes are assigned by the IEEE Registration Authority,[9] which publishes them in list format.[10] The Internet Assigned Numbers Authority has a separate list of some EtherType registrations, compiled from several sources, including the IEEE Registration Authority’s list and some other lists.[11]
Values
| EtherType value (hexadecimal) | Protocol |
|---|---|
| 0x0800 | Internet Protocol version 4 (IPv4) |
| 0x0804 | Chaosnet |
| 0x0806 | Address Resolution Protocol (ARP) |
| 0x0842 | Wake-on-LAN[12] |
| 0x22EA | Stream Reservation Protocol |
| 0x22F0 | Audio Video Transport Protocol (AVTP) |
| 0x22F3 | IETF TRILL Protocol |
| 0x6002 | DEC MOP RC |
| 0x6003 | DECnet Phase IV, DNA Routing |
| 0x6004 | DEC LAT |
| 0x8035 | Reverse Address Resolution Protocol (RARP) |
| 0x809B | AppleTalk (EtherTalk) |
| 0x80D5 | LLC PDU (in particular, IBM SNA), preceded by 2 bytes length and 1 byte padding[13] |
| 0x80F3 | AppleTalk Address Resolution Protocol (AARP) |
| 0x8100 | VLAN-tagged frame (IEEE 802.1Q) and Shortest Path Bridging IEEE 802.1aq with NNI compatibility[14] |
| 0x8102 | Simple Loop Prevention Protocol (SLPP) |
| 0x8103 | Virtual Link Aggregation Control Protocol (VLACP) |
| 0x8137 | IPX |
| 0x8204 | QNX Qnet |
| 0x86DD | Internet Protocol Version 6 (IPv6) |
| 0x8808 | Ethernet flow control |
| 0x8809 | Ethernet Slow Protocols[15] such as the Link Aggregation Control Protocol (LACP) |
| 0x8819 | CobraNet |
| 0x8847 | MPLS unicast |
| 0x8848 | MPLS multicast |
| 0x8863 | PPPoE Discovery Stage |
| 0x8864 | PPPoE Session Stage |
| 0x8870 | LLC (802.2) frames exceeding 1500 octets in length, primarily used by IS-IS |
| 0x887B | HomePlug 1.0 MME |
| 0x888E | EAP over LAN (IEEE 802.1X) |
| 0x8892 | PROFINET Protocol |
| 0x889A | HyperSCSI (SCSI over Ethernet) |
| 0x88A2 | ATA over Ethernet |
| 0x88A4 | EtherCAT Protocol |
| 0x88A8 | Service VLAN tag identifier (S-Tag) on Q-in-Q tunnel (802.1ad) |
| 0x88AB | Ethernet Powerlink[citation needed] |
| 0x88B8 | GOOSE (Generic Object Oriented Substation event) |
| 0x88B9 | GSE (Generic Substation Events) Management Services |
| 0x88BA | SV (Sampled Value Transmission) |
| 0x88BF | MikroTik RoMON (unofficial) |
| 0x88CC | Link Layer Discovery Protocol (LLDP) |
| 0x88CD | SERCOS III |
| 0x88E1 | HomePlug Green PHY |
| 0x88E3 | Media Redundancy Protocol (IEC62439-2) |
| 0x88E5 | IEEE 802.1AE MAC security (MACsec) |
| 0x88E7 | Provider Backbone Bridges (PBB) (IEEE 802.1ah) |
| 0x88F7 | Precision Time Protocol (PTP) over IEEE 802.3 Ethernet |
| 0x88F8 | NC-SI |
| 0x88FB | Parallel Redundancy Protocol (PRP) |
| 0x8902 | IEEE 802.1ag Connectivity Fault Management (CFM) Protocol / ITU-T Recommendation Y.1731 (OAM) |
| 0x8906 | Fibre Channel over Ethernet (FCoE) |
| 0x8914 | FCoE Initialization Protocol |
| 0x8915 | RDMA over Converged Ethernet (RoCE) |
| 0x891D | TTEthernet Protocol Control Frame (TTE) |
| 0x893a | 1905.1 IEEE Protocol |
| 0x892F | High-availability Seamless Redundancy (HSR) |
| 0x9000 | Ethernet Configuration Testing Protocol[16] |
| 0x9100 | Service VLAN tag identifier (S-Tag) on Q-in-Q tunnel (pre-standard) |
| 0x9200 | Service VLAN tag identifier (S-Tag) on Q-in-Q tunnel (pre-standard) |
| 0xF1C1 | Redundancy Tag (IEEE 802.1CB Frame Replication and Elimination for Reliability) |
A beige background indicates protocols that have fallen into general disuse even in their intended fields, or have become completely historic.
See also
References
- ^ IEEE Std 802.3-2005, 3.2.6
- ^ Extended Ethernet Frame Size Support. IETF. November 2001. I-D draft-ietf-isis-ext-eth-01.
- ^ Kaplan; et al. (November 2001). Extended Ethernet Frame Size Support. IETF. sec. 10. I-D draft-ietf-isis-ext-eth-01.
- ^ “802.1AC-2016 – IEEE Standard for Local and metropolitan area networks — Media Access Control (MAC) Service Definition”. IEEE. 2016.
- ^ “Liaison statement: Ethertype for long LLC frames”. IEEE (802.11, Glenn Parsons). 2017-03-25.
- ^ “802.1AC-2016/Cor 1-2018 – IEEE Standard for Local and Metropolitan Area Networks–Media Access Control (MAC) Service Definition – Corrigendum 1: Logical Link Control (LLC) Encapsulation EtherType”. IEEE. 2018.
- ^ Patzlaff, Marcel (2015-04-08). “Fwd: Re: ISIS in SCAPY and Jumbo frames”. scapy-ml (Mailing list). Archived from the original on 2018-03-31. Retrieved 2017-05-09.
- ^ “802.3-2022 – IEEE Standard for Ethernet”. IEEE. 2022.
3.2.7 MAC Client Data field […] c) 1982 decimal—envelope frames
- ^ Use of the IEEE Assigned Ethertype with IEEE Std 802.3 Local and Metropolitan Area Networks (PDF), retrieved 2022-02-03
- ^ “Public EtherType list”. IEEE. Retrieved 2018-09-08.
- ^ a b “IEEE 802 Numbers”. Internet Assigned Numbers Authority. 2015-10-06. Retrieved 2016-09-23.
- ^ “WakeOnLAN”. Wireshark Wiki. Retrieved 2018-10-16.
- ^ IBM (May 1996). “LAN Technical Reference: IEEE 802.2 and NetBIOS Application Program Interfaces. IBM Document Number SC30-3587-01” (BOO (IBM Book Manager)) (2nd ed.). sections 1.16-1.16.1.
- ^ “Configuration – Shortest Path Bridging MAC (SPBM)”. Avaya. June 2012. p. 35. Retrieved 23 June 2017.
- ^ “Annex 57A”. IEEE Std 802.3-2018. August 31, 2018. doi:10.1109/IEEESTD.2018.8457469. ISBN 978-1-5044-5090-4.
- ^ “8. Ethernet Configuration Testing Protocol”. The Ethernet, A Local Area Network Data Link and Physical Layer Specification Version 2.0 (PDF). November 1982.
External links
- IEEE Registration Authority Tutorials Archived 2022-09-08 at the Wayback Machine
- IEEE EtherType Registration Authority Archived 2022-09-08 at the Wayback Machine
- IANA list of assigned EtherType values