EtherType

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ナビゲーションに移動 検索に移動

EtherType(イーサタイプ)は、イーサネットフレームの中にある2オクテットのフィールドであり、フレームペイロードカプセル化されているプロトコルを示すのに使用される。

このフィールドは、イーサネットフレームのサイズを示すのにも使用される場合がある。EtherTypeは最初にEthernet IIの規格で定義され、後にIEEE 802.3規格に適応した。このフィールドは、受信側でペイロードを引き渡すプロトコルを決定するために、データリンク層によって使用される。

概要[編集]

EtherTypeフィールドを含むイーサネットフレーム。下部の各スロットはオクテットを示す。EtherTypeは2オクテット長である。

イーサネットの現在の実装では、EtherTypeを記述するために使用されるイーサネットフレーム内のフィールドは、イーサネットフレームのペイロード長を表すためにも使用できる。歴史的には、イーサネットセグメントで使用されていたイーサネットフレーミングの種類によっては、両方の解釈が同時に有効であり、曖昧さが生じる可能性があった。Ethernet IIではこのフィールドはEtherTypeを表すと見なし、元のIEEE 802.3ではバイト単位のペイロード長を表すとものとした。

イーサネットIIとIEEE 802.3を同じイーサネットセグメントで使用できるようにするために、EtherType値を1536以上とする統一規格IEEE 802.3x-1997が導入された。この値は、802.3のフレームのデータフィールドの最大長(MTU)が1500バイトであることから選ばれた。 従って、このフィールドが1500以下であれば、そのフィールドがイーサネットフレームのペイロード長として使用されることを示し、1536以上であれば、このフィールドがEtherTypeを表すということを示す。1501から1535までの値の解釈は未定義である[1]

フレームの終わりは、キャリアの損失、または物理層の特別なシンボルやシーケンスによって通知されるので、フレーム長をイーサネットフレームにおいて明示的な値として符号化する必要は必ずしもない。ただし、イーサネットフレームの最小ペイロードは46バイトなので、EtherTypeを使用するプロトコルでは、フレームの受信者がそのプロトコルのパケット長を判断する必要がある場合、独自のパケット長のフィールドを含める必要がある。

VLANタギング[編集]

802.1Q VLANタグ(4オクテット)をEthernet-IIフレームに挿入した様子。TPID EtherTypeの値は0x8100である。QinQ英語版では様々なEtherType値を使用することで2オクテットTPIDを含む別の4オクテットタグが加えられる。

IEEE 802.1Qによるタグ付きフレームの場合、EtherType値として0x8100を使用する。これは、タグ付きフレームであることを示す識別子で、TPID(Tag Protocol Identifier)という。その後に16ビットのTCP(Tag Control Information)が続き、その後にカプセル化されたパケットのプロトコルを示す(本来の)EtherTypeが続く。IEEE 802.1ad英語版では、さらにネストされたEtherTypeとTCIのペアでこのタグ付けを拡張する。

ジャンボフレーム[編集]

非標準ジャンボフレーム英語版のペイロード長(通常9000バイト以下)は、EtherTypeで使用される範囲内であり、そのようなフレーム長を示すために使用することはできない。この矛盾を解決するため、EtherTypeフィールドに特別なEtherType値0x8870を入れる方法が提案された[2]。しかし、この草案(IS-ISのためのより大きなパケットのユースケース)は受け入れられず、破棄されている。当時のIEEE 802.3議長のGeoff Thompsonは、IEEE 802.3の正式な立場とその立場の裏にある理由を概説した回答を草案の執筆者に示した。草案の執筆者も議長の手紙に回答したが、その後のIEEE 802.3からの回答は記録されていない[3]

この草案は廃止されたが、シスコ製ルータのIS-IS実装で使用されている(IIH Helloパケットパディング用)[4]

イーサネットを超えた使用[編集]

IEEE 802シリーズの規格の登場により、 IEEE 802.2 LLCヘッダと組み合わされたSubnetwork Access Protocol英語版(SNAP)ヘッダが、イーサネット以外のIEEE 802ネットワーク用ならびにFDDIなど、IEEE 802.2 LLCヘッダーを使用する非IEEEネットワークのペイロードのEtherTypeを送信するために使用される。ただし、イーサネットの場合、Ethernet IIフレーミングはまだ使用されている。

登録[編集]

EtherTypeは、IEEE登録局によって割り当てられる[5]。EtherTypeのよく知られた用途の全てが、IEEEのEtherType値のリストに記録されているわけではない。例えば、EtherType 0x0806(ARPで使用される)は、IEEEの一覧に"Symbolics, Inc., Protocol unavailable"としてのみ表示される[6]。しかしながら、IEEE登録局は、0x0806を含むすべての認められたEtherTypeをリストする[7]

[編集]

以下にプロトコルのEtherType値をいくつか示す。これは全てのEtherType値を網羅したものではない。

プロトコルのEtherType値[7]
EtherType プロトコル
0x0800 Internet Protocol version 4 (IPv4)
0x0806 Address Resolution Protocol (ARP)
0x0842 Wake-on-LAN[8]
0x22F3 IETF TRILL Protocol英語版
0x22EA Stream Reservation Protocol英語版
0x6003 DECnet Phase IV
0x8035 Reverse Address Resolution Protocol
0x809B AppleTalk (Ethertalk)
0x80F3 AppleTalk Address Resolution Protocol (AARP)
0x8100 VLAN-tagged frame (IEEE 802.1Q) and Shortest Path Bridging IEEE 802.1aq with NNI compatibility[9]
0x8137 IPX
0x8204 QNX Qnet
0x86DD Internet Protocol Version 6 (IPv6)
0x8808 イーサネットフロー制御英語版
0x8809 Ethernet Slow Protocols such as the Link Aggregation Control Protocol英語版
0x8819 CobraNet英語版
0x8847 MPLSユニキャスト
0x8848 MPLSマルチキャスト
0x8863 PPPoE Discovery Stage
0x8864 PPPoE Session Stage
0x886D Intel Advanced Networking Services [10]
0x8870 ジャンボフレーム英語版(draft-ietf-isis-ext-eth-01として提案されたが廃止)
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 Provider Bridging (IEEE 802.1ad英語版) & Shortest Path Bridging IEEE 802.1aq[9]
0x88B8 GOOSE (Generic Object Oriented Substation event)
0x88B9 GSE (Generic Substation Events) Management Services
0x88BA SV (Sampled Value Transmission)英語版
0x88CC Link Layer Discovery Protocol英語版 (LLDP)
0x88CD SERCOS III英語版
0x88DC WSMP, WAVE Short Message Protocol
0x88E3 Media Redundancy Protocol英語版 (IEC62439-2)
0x88E5 MAC security (IEEE 802.1AE英語版)
0x88E7 Provider Backbone Bridges (PBB) (IEEE 802.1ah英語版)
0x88F7 Precision Time Protocol (PTP) over Ethernet (IEEE 1588)
0x88F8 NC-SI英語版
0x88FB Parallel Redundancy Protocol英語版 (PRP)
0x8902 IEEE 802.1ag英語版 Connectivity Fault Management (CFM) Protocol / ITU-T勧告 Y.1731 (OA&M英語版)
0x8906 Fibre Channel over Ethernet (FCoE)
0x8914 FCoE Initialization Protocol
0x8915 RDMA over Converged Ethernet英語版 (RoCE)
0x891D TTEthernet英語版 Protocol Control Frame (TTE)
0x892F High-availability Seamless Redundancy英語版 (HSR)
0x9000 Ethernet Configuration Testing Protocol英語版[11]
0x9100 VLAN-tagged (IEEE 802.1Q) frame with double tagging

関連項目[編集]

脚注[編集]

  1. ^ IEEE Std 802.3-2005, 3.2.6
  2. ^ draft-ietf-isis-ext-eth”. 2019年2月17日閲覧。
  3. ^ Kaplan (2000年5月26日). “Extended Ethernet Frame Size Support”. Internet Engineering Task Force. 2019年2月17日閲覧。
  4. ^ Isis — TechExams Community”. 2019年2月17日閲覧。
  5. ^ Use of the IEEE Assigned Ethertype with IEEE Std 802.3 Local and Metropolitan Area Networks”. 2019年2月17日閲覧。
  6. ^ Public EtherType list”. IEEE. 2018年9月8日閲覧。
  7. ^ a b IEEE 802 Numbers”. Internet Assigned Numbers Authority (2015年10月6日). 2016年9月23日閲覧。
  8. ^ WakeOnLAN”. 2018年10月16日閲覧。
  9. ^ a b Configuration - Shortest Path Bridging MAC (SPBM)”. Avaya. p. 35 (2012年6月). 2017年6月23日閲覧。
  10. ^ Intel® Advanced Network Services (Intel® ANS) Advanced Settings for Teams”. 2017年6月23日閲覧。
  11. ^ The Ethernet, A Local Area Network Data Link and Physical Layer Specification Version 2.0. (November 1982). http://decnet.ipv7.net/docs/dundas/aa-k759b-tk.pdf. 

外部リンク[編集]