EtherType 以太网类型演进概述

注:机翻,未校对。

Overview 概述

EtherType is a two-octet field in an Ethernet frame. It is used to indicate which protocol is encapsulated in the payload of an Ethernet Frame. This field was first defined by the Ethernet II framing networking standard, and later adapted for the IEEE 802.3 Ethernet networking standard.

EtherType 是以太网帧中的一个双字节字段,它用于指示以太网帧载荷中封装的协议。此字段最初以 Ethernet II 帧格式网络标准定义,后来被 IEEE 802.3 以太网网络标准所采纳。

EtherType numbering generally starts from 0x0800. In modern implementations of Ethernet, the field within the Ethernet frame used to describe the EtherType also can 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 ambiguity. Ethernet v2 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.

EtherType 字段编号通常从 0x0800 开始。在现代以太网的实现中,以太网帧中用于描述 EtherType 的字段还可以用来表示以太网帧的载荷大小。在历史上,根据在以太网段上使用的以太网帧类型,这两种解释同时有效,导致了歧义。Ethernet V2 帧格式认为这些八位字节代表 EtherType,而最初的 IEEE 802.3 帧格式认为这些八位字节表示有效负载的大小(以字节为单位)。

In order to allow packets using Ethernet v2 framing and packets using the 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 (0x0600). That value was chosen because the maximum length (MTU) of the data field of an Ethernet 802.3 frame was 1500 bytes (0x05DC). Thus, values of 1500 (0x05DC) 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 EtherType. The interpretation of values 1501–1535, inclusive, is undefined.

为了允许同时使用 Ethernet V2 帧格式和 IEEE 802.3 帧格式的数据包在同一个以太网段上传输,引入了一个统一的标准(IEEE 802.3x-1997)。该标准要求 EtherType 的值必须大于或等于 1536(0x0600)。选择这个值是因为 IEEE 802.3 帧的数据字段最大长度(MTU)为 1500 字节(0x05DC)。因此,该字段的值为 1500(0x05DC)及以下时表示以太网帧的载荷大小,而值为 1536 及以上时表示该字段用来表示 EtherType。对于值在 1501 到 1535 之间的情况,其解释是未定义的。

在这里插入图片描述

The size of the payload of non-standard jumbo frames, typically ~9000 Bytes long, falls within the range used by EtherType, creating a conflict. The proposition to resolve this conflict was to substitute the special EtherType 0x8870 when a length would otherwise be used. However, the proposition 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. Currently, the value used for Ethertype in jumbo frames is not clear. The IEEE Registration Authority lists all the Ethertype values registered, and no reference to jumbo frames is found in the list.

非标准巨帧的负载大小,通常约 9000 字节长,落入 EtherType 使用的范围,从而产生冲突。为了解决这个冲突,提出了使用特殊的 EtherType 0x8870 代替原本使用的长度,但是这个提议没有被接受而且已经废弃。当时 IEEE 802.3 的主席杰夫・汤普森回应了草稿,概述了 IEEE 802.3 的官方立场和背后的原因。草稿作者也回应了主席的信函,但是没有记录到 IEEE 802.3 的后续回应。目前,巨帧中使用的 EtherType 值不明确。IEEE 注册机构列出了所有注册的 EtherType 值,但是在列表中没有找到关于巨帧的参考。

With 802.1Q VLAN tagging and QinQ the sparse 16-bit EtherType is being completely used. The 16-bit EtherType not only tags the payload class, it also serves to help end any VLAN tagging or QinQ stacking. Via look-ahead peeking in streams, the 16-bit EtherType can help to confirm or package a QinQ 32+32+16=80-bit header between the 48-bit MAC addresses and the payload. Of those 80-bits only 32-bits are used for dynamic information. For a full 66-bit addressing system, 18 bits are needed beyond the MAC. Thus, additional EtherType values are required and used for Triple Tagging QinQinQ.

借助 802.1Q VLAN 标记和 QinQ,稀疏的 16 位 EtherType 被完全使用。16 位 EtherType 不仅可以标记有效负载类,还有助于结束任何 VLAN 标记或 QinQ 堆叠。通过对流的前瞻性窥视,16 位 EtherType 可以帮助在 48 位 MAC 地址和有效负载之间确认或封装 QinQ 32+32+16=80 位报头。在这 80 位中,只有 32 位用于动态信息。对于完整的 66 位寻址系统,除了 MAC 之外还需要 18 位。因此,需要额外的 EtherType 值并用于三重标记 QinQinQ。

Inefficient and conservative use of a 16-bit Tag Protocol Identifier (TPID) on each 32-bit VLAN tag, followed by the trailing lone 16-bits creates a 48-bit signature that cannot easily be mistaken as part of the payload. Vendor implementations may avoid wasting bandwidth sending those 48-bits in proprietary link compression schemes. The EtherType usually does not contain any CRC or FCS information.

在每个 32 位 VLAN 标签上低效且保守地使用 16 位标签协议标识符 (TPID),后面跟着单独的 16 位,这会创建一个 48 位签名,不容易被误认为是有效负载的一部分。供应商实现可以避免在专有的链路压缩方案中发送这些 48 位,以节省带宽。EtherType 通常不包含任何 CRC 或 FCS 信息。

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, the Ethernet II header is still used.

随着 IEEE 802 系列标准的出现,SNAP 头与 IEEE 802.2 LLC 头结合使用,用于在除以太网外的 IEEE 802 网络中传输载荷的 EtherType,以及使用 IEEE 802.2 LLC 头的非 IEEE 网络,如 FDDI 等。但是,对于以太网,仍然使用 Ethernet II 头。

IEEE - Institute of Electrical and Electronics Engineers(电气和电子工程师协会)
SNAP - Subnetwork Access Protocol(子网访问协议)
LLC - Logical Link Control(逻辑链路控制)
FDDI - Fiber Distributed Data Interface(光纤分布式数据接口)

Ethernet Frame. Each lower slot designates an octet. Note it does not show any Virtual LAN tags, which increase the size of the frame by 32-bits per tag. Multiprotocol Label Switching also uses 32-bits per each label (in a stacking arrangement).
以太网帧。每个较低的插槽指定一个八位字节。请注意,它不显示任何虚拟局域网标记,每个标记会增加帧的大小32位。MPLS 也使用每个标签 32 位(以堆叠方式排列)。
在这里插入图片描述

Insertion of 802.1Q VLAN tag (32 bit) into Ethernet-II frame. A typical VLAN arrangement with a TPID EtherType value of 0x8100. A QinQ arrangement would add another 32-bit tag containing 16-bit TPID using various EtherType values. Triple tagging QinQinQ has three 32-bit tags besides the original 16-bit EtherType field.

将 802.1Q VLAN 标记(32 位)插入 Ethernet-II 帧。TPID EtherType 值为 0x8100 的典型 VLAN 排列。QinQ 排列将添加另一个 32 位标签,其中包含使用各种 EtherType 值的 16 位 TPID。三重标记 除了原始的 16 位 EtherType 字段外,QinQinQ 还有三个 32 位标记。
在这里插入图片描述

Examples

EtherType for some notable protocols
在这里插入图片描述

一些著名协议的 EtherType

EtherTypeProtocol
0x0800Internet Protocol version 4 (IPv4)
0x0806Address Resolution Protocol (ARP)
0x0842Wake-on-LAN
0x22F0Audio Video Transport Protocol as defined in IEEE Std 1722-2011
0x22F3IETF TRILL Protocol
0x6003DECnet Phase IV
0x8035Reverse Address Resolution Protocol
0x809BAppleTalk (Ethertalk)
0x80F3AppleTalk Address Resolution Protocol (AARP)
0x8100VLAN-tagged frame (IEEE 802.1Q) & Shortest Path Bridging IEEE 802.1aq
0x8137IPX
0x8138IPX
0x8204QNX Qnet
0x86DDInternet Protocol Version 6 (IPv6)
0x8808Ethernet flow control
0x8809Slow Protocols (IEEE 802.3)
0x8819CobraNet
0x8847MPLS unicast
0x8848MPLS multicast
0x8863PPPoE Discovery Stage
0x8864PPPoE Session Stage
0x8870Jumbo Frames (proposed)
0x887BHomePlug 1.0 MME
0x888EEAP over LAN (IEEE 802.1X)
0x8892PROFINET Protocol
0x889AHyperSCSI (SCSI over Ethernet)
0x88A2ATA over Ethernet
0x88A4EtherCAT Protocol
0x88A8Provider Bridging (IEEE 802.1ad) & Shortest Path Bridging IEEE 802.1aq
0x88ABEthernet Powerlink* *
0x88CCLink Layer Discovery Protocol (LLDP)
0x88CDSERCOS III
0x88E1HomePlug AV MME* *
0x88E3Media Redundancy Protocol (IEC62439-2)
0x88E5MAC security (IEEE 802.1AE)
0x88E7Provider Backbone Bridges (PBB) (IEEE 802.1ah)
0x88F7Precision Time Protocol (PTP) over Ethernet (IEEE 1588)
0x8902IEEE 802.1ag Connectivity Fault Management (CFM) Protocol / ITU-T Recommendation Y.1731 (OAM)
0x8906Fibre Channel over Ethernet (FCoE)
0x8914FCoE Initialization Protocol
0x8915RDMA over Converged Ethernet (RoCE)
0x892FHigh-availability Seamless Redundancy (HSR)
0x9000Ethernet Configuration Testing Protocol
0xCAFEVeritas Low Latency Transport (LLT) for Veritas Cluster Server

Not all well known de facto uses of EtherTypes are always recorded in the IEEE list of EtherType values. For example, EtherType 0x0806 (used by ARP) appears in the IEEE list only as “Symbolics, Inc., Protocol unavailable.” However, the IEEE Registration Authority lists all the accepted EtherTypes, including the 0x0806.

并非所有众所周知的 EtherType 实际用途都记录在 IEEE 的 EtherType 值列表中。例如,EtherType 0x0806(由 ARP 使用)在 IEEE 列表中仅显示为“Symbolics,Inc.,协议不可用”。但是,IEEE 注册机构列出了所有接受的EtherType,包括 0x0806。

EtherType 以太网类型字段值与含义详情查询: IEEE 802 Numbers


via:

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值