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

3. OSPFセグメントルーティング over MPLSデータプレーンYANGモジュール (OSPF Segment Routing over MPLS YANG Module)

本セクションでは、MPLSデータプレーン上のOSPFセグメントルーティング拡張の完全なYANGモジュールを紹介します。

モジュール構造 (Module Structure)

ietf-ospf-sr-mpls YANGモジュールは、OSPF基本YANGモデル [RFC9129] を拡張し、セグメントルーティング基本モジュール [RFC9020] と統合されています。OSPFv2 [RFC8665] とOSPFv3 [RFC8666] の両方をサポートします。

モジュールヘッダー (Module Header)

module ietf-ospf-sr-mpls {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-ospf-sr-mpls";
prefix ospf-sr-mpls;

organization
"IETF LSR - Link State Routing Working Group";

description
"このYANGモジュールは、MPLSデータプレーン上のOSPFセグメントルーティング(SR)
拡張の設定および運用状態を定義します。

このYANGモジュールは、RFC 8342に記述されているネットワーク管理
データストアアーキテクチャ(NMDA)に準拠しています。

Copyright (c) 2025 IETF Trust および著者。全著作権所有。

このYANGモジュールのバージョンは RFC 9903 の一部です。
完全な法的通知については、RFC自体を参照してください。";

revision 2025-12 {
description
"初版。";
reference
"RFC 9903: A YANG Data Model for OSPF Segment Routing
over the MPLS Data Plane";
}
}

主要なデータノード (Key Data Nodes)

セグメントルーティンググローバル設定 (Segment Routing Global Configuration)

SRGB設定:

  • パス (Path): /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/ospf:ospf/segment-routing/srgb
  • タイプ (Type): lower-boundとupper-boundリーフを含むコンテナ
  • 説明 (Description): セグメントルーティンググローバルブロック (Segment Routing Global Block) 範囲を定義

SRLB設定:

  • パス: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/ospf:ospf/segment-routing/srlb
  • タイプ: lower-boundとupper-boundリーフを含むコンテナ
  • 説明: セグメントルーティングローカルブロック (Segment Routing Local Block) 範囲を定義

MSD設定:

  • パス: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/ospf:ospf/segment-routing/msd
  • タイプ: uint8
  • 説明: ノードが課すことができる最大SID深度 (Maximum SID Depth)

エリアレベル設定 (Area-Level Configuration)

セグメントルーティング有効化:

  • パス: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/ospf:ospf/areas/area/segment-routing/enabled
  • タイプ: boolean
  • デフォルト値: false
  • 説明: エリア内のすべてのインターフェースでSR-MPLSを有効化

インターフェースレベル設定 (Interface-Level Configuration)

隣接セグメント識別子設定 (Adjacency-SID Configuration):

  • パス: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/ospf:ospf/areas/area/interfaces/interface/segment-routing/adjacency-sid
  • タイプ: コンテナ
  • 内容:
    • value: SID値またはインデックス
    • neighbor: 隣接ルーターID (マルチアクセスネットワーク用)
    • flags: 保護および値/インデックスフラグ

TI-LFA設定:

  • パス: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/ospf:ospf/areas/area/interfaces/interface/fast-reroute/ti-lfa
  • タイプ: コンテナ
  • 内容:
    • enable: TI-LFAの有効化/無効化
    • node-protection: ノード保護の有効化

運用状態データ (Operational State Data)

OSPFv2 LSA拡張

モジュールは、SR関連TLVでOSPFv2 LSAを拡張します:

拡張プレフィックスオペークLSA (Extended Prefix Opaque LSA):

  • 拡張プレフィックスTLV
    • プレフィックスセグメント識別子サブTLV (Prefix-SID Sub-TLV)
      • フラグ: NPフラグ、Mフラグ、Eフラグ、Vフラグ、Lフラグ
      • アルゴリズム
      • SID/インデックス/ラベル

拡張リンクオペークLSA (Extended Link Opaque LSA):

  • 拡張リンクTLV
    • 隣接セグメント識別子サブTLV (Adj-SID Sub-TLV)
      • フラグ: Bフラグ、Vフラグ、Lフラグ、Gフラグ、Pフラグ
      • 重み
      • SID/ラベル

ルーター情報オペークLSA (Router Information Opaque LSA):

  • SRアルゴリズムTLV
  • SID/ラベル範囲TLV
  • SRローカルブロックTLV
  • SRMS優先度TLV

OSPFv3 LSA拡張

モジュールは、SR関連TLVでOSPFv3 E-LSAを拡張します:

E-ルーターLSA (E-Router LSA):

  • SRアルゴリズムTLV
  • SID/ラベル範囲TLV
  • SRローカルブロックTLV

E-エリア内プレフィックスLSA (E-Intra-Area-Prefix LSA):

  • プレフィックスセグメント識別子サブTLV (Prefix-SID Sub-TLV) (OSPFv2と同様)

E-リンクLSA (E-Link LSA):

  • 隣接セグメント識別子サブTLV (Adj-SID Sub-TLV)
  • LAN隣接セグメント識別子サブTLV (LAN Adj-SID Sub-TLV)
    • 隣接ルーターID
    • フラグとSID/ラベル

主要用語 (Core Terminology)

Prefix-SID (プレフィックスセグメント識別子)

IPプレフィックスに関連付けられたセグメント識別子。Prefix-SIDはSRドメイン内でグローバルに一意であり、プレフィックスへのECMP対応最短パスを表します。

Adjacency-SID (隣接セグメント識別子)

隣接ルーターへの特定の隣接関係を表すセグメント識別子。

LAN Adjacency-SID (LAN隣接セグメント識別子)

マルチアクセスネットワーク (LAN) で使用される特殊な形式のAdjacency-SIDで、ローカルインターフェースと隣接ルーターの両方を識別します。

SRGB (セグメントルーティンググローバルブロック)

SRドメイン内のグローバルセグメント用に予約されたラベル範囲。すべてのノードは、SRの正常な動作のために一貫したSRGB設定を持つ必要があります。

SRLB (セグメントルーティングローカルブロック)

ローカルセグメント用に予約されたラベル範囲。SRLBラベルはローカルでのみ有効であり、ドメイン全体には伝播されません。

MSD (最大SID深度)

ノードがパケットに課すことができる最大SID数。この値は、パス計算エンジンが実行可能なSRパスを決定するのを支援するためにアドバタイズされます。

使用例 (Usage Example)

完全な設定例については、付録A を参照してください。

完全なモジュール定義 (Complete Module Definition)

すべてのデータノード、拡張、および通知を含む完全なYANGモジュール定義については、次を参照してください:


: 完全なYANGモジュールコード (約600行以上) には、各データノードの詳細な説明、制約、および参照が含まれています。ネットワークオペレーターは、YANG検証ツールを使用して、設定がモジュールの制約に準拠していることを確認する必要があります。