要約

  • RFC 10018では、MVPNまたはEVPNの自動発見ルートがSR P2MP PolicyのLeaf集合を増減させる。その集合から実際のツリーを計算しインスタンス化するのは、別のコントローラ処理である。
  • 配信の証明には、同じ世代に結び付いたPTI、各ノードの複製状態、Tree-SID、共有サービス文脈、split horizon、受信側観測が必要になる。
  • Hooman BidgoliはRFC 10018の5人の著者の一人である。公開記録が示すのは共同作業への参加であり、標準や運用結果の個人所有ではない。

マルチキャスト障害の会議で、「Leafは全てそろっていました」という説明が出ることがある。説明自体は正しいかもしれない。それでも、受信者が欠落した理由への答えにはならない。

Leafがそろうまでに観測されたのは、出口PEが参加対象として発見されたことだ。その後には、制約を満たすツリーの計算、複製セグメントの配布、装置ごとの有効化、適切なVPN文脈への引き渡し、受信プロセスによる消費が残る。途中の一状態が完全でも、後段は独立して失敗し得る。

RFC 10018は2026年8月にIETF Standards Trackとして公開された。編集者はRishabh ParekhとDaniel Voyerで、Clarence Filsfils、Hooman Bidgoli、Zhaohui Zhangが著者として加わる。MVPNとEVPNをSegment Routing P2MPツリーおよびingress replicationで動かすための拡張を定めた文書である。重要なのは、一つの成功状態を作ったことではなく、複数の状態の受け渡しを規定したことだ。

自動発見が確定するのは参加意図

SR P2MP PolicyにはRoot、Leaf集合、一つ以上のcandidate pathがある。候補には制約や最適化目標が入り、P2MP tree instanceはゼロ個の場合も複数の場合もある。したがって、参加対象、選択された方針、実体化されたツリーは最初から別々の要素である。

入口PEが出口PEからの自動発見ルートをimportすると、その出口をP-tunnelのLeafとして発見し、該当PolicyのLeaf集合へ加える。withdrawされれば除く。出口PE側は、ルートを対象のMVPNまたはEVPN文脈へ関連付け、自身がLeafあるいはBudとして参加することをPolicyモジュールへ伝える。

この機能は運用を前進させる。手書きの受信者表だけに依存せず、誰がいつ参加を広告し、どの入口がimportし、いつ撤回されたかを残せる。参加意図に入らなかった障害と、その後の実装障害を切り分けられる。

ただし、ルートはデータパケットを観測していない。候補の制約が実現可能か、全中間ノードに整合した状態があるか、受信アプリケーションが動作しているかも知らない。自動発見は次のシステムへの入力であって、配信結果の領収書ではない。

コントローラの完了には世代番号が要る

コントローラはLeaf集合、candidate path、制約、目標を基にP2MP tree instanceを計算する。Root、中間複製ノード、Leafのreplication segmentを接続してインスタンス化する。BGP、PCEP、NETCONFなど、どの仕組みでそれらをinstallするかはRFC 10018の範囲外である。

この範囲外という記述は、保証の欠落ではなく責任境界だ。入口ルータが集合更新を送信しても計算待ちかもしれない。計算が終わっても一台だけ資源不足で拒否するかもしれない。southboundの応答が成功しても、ハードウェア反映が遅れ、異なる世代が短時間共存することもある。

監査可能な単位は、漠然とした「設定成功」ではなく一つの世代である。candidate path ID、Leaf集合のハッシュ、制約、最適化目標、コントローラ要求、生成されたPTI、ノードごとのacknowledgementを同じ識別子で結ぶ。世代を示さない緑表示は、他の緑表示と比較できない。

RFC 9960はPolicy構造、RFC 9524はRoot、Bud、Leaf、中間複製ノードの役割、RFC 9961はMPLS SR P2MP Policyのpingとtracerouteを扱う。方針、実装状態、OAM観測を別の文書が担う構成は、これらを一つの証拠に縮めないよう促している。

Tree-SIDの先にサービス文脈がある

インスタンス化されたツリーはTree-SIDを持つ。Rootがペイロードを入れ、プロバイダ網が枝ごとに複製し、LeafがTree-SIDを外してMVPNまたはEVPN文脈へ渡す。

専用ツリーならツリー識別子からサービスを一意に決められる場合がある。共有ツリーでは複数のVPNが同じP-tunnelを利用するため、service label、SRv6 service SID、argumentなどが顧客文脈を区別する。正しいツリーを通過したパケットが、誤った転送表に入ることは論理的に可能だ。

EVPN multihomingではsplit horizonも必要になる。同じEthernet SegmentへBUMトラフィックが戻り、二重受信となるのを防ぐ仕組みだ。正しいLeaf集合はESI処理の正しさを証明しない。二つ届いた受信者に対し、全Leafが存在したという説明は救済にならない。

そこでTree-SIDとサービスの識別子を一緒に記録する。labelまたはSID、Ethernet Segment文脈、split-horizon値、入口PE、出口lookupまでをjoinできなければならない。Leaf数からこれらを推測する設計は避けるべきだ。

Ingress replicationでは障害面が移動する

RFC 10018はingress replicationにも触れる。この方式では入口PEが出口PEごとにコピーを作り、SR-MPLSまたはSRv6の経路へ送る。共通のP2MP treeを使う場合と違い、Policyモジュールやコントローラの関与は同じではない。

受信者から見れば、どちらも一つのストリームに見える。しかし、共通ツリーでは世代と複製ノードの整合が中心で、ingress replicationでは送信元のコピー数と出口ごとのunicast到達性が中心となる。「マルチキャスト有効」という一つの属性では、調査すべき面が分からない。

移行時には、受信者単位で方式を記録する必要がある。旧ツリーを閉じる判断者、新しいコピーを開始する条件、重複がないことを示す観測も残す。所有者が曖昧なままだと、古い枝と新しいコピーが同時に生きるか、逆にどちらもなくなる。

受信観測が証拠の鎖を閉じる

Rootでは顧客から受け入れたパケットと、特定のTree-SIDまたは複製集合へ投入したパケットを測る。各複製ノードでは、同じ世代に対する入力、複製出力、dropを残す。Leafではdecapsulationとサービス文脈のlookupを記録する。受信境界では、期待sequence、loss、duplicate、順序、latency、有効消費を観測する。

一つのステータスへ丸めてはいけない。Rootのcounterは投入を証明する。枝のcounterは欠落箇所を絞る。Leafのdecapsulationは出口ルータへの到着を証明する。意図したendpointが条件どおり受け取ったかを答えられるのは、最終観測だけである。

試験にはwithdrawを含める。通信中にLeafを除き、ルート、計算、install、実際の複製停止がそれぞれ収束する時間を測る。再参加時は新しい世代として追跡できるようにする。中間ノードのinstallを一つ失敗させ、システムが完全と誤表示しないことを確認する。multihomingの切替ではlossだけでなくduplicateも探す。

Hooman Bidgoliをめぐる公開根拠

2026年9月1日に取得したIETF Datatrackerの人物記録は、Hooman Bidgoliに7本のRFCを紐付けている。SR replicationのRFC 9524、P2MP PolicyのRFC 9960、P2MP OAMのRFC 9961、そしてRFC 10018が含まれる。RFC 10018はNokia、Ottawaとの所属を記す。Nokiaの公式SReXperts講演者ページは、取得時点でIP/MPLS、マルチキャスト、ルータセキュリティに関する経歴を掲載していた。

この連続性は、彼の関与を具体的に示す。複製、方針、OAM、サービス結合という複数の面に公開記録があるからだ。一方、それは単独発明、IETF合意の所有、特定の本番網の運用を意味しない。RFC 10018には5人の著者がおり、先行するMVPN、EVPN、Segment Routingの成果に依存する。

人物を中心に据える意義は、集団の仕事を一人の物語へ置き換えることではない。確認できる貢献から、どの境界が重要かを読むことにある。Bidgoliの記録は、Leafの更新とサービス配信の間に複数の決定者がいることを示している。

マルチキャストの領収書をjoin可能にする

変更ごとに、サービスとtenant、配信方式、Root、importされた自動発見ルート、LeafまたはBudの参加、candidate path、制約、目標を保存する。そこへコントローラ要求、PTI世代、各装置のreplication segment確認を加える。

次にTree-SIDをservice labelまたはSID、Ethernet Segment、split horizon、出口lookupへ結ぶ。最後に投入数、生成コピー、枝のdrop、Leaf decapsulation、OAM、受信結果、alarm時刻を閉じる。withdrawでは、開始者、各層の削除時刻、残留通信、清掃完了の観測が必要だ。

この鎖はマルチキャストを単純化しない。代わりに、相違を特定できるようにする。Leaf集合は参加意図の正確な記録として残し、配信済みという主張は後段の証拠が一致した時だけ認める。

出典