Jump to content

EtherType

From Wikipedia, the free encyclopedia
(Redirected from Ethertype)

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

[edit]
An Ethernet frame including the EtherType field. Each lower slot designates an octet; the EtherType is two octets long.

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 is equivalent to the number 600 in the hexadecimal numeral system. 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

[edit]
Insertion of the 802.1Q VLAN tag (four octets) into an Ethernet-II frame, with a typical VLAN arrangement of a tag protocol identifier (TPID) EtherType value of 0x8100. A QinQ arrangement would add another four-octet tag containing a two-octet TPID using various EtherType values.

802.1Q VLAN tagging uses an 0x8100 EtherType value. The payload following includes a 16-bit 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

[edit]

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.[2] 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.[3]

While defunct, this draft was implemented and is used in Cisco routers in their IS-IS implementation (for IIH Hello packets padding).[4]

Use beyond Ethernet

[edit]

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

[edit]

EtherTypes are assigned by the IEEE Registration Authority,[5] which publishes them in list format.[6] 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.[7]

Values

[edit]
EtherType values for some notable protocols[7]
EtherType
(hexadecimal)
EtherType
(Decimal)
Protocol
0x0800 2048 Internet Protocol version 4 (IPv4)
0x0806 2054 Address Resolution Protocol (ARP)
0x0842 2114 Wake-on-LAN[8]
0x2000 8192 Cisco Discovery Protocol[citation needed]
0x22EA 8938 Stream Reservation Protocol
0x22F0 8944 Audio Video Transport Protocol (AVTP)
0x22F3 8947 IETF TRILL Protocol
0x6002 24578 DEC MOP RC
0x6003 24579 DECnet Phase IV, DNA Routing
0x6004 24580 DEC LAT
0x8035 32821 Reverse Address Resolution Protocol (RARP)
0x809B 32923 AppleTalk (EtherTalk)
0x80F3 33011 AppleTalk Address Resolution Protocol (AARP)
0x8100 33024 VLAN-tagged frame (IEEE 802.1Q) and Shortest Path Bridging IEEE 802.1aq with NNI compatibility[9]
0x8102 33026 Simple Loop Prevention Protocol (SLPP)
0x8103 33027 Virtual Link Aggregation Control Protocol (VLACP)
0x8137 33079 IPX
0x8204 33284 QNX Qnet
0x86DD 34525 Internet Protocol Version 6 (IPv6)
0x8808 34824 Ethernet flow control
0x8809 34825 Ethernet Slow Protocols[10] such as the Link Aggregation Control Protocol (LACP)
0x8819 34841 CobraNet
0x8847 34887 MPLS unicast
0x8848 34888 MPLS multicast
0x8863 34915 PPPoE Discovery Stage
0x8864 34916 PPPoE Session Stage
0x887B 34939 HomePlug 1.0 MME
0x888E 34958 EAP over LAN (IEEE 802.1X)
0x8892 34962 PROFINET Protocol
0x889A 34970 HyperSCSI (SCSI over Ethernet)
0x88A2 34978 ATA over Ethernet
0x88A4 34980 EtherCAT Protocol
0x88A8 34984 Service VLAN tag identifier (S-Tag) on Q-in-Q tunnel
0x88AB 34987 Ethernet Powerlink[citation needed]
0x88B8 35000 GOOSE (Generic Object Oriented Substation event)
0x88B9 35001 GSE (Generic Substation Events) Management Services
0x88BA 35002 SV (Sampled Value Transmission)
0x88BF 35007 MikroTik RoMON (unofficial)
0x88CC 35020 Link Layer Discovery Protocol (LLDP)
0x88CD 35021 SERCOS III
0x88E1 35041 HomePlug Green PHY
0x88E3 35043 Media Redundancy Protocol (IEC62439-2)
0x88E5 35045 IEEE 802.1AE MAC security (MACsec)
0x88E7 35047 Provider Backbone Bridges (PBB) (IEEE 802.1ah)
0x88F7 35063 Precision Time Protocol (PTP) over IEEE 802.3 Ethernet
0x88F8 35064 NC-SI
0x88FB 35067 Parallel Redundancy Protocol (PRP)
0x8902 35074 IEEE 802.1ag Connectivity Fault Management (CFM) Protocol / ITU-T Recommendation Y.1731 (OAM)
0x8906 35078 Fibre Channel over Ethernet (FCoE)
0x8914 35092 FCoE Initialization Protocol
0x8915 35093 RDMA over Converged Ethernet (RoCE)
0x891D 35101 TTEthernet Protocol Control Frame (TTE)
0x893a 35130 1905.1 IEEE Protocol
0x892F 35119 High-availability Seamless Redundancy (HSR)
0x9000 36864 Ethernet Configuration Testing Protocol[11]
0xF1C1 61889 Redundancy Tag (IEEE 802.1CB Frame Replication and Elimination for Reliability)

See also

[edit]

References

[edit]
  1. ^ IEEE Std 802.3-2005, 3.2.6
  2. ^ Extended Ethernet Frame Size Support. November 2001. I-D draft-ietf-isis-ext-eth-01.
  3. ^ Kaplan; et al. (2000-05-26). "Extended Ethernet Frame Size Support". Ietf Datatracker. Internet Engineering Task Force.
  4. ^ 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.
  5. ^ Use of the IEEE Assigned Ethertype with IEEE Std 802.3 Local and Metropolitan Area Networks (PDF), retrieved 2022-02-03
  6. ^ "Public EtherType list". IEEE. Retrieved 2018-09-08.
  7. ^ a b "IEEE 802 Numbers". Internet Assigned Numbers Authority. 2015-10-06. Retrieved 2016-09-23.
  8. ^ "WakeOnLAN". Wireshark Wiki. Retrieved 2018-10-16.
  9. ^ "Configuration - Shortest Path Bridging MAC (SPBM)". Avaya. June 2012. p. 35. Retrieved 23 June 2017.
  10. ^ "Annex 57A". IEEE Std 802.3-2018. August 31, 2018. doi:10.1109/IEEESTD.2018.8457469. ISBN 978-1-5044-5090-4.
  11. ^ "8. Ethernet Configuration Testing Protocol". The Ethernet, A Local Area Network Data Link and Physical Layer Specification Version 2.0 (PDF). November 1982.
[edit]