論理リンク制御
From Wikipedia, the free encyclopedia
歴史
1989年に標準化されたIEEE 802.2 LLCは、IEEE 802.3 イーサネット、IEEE 802.4 トークンバス、IEEE 802.5 トークンリング、IEEE 802.11 無線LANなどの各MAC副層と組み合わせるように設計された。1998年まで追加拡張され、2011年に廃止された。その内容は ISO/IEC 8802-2 として引き継がれているが、こちらも更新停止扱いとなっている[1]。
当初の設計では、主に
といった動作をIEEE 802.2内の機能のみで規定していたが、2014年以降はLLC層はMAC副層とネットワーク層(レイヤ3)の間に生じるすべての関連機能を含むようにIEEE 802自体が改定されている[2]。
LLCでカプセル化されるプロトコルはIEEE 802で定められたものの他、FDDIのようなIEEE 802外のプロトコルも扱えるよう考慮された[3]。また、IEEE 802外のプロトコルの中にもMAC層とLLC層を分けて考えることができるものがある[4]。
2026年現在では、LLC副層では以下の機能を提供している[2]。
- IEEE 802.1X - 認証VLAN
- IEEE 802.1AE - MACsec
- IEEE 802.1AX - リンクアグリゲーション
また、カプセル化用途では、以下のプロトコルで主に用いられる。
イーサネットではDIX仕様が主流となっているためほぼLLCは使われておらず、それ以外のMAC副層はプロトコル自体が廃れている。
LLCフレーム書式
LLCフレームの書式を以下に示す[7]。
| 802.2 LLC ヘッダ | ペイロード | ||
|---|---|---|---|
| LSAP (宛先) | LSAP (送信元) | 制御 | |
| 1バイト | 1バイト | 1バイト0x03 |
任意バイト |
LSAP (Link Service Access Points) 欄は受け渡しする上位層プロトコルを指定するもので、宛先用と送信元用で2つ用意されていたが、現在ではほとんどの場合で同じ値が入る。主なものとして、BPDU用に0x42、IS-IS用に0xFEが規定されている[8]。
拡張書式
SNAP (Subnetwork Access Protocol)は、LLCフレームに特にEtherTypeを格納する欄を設け、プロトコルの識別がさらにできるように拡張した書式。LSAP値が2つとも0xAAの場合、LLCヘッダの後に以下のようなSNAPヘッダを置くことができ、この中でプロトコルID欄にEtherType値を格納できる[9]。
| 802.2 LLC ヘッダ | SNAP拡張 | ペイロード | |||
|---|---|---|---|---|---|
| LSAP | LSAP | 制御 | OUI | プロトコルID | |
1バイトAA |
1バイトAA |
1バイト03 |
3バイト | 2バイト | 任意バイト |
RFC 1042 ではIPv4通信のカプセル化にSNAPフレームで EtherType 0x0800 使うように規定しており、FDDI・トークンリング・無線LANなどではこちらの実装が採られている。
初期の仕様
「LSAP」欄では、宛先と送信元のそれぞれにおいて、奇数と偶数の値が異なる用途を持つように規定されている。
また「制御」欄では、当初HDLCの仕様を元にして以下の3つの動作モードをサポートしていた。
| 種類 | 制御欄の書式 | 用途・動作 |
|---|---|---|
| U-フォーマット (Unnumbered) | 1バイト (下位2ビットが 0b11) |
コネクションレス型通信用途。最も頻繁に使用されたもので、現在ではこのモードのみをサポートする。 |
| I-フォーマット (Information transfer) | 2バイト (1バイト目の下位ビットが 0) |
コネクション型通信用途。制御バイトにシーケンス番号を含む。 |
| S-フォーマット (Supervisory) | 2バイト (1バイト目の下位2ビットが 0b01) |
LLC層での監視機能用。 |
LSAP一覧
2026年2月現在、IEEE 802によって予約済みのLSAPの値を下表に示す[10]。
| LSAP | 管理組織 | 規格 | 用途 |
|---|---|---|---|
| 00 | ISO/IEC JTC 1/SC6 | ISO/IEC 8802-2 | Nullアドレス |
| 02 | ANSI | IEEE 802.1b | LLC副層管理 |
| 06 | ANSI | RFC 791 | ARPANET内のIPv4 |
| 0A | ANSI | IEEE 802.10B | Secure Data Exchange プロトコル |
| 0E | IEC | IEC 955:1989 | Proway C (Process Data Highway, Type C)のネットワーク管理 |
| 42 | ISO/IEC JTC 1/SC6 | ISO/IEC 10038:1993 | スパニングツリープロトコル |
| 4E | ISO | ISO 9506:1990 (旧 EIA RS-511) | Manufacturing Message Service |
| 7E | ISO/IEC JTC 1/SC6 | ISO/IEC 8208:1995 | X.25のDTE拡張 |
| 82 | ASHRAE | ANSI/ASHRAE 135-1995 | BACnet |
| 8E | IEC | IEC 955:1989 | Proway C (Process Data Highway, Type C)の端末保守用 |
| A6 | ISO/IEC JTC 1/SC6 | ISO/IEC 8802-2 | Route Determination Entity |
| AA | ANSI | IEEE 802-1990 | SNAP |
| E6 | IEC TC13 | IEC62056-46 | 電力計測のHDLC通信 |
| FE | ISO/IEC JTC 1/SC6 | ISO/IEC TR 9577:1993 | ネットワーク層汎用 |
| FF | ISO/IEC JTC 1/SC6 | ISO/IEC 8802-2 | ブロードキャストアドレス |
なお、4の倍数値(0x00を除く)は予約なしで使用可能なものとなっている。かつてはさまざまなベンダや組織によって利用され、主な用途に以下のものがあった[11]。