LDPへのセグメントルーティング相互運用性のためのクライアントとサーバーのマッピング
セグメントルーティングマッピングサーバーとクライアントのサポートにより、LDPおよびセグメントルーティング(SRまたはSPRING)を実行するネットワークアイランド間での相互運用性が可能になります。この相互運用性は、LDPからSRへの移行時に役立ちます。移行中に、LDPのみまたはセグメントルーティングのみをサポートするデバイスを持つ島(またはドメイン)が存在する可能性があります。これらのデバイスを相互運用するためには、LDP セグメント ルーティング マッピング サーバー(SRMS)とセグメント ルーティング マッピング クライアント(SRMC)機能が必要です。これらのサーバーおよびクライアント機能は、セグメントルーティングネットワーク内のデバイスで有効にします。
SRマッピングサーバーとクライアント機能は、OSPFまたはISISでサポートされています。
LDPへのセグメントルーティング相互運用性の概要
図1は、シンプルなLDPネットワークトポロジーを示しており、セグメントルーティングデバイスとLDPデバイスの相互運用性がどのように機能するかを示しています。OSPFとISISの両方がサポートされているので、今のところ、IGPに関しては依存関係がないことに留意してください。サンプルトポロジーには、LDPからセグメントルーティングへの移行を行っているネットワークにR1からR6の6つのデバイスがあります。
このトポロジーでは、デバイスR1、R2、R3はセグメントルーティング用にのみ設定されています。デバイスR5およびR6はレガシーLDPドメインの一部であり、現在SRをサポートしていません。デバイスR4はLDPとセグメントルーティングの両方をサポートしています。すべてのデバイスのループバックアドレスが表示されます。これらのループバックは、LDPドメインではegress FECとして、またSRドメインではSRノードIDとしてアドバタイズされます。相互運用性は、LDP FECをSRノードIDに、またSRノードIDにLDP FEDをマッピングすることに基づいています。
へのセグメントルーティング例
R1がR6と相互作用するためには、LDPセグメントルーティングマッピングサーバー(SRMS)とセグメントルーティングマッピングクライアント(SRMC)の両方が必要です。トラフィックフローを一方向に見た方が、SRMSとSRMCの役割は理解しやすいでしょう。 図1に基づくと、SRドメインで左から右にトラフィックフローが発生し、LDPドメインで終了することになります。同様に、右から左に流れるトラフィックは、LDPドメインで発生し、SRドメインで終了します。
SRMSは、トラフィックを左から右方向にステッチするのに必要な情報を提供します。SRMCは、右から左に流れるトラフィックのマッピングを提供します。
- 左から右へのトラフィックフロー:セグメントルーティングマッピングサーバー
SRMSは、SRドメインとLDPドメイン間のLSPステッチを容易にします。サーバーは、LDP FECをSRノードIDにマッピングします。LDP FECを
[edit routing-options source-packet-routing]階層レベルでマッピングするように設定します。通常、完全接続するには、すべてのLDPノードループバックアドレスをマッピングする必要があります。以下に示すように、単一のレンジステートメントで連続プレフィクスをマッピングできます。LDPノードループバックが連続しない場合は、複数のマッピングステートメントを定義する必要があります。SRMSマッピング設定は、
[edit protocols ospf]または[edit protocols isis]階層レベルで適用します。この選択は、どの IGP が使用されているかによって異なります。SRノードとLDPノードの両方が、共通のシングルエリア/レベル、IGPルーティングドメインを共有することに注意してください。SRMSは、拡張プレフィックスリストLSA(ISISの場合はLSP)を生成します。このLSAの情報により、SRノードはLDPプレフィックス(FEC)をSRノードIDにマッピングできます。LDPプレフィックス用のマッピングされたルートは、SRノードの
inet.3およびmpls.0ルーティングテーブルにインストールされ、左から右方向のトラフィックのLSP ingressとステッチ操作を容易にします。拡張LSA(またはLSP)は、(単一の)IGPエリア全体にフラッドされます。つまり、SRドメインのどのルーターにでも自由にSRMS設定を配置できます。SRMSノードは、LDPを実行する必要はありません。
- 右から左のトラフィックフロー:セグメントルーティングマッピングクライアント
右から左方向、つまり、LDPアイランドからSRアイランドへ相互運用するには、SRとLDPの両方と対話するノードでセグメントルーティングマッピングクライアント機能を有効にするだけです。この例では、R4です。SRMC機能を有効にするには、
[edit protocols ldp]階層のmapping-clientステートメントを使用します。SRMC設定は、自動的にLDP egressポリシーを有効にし、SRドメインのノードとプレフィックスSIDをLDP egress FECとしてアドバタイズします。これにより、LDP ノードから SR ドメインのノードへの LSP 到達可能性が提供されます。
- SRMC機能は、SRドメインとLSPドメインの両方に接続するルーターで設定する必要があります。必要に応じて、同じノードをSRMSとして機能させることもできます。
OSPFを使用したLDPへのセグメントルーティング相互運用性
図1を参照し、(セグメントルーティングネットワーク内の)デバイスR2がSRMSであると仮定します。
-
SRMS機能を定義します。
[edit routing-options source-packet-routing ] user@R2# set mapping-server-entry ospf-mapping-server prefix-segment-range ldp-lo0s start-prefix 192.168.0.5 user@R2# set mapping-server-entry ospf-mapping-server prefix-segment-range ldp-lo0s start-index 1000 user@R2# set mapping-server-entry ospf-mapping-server prefix-segment-range ldp-lo0s size 2
この設定は、サンプルトポロジー内の両方のLDPデバイスループバックアドレスのマッピングブロックを作成します。R5のループバックにマッピングされた最初のセグメントID(SID)インデックスは
1000です。サイズ2を指定すると、SIDインデックス10001がR6のループバックアドレスにマッピングされます。注:start-prefixとして使用されるIPアドレスは、LDPネットワーク内のデバイスのループバックアドレスです(この例ではR5)。完全接続するには、LDPルーターのすべてのループバックアドレスをSRドメインにマッピングする必要があります。ループバックアドレスが連続している場合は、1つのprefix-segment-rangeステートメントでこれを行うことができます。連続していないループバックでは、複数のプレフィックスマッピングステートメントを定義する必要があります。この例では連続したループバックを使用しているため、1つの
prefix-segment-rangeを上記に示します。ここでは、連続していないループバックアドレスを持つ2つのLDPノードのケースをサポートするための複数マッピングの例を示します。[edit routing-options source-packet-routing] show mapping-server-entry map-server-name { prefix-segment-range lo1 { start-prefix 192.168.0.5/32; start-index 1000; size 1; } prefix-segment-range lo2 { start-prefix 192.168.0.10/32; start-index 2000; size 1; } } } -
次に、マッピングされたプレフィックスをフラッディングするのに使用される拡張LSAのOSPFサポートを設定します。
[edit protocols] user@R2# set ospf source-packet-routing mapping-server ospf-mapping-server
デバイスR2でマッピングサーバー設定がコミットされると、拡張プレフィックス範囲TLVがOSPFエリア全体にフラッディングされます。セグメントルーティング(R1、R2、R3)が可能なデバイスは、セグメントID(SID)インデックスで指定されたループバックアドレス(この例ではR5とR6)のOSPFセグメントルーティングルートをインストールします。SIDインデックスは、セグメントルーティングデバイスによって
mpls.0ルーティングテーブルでも更新されます。 -
SRMC機能を有効にします。サンプルトポロジーでは、R4でSRMC機能を有効にする必要があります。
[edit protocols] user@R4# set ldp sr-mapping-client
デバイスR4でマッピングクライアント設定がコミットされると、SRノードIDとラベルブロックはエグレスFECとしてルーターR5にアドバタイズされ、次にR6に再アドバタイズされます。
Junos OS 19.1R1で、OSPFによるセグメントルーティングとLDPネクストホップのステッチのサポートが開始されました。
Unsupported Features and Functionality for Segment Routing interoperability with LDP using OSPF
-
IPv6 プレフィックスはサポートされていません。
-
AS境界をまたぐOSPF拡張プレフィックス不透明LSAのフラッディング(AS間)はサポートされていません。
-
エリア間LDPマッピングサーバー機能はサポートされていません。
-
拡張プレフィックスOpaque LSAのABR機能はサポートされていません。
-
拡張プレフィックスOpaque LSAのASBR機能はサポートされていません。
-
セグメント ルーティング マッピング サーバー優先度 TLV はサポートされていません。
ISISを使用したLDPとのセグメントルーティングの相互運用性
図1を参照し、(セグメントルーティングネットワーク内の)デバイスR2がSRMSであると仮定します。マッピング機能に以下の設定が追加されます。
-
SRMS機能を定義します。
[edit routing-options source-packet-routing ] user@R2# set mapping-server-entry isis-mapping-server prefix-segment-range ldp-lo0s start-prefix 192.168.0.5 user@R2# set mapping-server-entry isis-mapping-server prefix-segment-range ldp-lo0s start-index 1000 user@R2# set mapping-server-entry isis-mapping-server prefix-segment-range ldp-lo0s size 2
この設定は、サンプルトポロジー内の両方のLDPデバイスループバックアドレスのマッピングブロックを作成します。R5のループバックにマッピングされた最初のセグメントID(SID)インデックスは
1000です。サイズ2を指定すると、SIDインデックス10001がR6のループバックアドレスにマッピングされます。注:start-prefixとして使用されるIPアドレスは、LDPネットワーク内のデバイスのループバックアドレスです(この例ではR5)。完全接続するには、LDPルーターのすべてのループバックアドレスをSRドメインにマッピングする必要があります。ループバックアドレスが連続している場合は、prefix-segment-rangeステートメントでこれを行うことができます。連続していないループバックでは、複数のマッピングステートメントを定義する必要があります。この例では連続したループバックを使用しているため、1つの
prefix-segment-rangeを上記に示します。ここでは、連続していないループバックアドレスを持つ2つのLDPルーターのケースを処理するためのプレフィックスマッピングの例を示します。[edit routing-options source-packet-routing] show mapping-server-entry map-server-name { prefix-segment-range lo1 { start-prefix 192.168.0.5/32; start-index 1000; size 1; } prefix-segment-range lo2 { start-prefix 192.168.0.10/32; start-index 2000; size 1; } } } -
次に、マッピングされたプレフィックスをフラッディングするのに使用される拡張LSPのISISサポートを設定します。
[edit protocols] user@R2# set isis source-packet-routing mapping-server isis-mapping-server
デバイスR2でマッピングサーバー設定がコミットされると、拡張プレフィックス範囲TLVがOSPFエリア全体にフラッディングされます。セグメントルーティング(R1、R2、R3)が可能なデバイスは、セグメントID(SID)インデックスを使用して、指定されたループバックアドレス(この例ではR5とR6)のISISセグメントルーティングルートをインストールします。SIDインデックスは、セグメントルーティングデバイスによって
mpls.0ルーティングテーブルでも更新されます。 -
SRMC機能を有効にします。サンプルトポロジーでは、R4でSRMC機能を有効にする必要があります。
[edit protocols] user@R4# set ldp sr-mapping-client
デバイスR4でマッピングクライアント設定がコミットされると、SRノードIDとラベルブロックはエグレスFECとしてルーターR5にアドバタイズされ、そこからR6にアドバタイズされます。
Junos OS 17.4R1で、ISISでのセグメントルーティングとLDPネクストホップのステッチのサポートが開始されました。
Unsupported Features and Functionality for Interoperability of Segment Routing with LDP using ISIS
-
ラベルバインディングTLVの最後から2番目のホップポッピング動作はサポートされていません。
-
ラベルバインディングTLVのプレフィックス範囲のアドバタイズはサポートされていません。
-
セグメントルーティングの競合解決はサポートされていません。
-
LDPトラフィック統計は機能しません。
-
NSR(ノンストップアクティブルーティング)とGRES(グレースフルルーティングエンジンスイッチオーバー)はサポートされていません。
-
ISIS階層間はサポートされていません。
-
RFC 7794、 拡張IPv4のIS-ISプレフィックス属性 はサポートされていません。
-
ステッチノードでのプレフィックスSIDとしてのLDPルートの再配布はサポートされていません。