EtherType

EtherType je šestnáctibitová hodnota v některých typech rámců linkové vrstvy, která udává protokol dat zapouzdřených v datové části rámce. Hodnoty EtherType byly poprvé použity v původním standardu Ethernet v poli Type. V prvních verzích standardu IEEE 802.3 však bylo stejné pole použito pro délku datové části rámce, a protokol datové části rámce musel být odvozen z polí DSAP a SSAP v hlavičce IEEE 802.2. Koncept pole EtherType se však ukázal natolik praktický, že jej IEEE 802 použilo v podobě pole Protocol ID ve SNAP rozšíření hlavičky IEEE 802.2.

Aby v sítích Ethernet, kde v poli Length/Type může být EtherType podle původního standardu Ethernet nebo délka dat podle standardu IEEE 802.3, bylo možné rozlišit, o který formát rámce se jedná, používají se v nových sítích hodnoty EtherType větší nebo rovné 1536 (0x0600); menší hodnoty mají význam délky.

Použití

Hodnoty EtherType začínají od 0x0800. V moderní implementaci Ethernetu může pole v Ethernetovém rámci, které obsahuje EtherType, obsahovat délku dat v ethernetovém rámci. Historicky podle typu Ethernetových rámců, které se používaly na určitém segmentu Ethernetu, byly současně povoleny obě interpretace, což vedlo ke kolizím. Při použití rámců podle standardu Ethernet II byly tyto oktety považovány za EtherType, zatímco podle standardu IEEE 802.3 za délku dat v rámci v bytech.

Hodnoty EtherType původně mohly být libovolné v rozsahu 0-65535. V mnoha sítích Ethernet se používaly rámce formátů Ethernet II i IEEE 802.3 současně, což vedlo k nejednoznačnostem v interpretaci významu pole Length/Type. Pro zamezení těmto nejednoznačnostem povoluje standard IEEE 802.3x z roku 1997 pouze hodnoty EtherType větší nebo rovné 1536 (0x0600). Tato hodnota byla zvolena, protože maximální přenosová délka (MTU) datového pole standardních rámců Ethernet 802.3 byla 1500 bytů (0x05DC). Hodnoty 1500 (0x05DC) a menší indikují, že pole obsahuje délku, zatímco hodnoty 1536 a větší indikují, že pole obsahuje EtherType. Interpretace hodnot 1501–1535 není definována[1].

Délka dat v nestandardních jumbo rámcích (obvykle okolo 9000 bytů) leží v rozsahu hodnot používaných pro EtherType, což způsobuje konflikt. Pro jeho řešení bylo navrženo používat speciální EtherType 0x8870, místo délky rámce[2].

Při 802.1Q VLAN tagování a QinQ se používají zvláštní 16bitové hodnoty EtherType, který nejen označují obsah datového pole, ale slouží také k ukončení VLAN tagování nebo QinQ zásobníku. Při dopředném prohlížení 16bitový EtherType pomáhají při rozpoznání 32+32+16=80bitové hlavičky QinQ umístěné před datovým polem za oběma MAC adresami. Z těchto 80 bitů se pouze 32 používá pro dynamické informace. Úplný 66bitový adresní systém vyžaduje 18 bitů za MAC. Proto jsou použity další EtherType hodnoty pro trojnásobné tagování QinQinQ (anglicky Triple Tagging).

Konzervativní používání 16bitového Tag Protocol Identifier (TPID) pro každý 32bitový VLAN tag následované původní 16bitovou hodnotou EtherType vytváří 48bitovou signaturu, kterou sice nelze zaměnit s částí datového pole, ale jejíž používání je velmi neefektivní. Existují proprietární implementace, které těchto 48 bitů komprimují. EtherType obvykle neobsahuje kontrolní součet (CRC nebo FCS).

V sítích IEEE 802 i v dalších sítích, které používají IEEE 802.2 LLC (např. FDDI) lze hodnotu EtherType přenášet v Subnetwork Access Protocol (SNAP) rozšíření hlavičky IEEE 802.2. V sítích Ethernet (které patří k IEEE 802 sítím), ale převažuje používání formátu rámce Ethernet II.

Standardní ethernetový rámec bez VLAN a MPLS tagů, které prodlužují rámec o 32 bitů na každý tag. Čísla ve spodních rámečcích označují jednotlivé oktety.
Vložení 32bitového 802.1Q VLAN tagu do rámce Ethernet II. Typická struktura pro VLAN obsahuje TPID EtherType hodnotu 0x8100. Při použití QinQ se přidává další 32bitový tag obsahující 16bitové TPID s různými EtherType hodnotami. Trojnásobné taggování QinQinQ přidává před původní 16bitové pole EtherType tři 32bitové tagy.

Příklady

EtherType pro některé významné protokoly
EtherType Protokol
0x22F3 IETF TRILL Protocol (RFC6325)
0x6003 DECnet Fáze IV
0x0800 IPv4 (Internet Protocol version 4)
0x0806 Address Resolution Protocol (ARP)
0x8035 Reverse Address Resolution Protocol
0x0842 Wake on LAN[3]
0x809B AppleTalk (Ethertalk)
0x80F3 AppleTalk Address Resolution Protocol (AARP)
0x8100 VLAN-taggované rámce (IEEE 802.1Q) & Shortest Path Bridging IEEE 802.1aq[4]
0x8137 IPX
0x8138 IPX
0x8204 QNX Qnet
0x86DD IPv6 (Internet Protocol Version 6)
0x8808 Ethernet flow control
0x8809 Protokoly Slow (IEEE 802.3)
0x8819 CobraNet
0x8847 MPLS unicast
0x8848 MPLS multicast
0x8863 PPPoE Discovery Stage
0x8864 PPPoE Session Stage
0x8870 Jumbo Frames[2]
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[5]
0x88AB Ethernet Powerlink
0x88CC Link Layer Discovery Protocol (LLDP)
0x88CD SERCOS III
0x88E1 HomePlug AV MME
0x88E3 Media Redundancy Protocol (IEC62439-2)
0x88E5 MAC Security (IEEE 802.1AE)
0x88F7 Precision Time Protocol (PTP) over Ethernet (IEEE 1588)
0x8902 IEEE 802.1ag Connectivity Fault Management (CFM) Protocol / doporučení ITU-T Y.1731 (OAM)
0x8906 Fibre Channel over Ethernet (FCoE)
0x8914 FCoE Initialization Protocol
0x8915 RDMA over Converged Ethernet (RoCE)
0x892F High-availability Seamless Redundancy (HSR)
0x9000 Ethernet Configuration Testing Protocol[6]
0x9100 Q-in-Q
0xCAFE Veritas Low Latency Transport (LLT)[7] pro Veritas Cluster Server

V seznamu EtherType hodnot udržovaném organizací IEEE[8] mnoho známých protokolů chybí; například EtherType 0x6003 používaný DECnet Fáze IV má uveden pouze odkaz na firmu DEC.

Související články

Reference

V tomto článku byl použit překlad textu z článku EtherType na anglické Wikipedii.

  1. IEEE Std 802.3-2005, 3.2.6
  2. a b Kaplan et al. Extended Ethernet Frame Size Support [online]. Internet Engineering Task Force, 26. května 2000. Dostupné online. 
  3. WakeOnLAN [online]. [cit. 2013-01-16]. Dostupné online. 
  4. Configuration - Shortest Path Bridging MAC (SPBM) [online]. Avaya [cit. 2012-07-07]. Dostupné online. [nedostupný zdroj]
  5. Configuration - Shortest Path Bridging MAC (SPBM) [online]. Avaya, červen 2012 [cit. 2012-07-07]. Dostupné online. [nedostupný zdroj]
  6. Configuration Testing Protocol (Loop)
  7. Veritas Low Latency Transport (LLT)
  8. IEEE seznam hodnot EtherType

Externí odkazy