ISIS 手動隣接関係 SID

統合された Intermediate System-to-Intermediate System(IS-IS)の手動隣接関係 SID 機能は、手動でプロビジョニングされた隣接関係 SID に関する情報を提供します。

ISIS 手動隣接関係 SID の機能情報

次の表に、このモジュールで説明した機能に関するリリース情報を示します。この表は、ソフトウェア リリース トレインで各機能のサポートが導入されたときのソフトウェア リリースだけを示しています。その機能は、特に断りがない限り、それ以降の一連のソフトウェア リリースでもサポートされます。

プラットフォームのサポートおよびシスコ ソフトウェアイメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。Cisco Feature Navigator にアクセスするには、https://cfnng.cisco.com/に進みます。Cisco.com のアカウントは必要ありません。
表 1. ISIS 手動隣接関係 SID の機能情報

機能名

リリース

機能情報

ISIS 手動隣接関係 SID

Cisco IOS XE Amsterdam 17.3.2

統合された Intermediate System-to-Intermediate System(IS-IS)の手動隣接関係 SID 機能は、手動でプロビジョニングされた隣接関係 SID に関する情報を提供します。

この機能により、次のコマンドが追加されました。

adjacency-sid [absolute | index] <value> [protected]

を参照してください。

ISIS 手動隣接関係 SID に関する情報

セグメント ルーティング(SR)ネットワークでは、多くの場合、ネットワーク上で特定のトラフィックが通過するパスに影響を与えるために SR トラフィック エンジニアリング(SR-TE)を使用します。SR-TE トンネルはトンネル ヘッドで手動でプロビジョニングできますが、多くの場合、中央コントローラによって計算およびプロビジョニングされます。多くの場合ネットワークのオペレータは、トラフィックに特定のノードやリンクを経由させたいと考えます。

SR ネットワーク オペレータの特定のノードをトラフィックに経由させるために、ノードによってアドバタイズされるプレフィックス SID を使用できます。多くの場合、複数のノードが同じプレフィックス SID を共有する特定の場所を通過するようにトラフィックに強制するエニーキャスト プレフィックス SID が使用されます。

トラフィックに特定のリンク上を通過させるためには、隣接関係 SID(Adj-SID)が使用されます。既存の Adj-SID の実装の問題は、手動でプロビジョニングされたプレフィックス SID とは対照的に、動的に割り当てられた値であるということです。Adj-SID が動的に割り当てられているということは、一連の問題をもたらします。

  • この値は、リロードまたはプロセスの再起動に対して永続的ではありません。

  • この値は事前にわからないので、IGP によってフラッディングされた情報(ネイティブまたは BGP-LS)にアクセスしない限り、コントローラが使用することはできません。

  • 各リンクには一意の Adj-SID 値が割り当てられているため、複数のリンクで同じ Adj-SID を共有することはできません。

上記の問題に対処するために、adj-SID が拡張され、以下が可能になりました。

  • リロードと再起動に対して永続的な、手動でプロビジョニングされた adj-SID をサポートします。

  • 同じネイバーへの複数の隣接関係に対してプロビジョニングされる同じ adj-SID をサポートします。

  • 異なるネイバーへの複数の隣接関係にプロビジョニングされる同じ adj-SID をサポートします。

  • 1 つの隣接関係に対して複数の手動 Adj-SID を設定できます。

手動隣接関係 SID

新しい永続的な Adj-SID の要件をサポートするために、動的に割り当てられた Adj-SID に使用されている既存の IS-IS Adj-SID インフラストラクチャが拡張されます。新しい CLI コマンドも導入され、ポイントツーポイント リンクのために Adj-SID 値を手動で割り当てることができます。単一のポイントツーポイント インターフェイスで複数の Adj-SID をプロビジョニングできます。同じ Adj-SID を、同じまたは異なるネイバーにつながる複数のポイントツーポイント インターフェイスでプロビジョニングできます。

すべての手動 Adj-SID は、セグメント ルーティング ローカル ブロック(SRLB)と呼ばれるラベルの範囲から割り当てられます。デフォルトの SRLB の範囲は 15000 ~ 15999 です。

手動の Adj-SID は、インデックスまたは絶対値として設定できます。インデックスとして設定されている場合、絶対ラベルはインデックス + SRLB 開始ラベルとして計算されます。たとえば、56 を手動 Adj-SID のインデックスとして設定した場合、絶対ラベルは 15000 + 56 = 15056 になります。絶対値として設定されている場合、ラベル自体が絶対値になります。たとえば、56 を絶対手動 Adj-SID として設定した場合、絶対ラベルは 56 のみになります。ラベル(インデックスと絶対の両方)は、保護または非保護として設定できます。デフォルトでは、すべてのラベルは非保護です。

隣接関係 SID のアドバタイズメント

手動で設定された adj-SID は、ISIS SR 拡張機能の草案で定義される既存の ISIS adj-SID サブ TLV を使用してアドバタイズされます。S フラグは、同じ Adj-SID 値が複数のインターフェイスにプロビジョニングされている場合に adj-SID サブ TLV に設定されます。手動で設定された SID の場合、P フラグは常に設定されます。

プロビジョニングされた adj-SID がプロテクトとして設定済みの場合は、B フラグも設定されます。

隣接関係 SID は常にラベル値としてアドバタイズされます。adj-SID の設定にインデックスが使用されている場合でも、インデックスとしてはアドバタイズされません。

隣接関係 SID のフォワーディング

adj-SID の値が 1 つのインターフェイスでのみ設定される場合、ISIS は手動で割り当てられた adj-SID のフォワーディング エントリをインストールします。任意の Adj-SID のプライマリ パスは、Adj-SID が割り当てられているポイントツーポイント インターフェイス上の POP 操作です。割り当てられた adj-SID がバックアップの対象となり、バックアップ パスが利用可能であれば、IS-IS はバックアップ パスもプログラムします。Adj-SID のバックアップ パスは、ネイバー ルータ ID アドレスに対して計算されたバックアップ パスと同じです。

複数のリンクで同じ adj-SID 値が設定されている場合、次のような転送が発生します。

  • この値を使用して adj-SID が設定されている各リンクを経由して、POP 操作を含むプライマリ パスがインストールされます。

  • 各プライマリ パスについて、Adj-SID がプライマリ インターフェイスで保護されるように設定されていて、バックアップが利用可能な場合、バックアップ パスがインストールされます。バックアップ パスは、ネイバー ルータ ID アドレスに関連付けられたバックアップ パスとして表されます。

設定要件

  • セグメント ルーティングがグローバルに設定されていることを確認します。

  • セグメント ルーティングが IS-IS を使用して設定されていることを確認します。

手動隣接関係 SID の設定


Device#configure terminal 
Device(config)#interface ethernet0/1
Device(config-if)#isis adjacency-sid [absolute | index] <value> [protected]
 

[index]:(オプション)隣接関係 SID が SRLB 範囲のインデックスとして設定されている場合に使用されます。index キーワードが使用されていない場合、値はラベルの絶対値を表すことが期待されます。

[absolute]:(オプション)隣接関係 SID が絶対値として設定されている場合に使用されます。

<value>:adj-SID ラベルの値またはインデックスを表します。プログラムおよびアドバタイズされる adj-SID では、値/インデックスは有効な SRLB の範囲である必要があります。

[protected]:(オプション)手動の adj-SID を保護するために使用されます。デフォルトでは、手動 Adj-SID は保護されていません。

セグメント ルーティング ローカル ブロック(SRLB)範囲の変更

Device#configure terminal
Device(config)#segment-routing mpls 
Device(config-srmpls)#local-block 7000 7999

手動隣接関係 SID の確認

SR アプリ データベースでのラベルの確認

Device#show segment-routing mpls lb assigned-sids
Adjacency SID Database
 C=> In conflict
 S=> Shared
 R=> In range
SID  STATE       PROTOCOL     TOPOID      LAN      PRO NEIGHBOR    INTERFACE
15378 R
                 ISIS         0           N        N   10.0.0.3     Ethernet0/1

MPLS 転送でのラベルの確認


       Device# show mpls forwarding-table 
       Local      Outgoing        Prefix               Bytes Label      Outgoing        Next Hop
       Label      Label           or Tunnel Id         Switched         interface
       15378      Pop Label       0.0.60.18-A          0                Et0/0             10.0.0.2 == Configured only for interface e0/0

共有ラベルの確認


       Device# show mpls forwarding-table 
       Local      Outgoing       Prefix               Bytes Label      Outgoing        Next Hop
       Label      Label          or Tunnel Id         Switched         interface
       15378      Pop Label      0.0.60.18-A          0                Et0/0             10.0.0.2  == Same Label is configured for 2 interfaces
                  Pop Label      0.0.60.18-A          0                Et0/1             10.0.0.3  ==

ISIS LSP の確認


       Device# sh isis database verbose R1.00-00  
       xxxxxx
       xxxxxx
       Adjacency SID Value:15378 F:0 B:0 V:1 L:1 S:1 P:1 Weight:0 == P (Persistent) flag is always 1 if it is Manual Adj-SID
       xxxxxx

       P -> Persistent Flag (0 for Dynamic Adj-SID and 1 for Manual Adj-SID)
       S -> Shared Flag (1 if label is shared by multiple adjacencies)