BGPのパス属性一覧
BGP(Border Gateway Protocol)のパス属性一覧です。
パス属性一覧
以下で表の題をクリックすることでソート可能です。また、表の右上のSearchボックスで検索も可能です。
属性名をクリックすることで、各パス属性を説明したページを参照できます。
タイプ | パス属性 | カテゴリ | 説明 |
---|---|---|---|
1 | ORIGIN | 必須 | 経路の生成元を示す |
2 | AS_PATH | 必須 | 経由したAS番号の羅列 |
3 | NEXT_HOP | 必須 | 経路に対するネクストホップを示す |
4 | MULTI_EXIT_DISC | オプション非転送 | EBGP接続した他ASへ優先度を通知するメトリック |
5 | LOCAL_PREF | 任意 | IBGP接続で経路の優先度を示す |
6 | ATOMIC_AGGREGATE | 任意 | 経路を集約した場合のフラグ |
7 | AGGREGATOR | オプション転送 | 経路を集約したAS番号とBGP識別子 |
8 | COMMUNITY | オプション転送 | ルーティングポリシー決定で利用 |
9 | ORIGINATOR_ID | オプション非転送 | ルートリフレクションでBGPピアの識別子を付与 |
10 | CLUSTER_LIST | オプション非転送 | ルートリフレクションでクラスターIDの羅列 |
14 | MP_REACH_NLRI | オプション非転送 | マルチプロトコルで到達可能な経路 |
15 | MP_UNREACH_NLRI | オプション非転送 | マルチプロトコルで削除対象の経路 |
17 | AS4_PATH | オプション転送 | 4バイトAS番号羅列(2バイトとの互換) |
18 | AS4_AGGREGATOR | オプション転送 | AGGREGATORの4バイトAS番号用(2バイトとの互換) |
32 | LARGE_COMMUNITY | オプション転送 | ビット幅を増やしたCOMMUNITIES |
カテゴリ
カテゴリの意味は、以下のとおりです。
- 必須(Well-known mandatory)
- すべてのBGPスピーカーでサポートが必須です。必ず、BGPパケットのパス属性として含む必要があります。
- 任意(Well-known discretionary)
- すべてのBGPスピーカーでサポートが必須です。必要な場合だけ、BGPパケットのパス属性に含めます。
- オプション転送(Optional transitive)
- BGPスピーカーでサポートは必須ではないため、解釈できない可能性があります。解釈できない場合は、そのままBGPピアに転送する必要があります。
- オプション非転送(Optional non-transitive)
- BGPスピーカーでサポートは必須ではないため、解釈できない可能性があります。解釈できない場合は、属性を削除してBGPピアに送信する必要があります。
パス属性のフォーマット
パス属性は、UPDATEメッセージに含まれて送信されます。そのフォーマットは、以下のとおりです。
上記で1つのパス属性になり、必須の3つのパス属性(ORIGIN、AS_PATH、NEXT_HOP)は必ず使われ(つまり、上記が3セットはある)、必要に応じてそれ以外のパス属性が使われます。
属性フラグの意味は、以下のとおりです。
ビット | 名称 | 説明 | 値 |
---|---|---|---|
1ビット目 | Optional | サポート必須かを示す | 0:Well-known、1:Optional |
2ビット目 | Transitive | 転送が必要かを示す | 0:non-transitive、1:transitive |
3ビット目 | Partial | 転送された時の処理 | 0:complete、1:partial |
4ビット目 | Extended Length | 拡張の長さ | 0:1バイト、1:2バイト |
5-8ビット | 未使用 | 未使用 | 0000固定 |
OptionalもTransitiveも、カテゴリで示したすべてのBGPスピーカーでサポートが必要か、転送が必要かを示します。Transitiveがあるため、BGPスピーカーはサポートしていないパス属性であっても、転送が必要かどうかを判断できます。
Partialは、completeであればその属性はすべてのBGPスピーカーで処理され、partialであれば処理されなかった場合があることを示します。つまり、カテゴリがOptional transitiveのパス属性を解釈できなかったBGPスピーカーは、ここをpartialにして転送します。
属性フラグ以外の説明は、以下のとおりです。
名称 | 説明 |
---|---|
属性タイプコード | BGPのパス属性一覧表で示したタイプの値 |
パス属性値の長さ | 属性フラグのExtended Lengthが0では1バイト、1では2バイトでパス属性値の長さを示す |
パス属性値 | パス属性の値。パス属性値の長さで示した長さとなり可変 |
これは、タイプ(Type)、長さ(Length)、値(Value)のTLV形式になっています。
補足
属性タイプコードは、これ以外にもありあます。また、タイプコード11:DPA、12:ADVERTISER、13:RCID_PATH / CLUSTER_IDなど非推奨のものもあります。
属性タイプコードは、IANAのBorder Gateway Protocol (BGP) Parametersで管理されています。
次のページ「BGPのベストパス選択アルゴリズム」