メインコンテンツまでスキップ

3.6. 拡張性のためのメッセージと TLV

LDP の拡張性のサポートには, LSR が未知の TLV およびメッセージをどのように扱うかを指定する U-bit および F-bit に関する規則が含まれる.

本セクションは, ベンダー固有 (vendor-private) および実験 (experimental) 用途のための TLV とメッセージを規定する.

3.6.1. LDP ベンダー固有拡張​

ベンダー固有 TLV およびメッセージは, LSR 間でベンダー固有情報を伝えるために使用される.

3.6.1.1. LDP ベンダー固有 TLV​

Type 範囲 0x3E00 から 0x3EFF はベンダー固有 TLV 用に予約されている.

ベンダー固有 TLV の符号化は次のとおり:

 0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|F| Type (0x3E00-0x3EFF) | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| Data.... |
~ ~
| |
| +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

U-bit Unknown TLV ビット. 未知の TLV を受信した際, U がクリア (=0) の場合, 通知がメッセージの送信元に返されなければならず (MUST), メッセージ全体が無視されなければならない (MUST). U がセット (=1) の場合, その未知の TLV は黙って無視され, 残りのメッセージはその未知の TLV が存在しなかったかのように処理される.

ベンダー固有メッセージが理解されるかどうかの判定は, Type および必須の Vendor ID フィールドに基づく.

ベンダー固有 TLV をサポートする実装は, 送信するすべてのベンダー固有 TLV で U-bit をセットさせる, ユーザがアクセス可能な設定インタフェースをサポートしなければならない (MUST). この要件は, U-bit がクリアであるすべてのベンダー固有 TLV の送信を防止する, ユーザがアクセス可能な設定インタフェースによって満たしてもよい (MAY).

F-bit Forward unknown TLV ビット. このビットは, U-bit がセットされており, かつ未知の TLV を含む LDP メッセージが転送されるべき場合にのみ適用される. F がクリア (=0) の場合, その未知の TLV は, それを含むメッセージとともに転送されない. F がセット (=1) の場合, その未知の TLV は, それを含むメッセージとともに転送される.

Type 0x3E00 から 0x3EFF の範囲の Type 値. Type と Vendor ID フィールドがともに, Data フィールドをどのように解釈するかを指定する.

Length Vendor ID および Data フィールドの累積長をオクテット単位で指定する.

Vendor ID IEEE によって割り当てられた 802 Vendor ID.

Data Value フィールド内の Vendor ID に続く残りのオクテットは, 任意のベンダー依存データである.

3.6.1.2. LDP ベンダー固有メッセージ​

Message Type 範囲 0x3E00 から 0x3EFF は Vendor-Private メッセージ用に予約されている.

 0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U| Msg Type (0x3E00-0x3EFF) | Message Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Vendor ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+ +
| Remaining Mandatory Parameters |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| Optional Parameters |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

U-bit Unknown message ビット. 未知のメッセージを受信した際, U がクリア (=0) の場合, 通知がメッセージの送信元に返される. U がセット (=1) の場合, その未知のメッセージは黙って無視される.

Vendor-Private メッセージが理解されるかどうかの判定は, Msg Type および Vendor ID パラメータに基づく.

Vendor-Private メッセージをサポートする実装は, 送信するすべての Vendor-Private メッセージで U-bit をセットさせる, ユーザがアクセス可能な設定インタフェースをサポートしなければならない (MUST). この要件は, U-bit がクリアであるすべての Vendor-Private メッセージの送信を防止する, ユーザがアクセス可能な設定インタフェースによって満たしてもよい (MAY).

Msg Type 0x3E00 から 0x3EFF の範囲の Message Type 値. Msg Type と Vendor ID がともに, メッセージをどのように解釈するかを指定する.

Message Length Message ID, Vendor ID, Remaining Mandatory Parameters, および Optional Parameters の累積長をオクテット単位で指定する.

Message ID このメッセージを識別するために使用される 32 ビット整数. 送信側 LSR が, このメッセージに適用される可能性のある Notification メッセージを識別しやすくするために使用する. このメッセージに応答して Notification メッセージを送信する LSR は, その notification メッセージにこの Message ID を含める. セクション「Notification Message」を参照されたい.

Vendor ID IEEE によって割り当てられた 802 Vendor ID.

Remaining Mandatory Parameters 残りの必須メッセージパラメータの可変長集合.

Optional Parameters 任意のメッセージパラメータの可変長集合.

3.6.2. LDP 実験拡張​

実験のための LDP サポートは, ベンダー固有拡張のサポートと類似しているが, 次の点が異なる:

  • Type 範囲 0x3F00 から 0x3FFF は実験 TLV 用に予約されている.

  • Message Type 範囲 0x3F00 から 0x3FFF は実験メッセージ用に予約されている.

  • 実験 TLV およびメッセージの符号化はベンダー固有の符号化と類似しているが, 次の点が異なる.

    実験 TLV およびメッセージは, Vendor ID フィールドの代わりに Experiment ID フィールドを使用する. Experiment ID フィールドは, Type または Message Type フィールドとともに, 実験 TLV またはメッセージの解釈を指定するために使用される.

    Experiment ID の管理は実験者の責任である.