長さ/タイプ

読み:ながさたいぷ / 英語表記:Length/Type

イーサネットフレームの送信元アドレスの直後にある2オクテットのフィールド。値によって、データの長さか、上位プロトコルの種類のどちらかを表す。

イマシルちゃんの解説

フレームの中にデータを入れて送るのはいいけど、受け取った側は「この中身はなに?」ってわからないと困っちゃうよね。

そこで、中身がIPv4なのか、IPv6なのか、ARPなのかを書いておくのがこのフィールド!
たとえば 0x0800 ならIPv4、0x86DD ならIPv6だよ。

ちょっとややこしいのは、昔の名残で「データの長さ」を入れることもあるってところ。
値の大きさでどっちの意味かを見分けるんだ!

より深い解説

2つの意味の見分け方

このフィールドは、値の範囲によって解釈が変わる。

値(10進)値(16進)意味
0〜1,5000x0000〜0x05DC長さ(MACクライアントデータのオクテット数)
1,536以上0x0600以上タイプ(上位プロトコルの種別、EtherType)

MACクライアントデータの最大長が1,500オクテットなので、それより大きい値は長さとしてはありえない。この性質を利用して、1つのフィールドで2つの意味を両立させている。

成り立ち:Ethernet IIとIEEE 802.3

この二重の意味は、イーサネットに2つの系統があったことに由来する。

1997年の改訂で、IEEE 802.3は両方の使い方を正式に認め、フィールド名を「長さ/タイプ」とした。現在のTCP/IP通信では、ほとんどがタイプとして使われている。

代表的なタイプ値

タイプ値プロトコル
0x0800IPv4
0x0806ARP
0x86DDIPv6
0x8100IEEE 802.1Q VLANタグ(TPID)
0x8863 / 0x8864PPPoE(ディスカバリ/セッション)
0x88CCLLDP

VLANタグとの関係

IEEE 802.1Q のVLANタグを挿入する場合、本来の長さ/タイプの位置に 0x8100(TPID)が入り、続く2オクテットにVLAN IDなどの制御情報が入る。その後ろに本来の長さ/タイプが続く。このため、タグ付きフレームは ベーシックフレーム より4オクテット長くなり、最大1,522オクテットとなる。

実際の試験ではここに出る!

この用語が出てくる記事