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

RFC 6388 - LDP 拡張: P2MP および MP2MP LSP

Internet Engineering Task Force (IETF) IJ. Wijnands, Ed. Request for Comments: 6388 Cisco Systems, Inc. Category: Standards Track I. Minei, Ed. ISSN: 2070-1721 K. Kompella Juniper Networks November 2011

概要​

本文書は、ポイントツーマルチポイント (P2MP) およびマルチポイントツーマルチポイント (MP2MP) ラベルスイッチドパス (LSP) をセットアップするための Label Distribution Protocol (LDP) 拡張を定義する。これらの拡張は mLDP と呼ばれる。

1. はじめに​

P2MP LSP は単一のルートから複数のリーフへトラフィックを配送する。MP2MP LSP は集合内のいずれのノードからも他の全ノードへ配送できる。LDP を拡張し、受信者駆動(リーフ起動)でマルチポイント LSP を確立する。

1.1 要件言語​

"MUST", "SHOULD", "MAY" 等は BCP 14 [RFC2119] に従う。

1.2 用語​

P2MP LSP, MP2MP LSP, MP LSP, Ingress/Egress/Transit/Bud LSR, Leaf, Root, Opaque Value, FEC など。

2. LDP による P2MP LSP の確立​

2.1 能力広告​

[RFC5561] の Capability で P2MP Capability を Initialization で広告する。未広告ピアへ P2MP FEC を送るべきではない (SHOULD NOT)。

2.2 P2MP FEC Element​

Type 0x06。Root Node Address と Opaque Value の組でネットワーク内の P2MP LSP を一意に識別。Address Family は IPv4/IPv6。FEC TLV 内では当該 Element が唯一でなければならない (MUST)。

2.3 Opaque Value​

基本型/拡張型の LDP MP opaque value。Generic LSP Identifier (Type 1, 4 オクテット) を推奨する場合がある。

2.4 Label Mapping / Withdraw​

リーフが上流へ Label Mapping を送り確立を開始。上流はルートへのユニキャスト経路(IGP)で選ぶ。ECMP 時は CRC32(Opaque) mod N で安定選択。中継はローカルラベルを割り当て転送状態を入れ、未送信なら上流へ伝播。ルートはトラフィックを LSP に載せる状態を入れる。

Withdraw は興味喪失時に上流へ伝播。上流変更時は新上流へ Mapping、旧上流へ Withdraw(または MBB)。

3. MP2MP LSP​

3.1 能力​

MP2MP Capability を広告。

3.2 Downstream / Upstream FEC​

下流木(ルート→リーフ)と上流経路(リーフ→ルート)を別 FEC 型で識別。共有の root/opaque。

3.3 双方向状態​

リーフは下流 Mapping と上流状態の両方を扱い、他リーフへの扇出とルート方向送信を両立する。Withdraw と上流変更は両方向で一貫して行う。

4. マイクロループ​

収束中の一時ループに注意。IGP 収束待ち、MBB、TTL 保護などを SHOULD。

5. LDP MP Status TLV​

マルチポイント関連ステータスを Notification や Label Mapping に載せる。MBB 状態通知に使用。

6. LAN 上の上流ラベル割当​

共有 LAN で効率的な複製のため上流ラベル割当を議論。MP2MP の上下流転送に特有の注意点がある。

7. ルートノード冗長​

単一ルートの SPOF を避ける。バックアップルートへの並行確立や切替、MBB との組み合わせ。

8. Make Before Break (MBB)​

新経路を先に確立してから旧経路を削除。MBB Capability と Status Code で協調。非アクティブ状態のインストール→活性化→旧 Withdraw の順序。

9. Typed Wildcard​

mLDP FEC に対する typed wildcard で一括 Withdraw/Release 等を簡略化。

10. セキュリティ​

[RFC5036] の LDP セキュリティに加え、悪意ある Mapping による状態/帯域 DoS、偽 root/opaque によるハイジャックがリスク。認証、ピア制限、root/opaque ポリシー、監視を SHOULD。

11. IANA​

Opaque basic/extended type、MP Status type、Capability コード、FEC Element 型(P2MP 0x06 等)を登録。

12–14. 謝辞・著者・参考文献​

主編集: IJ. Wijnands, I. Minei, K. Kompella 等。[RFC2119], [RFC5036], [RFC5561], [RFC3031]。

運用要点​

  1. リーフ駆動
  2. 能力交渉必須
  3. 上流は IGP ベース、ECMP は CRC32 ハッシュ
  4. per-platform ラベル
  5. MBB で無中断に近づける
  6. トラフィック写像は別仕様(MVPN 等)

関連リソース​

https://www.rfc-editor.org/rfc/rfc6388.txt

英文約 81KB。本訳はプロトコルモデルと全主要章をカバー。ビット図は英文参照。

付録: 実装チェックリストと相互接続​

チェックリスト​

  1. 127/8 宛先の生成と ECMP 分散
  2. Target FEC Stack の各要素タイプ(LDP/RSVP/VPN)
  3. Downstream Mapping の IPv4/IPv6 アドレス族
  4. Return Code の正しい設定(不一致・成功・形式エラー)
  5. Reply mode のサポート(IP reply 等)
  6. レート制限と管理プレーン ACL
  7. PHP 環境での出口判定
  8. マルチベンダ相互接続(ラベルスタック一致)

トラブルシュート例​

  • Ping タイムアウト: データ平面断、または reply 経路断。traceroute で最初の無応答ホップを特定。
  • FEC mismatch: 制御平面の FEC と実ラベルが不一致。再信号または再配布を確認。
  • Downstream mapping 不一致: 次ホップ/出ラベルが IGP と違う。ECMP やポリシー経路を疑う。

関連ツール​

  • LSP Ping / Traceroute (本仕様)
  • BFD for MPLS LSPs(後続仕様)
  • テレメトリ(YANG/Netconf 等は後続)

本節は運用品質を高めるための実装・試験ガイダンスであり、RFC 4379 本文の規範要件を補完する。

Supplemental implementation notes​

Message sequencing (P2MP)​

  1. Leaf learns (root, opaque) from application/controller
  2. Select upstream via IGP toward root
  3. Send Label Mapping with P2MP FEC and local label
  4. Transit installs ILM/NHLFE fan-out and propagates if needed
  5. Root installs push state for traffic classified onto the P2MP LSP
  6. On prune, Withdraw propagates when no remaining downstream interest

MP2MP additional steps​

  • Maintain both downstream tree and upstream path bindings
  • Ensure a packet from a leaf reaches a replication point and is fanned out without returning to the sender unnecessarily
  • Coordinate MBB on both directions when upstream changes

Testing matrix​

CaseExpectation
Capability mismatchNo P2MP FEC sent
Single leaf join/leaveMapping/Withdraw correct
Multi-leaf shared transitOne upstream Mapping from transit
ECMP upstreamStable CRC32 choice
Root redundancyBackup tree usable
MBBNew path before old delete

Security operations​

Enable LDP auth, restrict who may advertise roots, monitor label-table growth, alert on unexpected opaque values.

Notes complémentaires / 補足 / Ergänzung / Note​

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.

This supplemental section restates operational guidance for implementers: authenticate control-plane sessions, rate-limit diagnostics, validate FEC/label consistency, test make-before-break or session restart, monitor state scale, and always treat the English RFC bit diagrams and IANA tables as authoritative for wire encoding. 部署时请结合实验室互通测试与灰度发布, 观察会话稳定性、标签空间与错误码分布. 運用ではセッション安定性・ラベル空間・エラーコード分布を監視し、英文の符号化を最終根拠とする. En production, surveillez stabilité des sessions, espace de labels et codes d'erreur; l'anglais fait foi pour l'encodage. Im Betrieb Sitzungsstabilität, Labelraum und Fehlercodes überwachen; Englisch ist maßgeblich für die Kodierung. In esercizio monitorare stabilità sessioni, spazio label e codici di errore; l'inglese è autorevole per la codifica.