Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

MPLS の共有リスク リンク グループ

SRLG の概要

MPLSトラフィックエンジニアリングでは、共有リスクリンクグループ(SRLG)は、共通リソースを共有するリンクのセットであり、共通リソースに障害が発生した場合、セット内のすべてのリンクに影響を与えます。これらのリンクは同じ障害リスクを共有するため、同じSRLGに属していると見なされます。例えば、共通のファイバーを共有するリンクは、ファイバーに障害が発生するとグループ内のすべてのリンクに障害が発生する可能性があるため、同じSRLG内にあると言われます。

SRLGは、IGP(OSPFv2およびIS-IS)ドメイン内で一意の32ビット数で表されます。リンクは複数のSRLGに属している場合があります。ラベルスイッチパス(LSP)内のパスのSRLGは、パス内のすべてのリンクに対するSRLGのセットです。LSP のセカンダリ パスを計算する場合、プライマリ パスとセカンダリ パスの SRLG が不ジョイントの場合に備えて、セカンダリ パスとプライマリ パスに共通のリンクがないようにパスを見つけることが望ましいです。これにより、特定のリンク上の単一障害点によって、LSP のプライマリ パスとセカンダリ パスの両方がダウンすることはありません。

SRLG が設定されている場合、デバイスは CSPF(制約付き最短パス ファースト)アルゴリズムを使用し、プライマリ パスとセカンダリ パスに使用されるリンクを相互に排他的に保ちます。プライマリパスがダウンした場合、CSPFアルゴリズムは、プライマリパスとSRLGを共有するリンクを回避しようとしてセカンダリパスを計算します。さらに、バイパスLSPのパスを計算する際、CSPFは保護されたリンクとSRLGを共有するリンクを避けようとします。

SRLG が設定されていない場合、CSPF はセカンダリ パスを計算する際にリンクのコストのみを考慮に入れます。

リンクSRLG情報の変更があった場合、IGPは新しいリンクSRLG情報のLSP更新を送信するようにトリガーされます。CSPF は、次の再最適化ラウンドでパスを再計算します。

Junos OSリリース11.4以降は、以下のRFCに基づいてSRLGをサポートします。

  • RFC 4203、 GMPLS(汎用マルチプロトコルラベルスイッチング)をサポートするOSPF拡張

  • RFC 5307、 GMPLS(汎用マルチプロトコルラベルスイッチング)をサポートするIS-IS拡張

注:

現在はSRLG機能で「運命共有」機能が引き続きサポートされている。

例:SRLG の設定

この例では、デバイス上で共有リスクリンクグループ(SRLG)を設定する方法を示します。

要件

この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。

  • MXシリーズルーター

  • すべてのデバイスで実行されている Junos OS リリース 11.4 以降

概要

Junos OSリリース11.4以降は、IGP(OSPFv2およびIS-IS)ドメインでのSRLG設定をサポートしています。この例では、SRLGを設定し、デバイス上のMPLSインターフェイスに関連付けます。

デバイスは、CSPF(制約付き最短パス ファースト)アルゴリズムに SRLG コスト パラメータを使用し、プライマリ パスと SRLG を共有するリンクを回避することで、プライマリ パスとセカンダリ パスに使用されるリンクを相互に排他的に保つようにします。

SRLGを設定するには、まず [edit routing-options srlg srlg-name] 階層レベルでSRLGパラメーターを定義し、次に [edit mpls interface interface-name] 階層レベルでSRLGをMPLSインターフェイスに関連付けます。

srlg srlg-name ステートメントには、以下のオプションがあります。

  • srlg-cost—1〜65535の範囲のSRLGのコストを含めます。SRLG のコストによって、この SRLG がパス計算用の CSPF アルゴリズムに与える影響のレベルが決まります。コストが高いほど、セカンダリパスがプライマリパスと同じSRLGを共有する可能性は低くなります。デフォルトでは、 srlg-cost は1です。

  • srlg-value—1から4294967295の範囲のSRLGのグループIDを含めます。

この例では:

  • PE1はingressルーターで、PE2はegressルーターです。

  • P1、P2、およびP3、P4、およびP5はトランジットルーターです。

    • P1は、PE1イングレスルーターとPE2エグレスルーターの両方への直接プライマリパス接続を持っています。

    • P2は、PE1およびPE2への直接セカンダリパス接続を持っています。

    • P3には、PE1への直接セカンダリパス接続と、P4およびP5を経由してPE2への間接セカンダリパスがあります。

    • P4には、PE1からP3、およびPE2からP5への間接的なセカンダリパスがあります。

    • P5 には、P4 と P3 を経由して PE1 に至る間接パスと、PE2 への直接セカンダリ パスがあります。

OSPFは、内部ゲートウェイプロトコル(IGP)としてすべてのルーターで設定されています。SRLGは7つのルーターすべてに設定されています。プライマリパスには、SRLG srlg-aが含まれます。スタンバイセカンダリパスの場合、リンクP2>PE2はSRLG srlg-aに属します。有効なリンクメトリックには、 srlg-cost が10を加えると11になります。したがって、計算されるセカンダリパスは、CSPFリンクメトリックが4のPE1>P3>P4>P5>PE2となります。

トポロジー

Network topology diagram with nodes P1 to P5. Solid lines are primary paths; dashed lines are secondary paths. Explains routing protocols.

設定

CLIクイックコンフィグレーション

この例のセクションをすばやく設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、コマンドを [edit] 階層レベルのCLIにコピー アンド ペーストします。

ルーターPE1

ルーターP1

ルーターP2

ルーターP3

ルーターP4

ルーターP5

ルーターPE2

手順

ステップバイステップの手順

次の例では、設定階層のさまざまなレベルに移動する必要があります。CLI のナビゲーションについては、 Junos OS CLI ユーザーガイドを参照してください。

ingressルーターPE1を設定するには:

  1. デバイスインターフェイスを設定します。

  2. インターフェイスに OSPF を設定します。

  3. SRLG 定義を設定します。

  4. MPLSとLSPを設定します。

  5. インターフェイスでRSVPを有効にします。

結果

設定モードから、 show interfacesshow protocols ospfshow routing-optionsshow protocols mplsshow protocols rsvp コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。

デバイスの設定が完了したら、設定モードから commit を入力します。

注:

各ルーターの適切なインターフェイス名、アドレス、およびその他のパラメータを変更した後、IGPドメイン内のすべてのジュニパーネットワークスルーターに対してこの手順を繰り返します。

検証

設定が正常に機能していることを確認します。

SRLG 定義の検証

目的

SRLG から値へのマッピングと SRLG コストを検証します。

アクション

TE-Link SRLG の検証

目的

トラフィック制御リンクSRLGの関連付けを確認します。

アクション
意味

リンクP1-PE2とP2-PE2は、SRLG srlg-aに関連付けられています。

スタンバイセカンダリパスの検証

目的

SRLG リンク コストと、スタンバイ セカンダリ パス リンクの CSPF 計算への影響を確認します。

アクション
意味

スタンバイセカンダリパスを確認します。P2>PE2の実効リンクコストは11です( srlg-cost は10)。CSPF は、セカンダリ パスを PE1>P3>P4>P5>PE2 として計算し、CSPF リンク メトリックは 4 です。

CSPF パス選択用の RSVP-TE SRLG ホールドダウン

SRLGホールドダウンメカニズムにより、RSVP-TE LSPを計算する際に、CSPFが最近不安定になったネットワークリソースを回避できます。

共有リスクリンクグループ(SRLG)ホールドダウンメカニズムにより、RSVP-TEラベルスイッチパス(LSP)を計算する際に、制限付き最短パスファースト(CSPF)で最近不安定になったネットワークリソースを回避できます。

SRLGに関連付けられたリンクでリンクダウンイベントが発生すると、設定可能な期間、SRLGはホールドダウン状態になります。この期間中、CSPF は次のいずれかによってその SRLG に属するリンクを望ましくないものとして扱います。

  • TEメトリックにSRLGコストを追加してSRLG内のリンクにペナルティを与える、または

  • SRLG 内のリンクを CSPF パス計算から完全に除外します。

1つのリンクには、複数のSRLGを関連付けることができます。リンクに障害が発生すると、リンクに関連するすべてのSRLGがホールドダウン状態に入ります。SRLG 内のリンクがダウンした場合、同じ SRLG 内の他のリンクは、共通の基盤リソースを共有するため、危険があると見なされます。このため、参加しないよう特別に設定されたリンクを除き、そのSRLG内のすべてのリンクにホールドダウンが適用されます。

この機能により、ネットワークは、可能な限りパスの可用性を維持しながら、障害が繰り返し発生するリソースからトラフィックを回避することができます。

SRLGホールドダウンのメリット

SRLG ホールドダウンには、次のメリットがあります。

  • 障害発生後、CSPF が不安定なリンクを直ちに再利用しないようにします。

  • LSP の安定性が向上し、パス チャーンが減少します。

  • 必要に応じて、不安定なSRLGを厳密に回避します。

SRLGホールドダウン動作

このセクションでは、SRLG ホールドダウン イベントの動作動作について説明します。

リンク障害検知

SRLGホールドダウンは、SRLGに属するリンクでリンク障害が検出されるたびにトリガーされます。リンクがダウンすると、SRLG はホールドダウン状態になり、CSPF は代替パスを再計算します。ホールドダウンは、設定された間隔だけアクティブなままです。

ホールドダウン中

SRLG がホールドダウン状態にある場合、CSPF は次の 2 つのモードのいずれかで動作できます。

  • メトリックペナルティモード(デフォルト)—CSPFは、CSPFパス計算の実際のメトリックとして、影響を受けるリンクのTEメトリックに設定可能なSRLGコスト(srlg-cost)を追加します。次に例を示します。

    リンクは引き続き利用可能ですが、CSPF パス選択中に優先されなくなります。このアプローチにより、パスの実現可能性を維持しながら、トラフィックを不安定なリソースから遠ざけることができます。

  • 除外モードexclude-srlg ステートメントが設定されていて、SRLGでリンクダウンイベントが発生すると、SRLGはホールドダウン状態に入ります。SRLG で影響を受けるリンクは、CSPF パス計算中は除外されます。この除外により、不安定なSRLGが厳密に回避されます。

既存のSRLG制約との相互作用

SRLGホールドダウンは、既存のSRLGベースのCSPFメカニズムに加えて動作します。

  • 高速リルート(FRR)バイパス計算

  • 既存のCSPF除外ポリシー

複数のメカニズムがパス選択に影響を与える場合、除外がメトリックペナルティよりも優先されます。

SRLG ホールドダウン設定

SRLGホールドダウン機能を有効にするには、[edit protocols mpls srlg-hold-down]階層レベルのグローバルレベルでSRLGホールドダウンポリシーを設定する必要があります。[edit routing-options srlg srlg-name] 階層レベルで個々の SRLG ホールドダウンを有効にできます。個々のSRLGホールドダウン設定を有効にするには、グローバルなSRLGホールドダウン設定が必要です。

SRLG ホールドダウン設定は、デフォルトで無効になっています。SRLG ホールドダウンを有効にすると、特に指定がない限り、すべての SRLG が参加します。

グローバルレベルでは、[edit protocols mpls srlg-hold-down] 階層レベルで以下の SRLG ホールドダウン設定オプションを使用できます。

  • exclude-all- すべてのSRLGをホールドダウンから除外します。 include で明示的に設定されたSRLGのみが参加します。

  • cost—SRLGコストが明示的に設定されていないSRLGに適用されるデフォルトのペナルティを指定します。範囲は1〜65535です。デフォルトは1です。

  • interval—すべてのSRLGのホールドダウン時間を指定します。範囲は1〜4294967295秒です。デフォルトは10秒です。

  • no-extend- ホールドダウンタイマーの自動延長を無効にします。デフォルトでは、後続のトリガーによって有効期限が延長されます。

  • exclude-srlg—SRLG がホールドダウン状態のときに、SRLG に関連するリンクを除外するように CSPF に指示します。

  • no-log—新しいSRLGホールドダウンイベントのsyslogメッセージ生成を防止します。SRLG 関連イベントが頻繁に発生するネットワークにおいて、ロギングのオーバーヘッドを削減し、過剰なメッセージ生成を防ぎます。

個々のSRLGレベルで、[edit routing-options srlg srlg-name]階層レベルで以下のSRLGホールドダウン設定オプションを使用できます。

注:個々のSRLGホールドダウン設定は、グローバルなSRLGホールドダウン設定よりも上書きされます。
  • srlg-cost srlg-cost- ホールドダウン中に適用されるコストを指定します。範囲は1〜65535です。

  • srlg-value srlg-value—SRLG 識別子を指定します。範囲は1〜4294967295です。

  • srlg-hold-down-exclude- SRLGをホールドダウン処理から除外します。

  • srlg-hold-down-include- ホールドダウン処理にSRLGを含めます。通常、グローバル構成で exclude-all と一緒に使用されます。

  • srlg-hold-down-interval- グローバル SRLG ホールドダウン時間を上書きします。

設定例例

以下は、グローバルおよび個々の SRLG レベルでの SRLG ホールドダウン設定例の例です。

グローバルレベルでのSRLGホールドダウン設定:

個々のSRLGレベルでのSRLGホールドダウン設定:

検証

show mpls srlgおよびshow mpls srlg detailコマンドを使用して、SRLG名、値、コスト、ホールドダウン状態、インターバルの詳細を表示できます。