LSP ルーター
LSP 内のルーター
LSP の各ルーターは、以下のいずれかの機能を実行します。
イングレスルーター—LSPの先頭にあるルーター。このルーターは、IP パケットを MPLS レイヤー 2 フレームでカプセル化し、パス内の次のルーターに転送します。各 LSP に設定できるイングレス ルーターは 1 つだけです。
エグレス ルーター — LSP の最後にあるルーター。このルーターは、MPLS カプセル化を削除し、MPLS パケットから IP パケットに変換し、IP 転送テーブルの情報を使用してパケットを最終宛先に転送します。各 LSP に設定できるエグレス ルーターは 1 つだけです。LSPのイングレスルーターとエグレスルーターは、同じルーターにすることはできません。
トランジット ルーター — イングレス ルーターとエグレス ルーター間の LSP 内の中間ルーター。トランジット ルーターは、受信した MPLS パケットを MPLS パスの次のルーターに転送します。LSP には、1 つの LSP に 0 台以上のトランジット ルーター(最大 253 台のトランジット ルーター)を含めることができます。
単一ルーターは、複数の LSP の一部となる可能性があります。1 つ以上の LSP のイングレス ルーターまたはエグレス ルーターにすることも、1 つ以上の LSP のトランジット ルーターにすることもできます。各ルーターがサポートする機能は、ネットワーク設計によって異なります。
LSPのイングレスおよびエグレスルーターアドレスの設定
以下のセクションでは、LSPのイングレスルーターとエグレスルーターのアドレスを指定する方法について説明します。
LSPのイングレスルーターアドレスの設定
ローカルルーターは常に、LSPの始まりであるイングレスルーターと見なされます。ソフトウェアは、LSP の次のルーターへの到達に使用する適切な発信インターフェイスと IP アドレスを自動的に決定します。
デフォルトでは、ルーターIDがイングレスルーターのアドレスとして選択されます。送信元アドレスの自動選択を上書きするには、 ステートメントで送信元アドレスを from
指定します。
from address;
以下の階層レベルでこのステートメントを含めることができます。
[edit protocols mpls label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
LSP で使用される発信インターフェイスは、設定した送信元アドレスの影響を受けません。
LSPのエグレスルーターアドレスの設定
LSPを設定する場合、 ステートメントを含めてエグレスルーターのアドレスを指定する to
必要があります。
to address;
以下の階層レベルでこのステートメントを含めることができます。
[edit protocols mpls label-switched-path lsp-name]
[edit protocols mpls static-label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls static-label-switched-path lsp-name]
シグナル化された LSP を設定する場合、 to
ステートメントは唯一必要なステートメントです。その他のステートメントはすべてオプションです。
LSP が確立されると、エグレス ルーターのアドレスがルーティング テーブルのホスト ルートとしてインストールされます。その後、このルートをBGPがトラフィックを転送するために使用できます。
ソフトウェアがLSPを介してBGPトラフィックを送信するために、エグレスルーターのアドレスはBGPネクストホップのアドレスと同じです。エグレスルーターのアドレスは、ルーターのインターフェイスアドレスのいずれかまたはBGPルーターIDとして指定できます。異なるアドレスを指定した場合、アドレスが同じルーター上にある場合でも、BGP トラフィックは LSP を介して送信されません。
BGPネクストホップのアドレスを決定するには、 コマンドを show route detail
使用します。LSP の宛先アドレスを確認するには、 コマンドを show mpls lsp
使用します。ルートがLSPを通過したかどうかを確認するには、 または show route forwarding-table
コマンドをshow route
使用します。これらの最後の2つのコマンドの出力では、ルートに label-switched-path
含まれているor push
キーワードは、LSPを通過したことを示しています。また、 コマンドを traceroute
使用して、ルートがリードする実際のパスをトレースします。これは、ルートがLSPを通過したかどうかも示しています。
また、ルートのネクストホップアドレスを設定するBGPインポートポリシーフィルターを定義することで、BGPネクストホップのアドレスを操作することもできます。
ルーティングテーブルへのエグレスルーターアドレスの追加防止
すべてのLSPに 対して ステートメントを to
使用してアドレスを設定する必要があります。このアドレスは、常に inet.3 または inet.0 ルーティング テーブルのプレフィックスとして /32
インストールされます。ステートメントを使用して設定されたエグレスルーターアドレスが to
、 ステートメントを含めることで、inet.3およびinet.0ルーティングテーブルに no-install-to-address
追加されないようにすることができます。
inet.3およびinet.0ルーティングテーブルにステートメントアドレスをインストール to
しない理由には、以下のものがあります。
セカンダリ ループバック アドレス向けのトラフィックに、制限付き最短パス ファースト(CSPF)RSVP LSP をマッピングすることを許可します。ステートメントを含むRSVPトンネルを
no-install-to-address
設定し、後でポリシーをinstall pfx/ <active>
設定した場合、以下を実行できます。トラフィックに影響を与えることなく、LSP が正しく設定されていることを確認します。
LSP へのトラフィックを段階的にマッピングします。
トラブルシューティングが完了したら、 ステートメントを削除
no-install-to-address
して、宛先ループバックアドレス(BGPネクストホップ)にトラフィックをマッピングします。
CCC接続がIPトラフィックを失うことを防止します。LSPが接続に属していないと判断した場合、inet.3ルーティングテーブルに ステートメントで
to
指定されたアドレスをインストールします。その後、IPトラフィックがCCCリモートエンドポイントに転送され、一部のタイプのPICに障害が発生する可能性があります。
ステートメントを使用して to
設定されたエグレスルーターアドレスがinet.3およびinet.0ルーティングテーブルに追加されないようにするには、 ステートメントを no-install-to-address
含めます。
no-install-to-address;
以下の階層レベルでこのステートメントを含めることができます。
[edit protocols mpls label-switched-path lsp-name]
[edit protocols mpls static-label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls static-label-switched-path lsp-name]
MPLS シグナル化 LSP 用のイングレス ルーターの設定
MPLS 信号のラベルスイッチ パス(LSP)は、特定のイングレス ルーターから特定のエグレス ルーターまで実行されます。基本的な MPLS シグナル化 LSP 機能では、イングレス ルーターを設定する必要がありますが、他のルーターを設定する必要はありません。
シグナル化された LSP を設定するには、イングレス ルーターで以下のタスクを実行します。
名前付きパスの作成
シグナル付き LSP を設定するには、まずイングレス ルーターに 1 つ以上の名前付きパスを作成する必要があります。パスごとに、パス内の一部またはすべてのトランジットルーターを指定するか、空のままにすることができます。
各パス名には最大 32 文字を含め、文字、数字、ピリオド、ハイフンを含めることができます。名前は、イングレスルーター内で一意である必要があります。名前付きパスが作成されると、 または secondary
ステートメントで指定されたパスをprimary
使用して、 階層レベルで LSP を[edit protocols mpls label-switched-path label-path-name]
設定できます。任意の数の LSP に同じ名前付きパスを指定できます。
LSPがRSVPセッションのプライマリパスまたはセカンダリパスに関連付けられているかどうかを確認するには、 コマンドを show rsvp session detail
発行します。
空のパスを作成するには、以下のステートメント形式を含めて名前付きパスを path
作成します。この形式の path
ステートメントは空で、イングレスルーターとエグレスルーター間のパスが受け入れられます。実際には、使用するパスは、宛先ベースのベストエフォート型トラフィックが続いているのと同じパスになりがちです。
path path-name;
以下の階層レベルでこのステートメントを含めることができます。
[edit protocols mpls]
[edit logical-systems logical-system-name protocols mpls]
パスの一部またはすべてのトランジットルーターを指定するパスを作成するには、各トランジットルーターに1つのアドレスを path
指定するステートメントの次の形式を使用します。
path path-name { (address | hostname) <strict | loose>; }
以下の階層レベルでこのステートメントを含めることができます。
[edit protocols mpls]
[edit logical-systems logical-system-name protocols mpls]
この形式の path
ステートメントでは、1 つ以上のトランジット ルーター アドレスを指定します。イングレスルーターまたはエグレスルーターの指定はオプションです。各トランジット ルーターのアドレスまたはホスト名を指定できますが、そのタイプが の場合は loose
各トランジット ルーターをリストする必要はありません。アドレスを順番に指定し、イングレス ルーター(オプション)または最初のトランジット ルーターから始まり、エグレス ルーター(オプション)またはルーターまでのパスをエグレス ルーターの直前まで順次続行します。ルーターホップごとに1つのアドレスのみを指定する必要があります。同じルーターに複数のアドレスを指定した場合、最初のアドレスのみが使用されます。追加のアドレスは無視され、切り捨てられます。
ルーターアドレスごとに、タイプを指定します。タイプは次のいずれかになります。
strict
—(デフォルト)以前のルーターからこのルーターに取得したルートは直接パスであり、他のルーターを含めることはできません。インターフェイスアドレスの場合address
、このルーターは、受信インターフェイスが指定されたインターフェイスであることを保証します。受信インターフェイスが指定されたものであることを確認することは、以前のルーターとこのルーターの間にパラレルリンクがある場合に重要です。また、リンクごとにルーティングを適用することもできます。ストリクトアドレスの場合、設定するルーターの直前のルーターがそのルーターに直接接続されていることを確認する必要があります。このアドレスはループバックインターフェイスアドレスとなり、受信インターフェイスはチェックされません。
loose
前のルーターからこのルーターへのルートは、直接パスである必要はありません。他のルーターを含めることができ、どのインターフェイスでも受信できます。アドレスには、任意のインターフェイス アドレスまたはループバック インターフェイスのアドレスを指定できます。
例:名前付きパスの作成
、 を設定して、to-hastings
イングレスからエグレスルーターへの完全なストリクトパスを10.14.1.1
10.13.1.1
10.12.1.1
10.11.1.1
、 をその順序で指定します。指定されたもの以外の中間ルーターは存在しません。ただし、エグレスルーターはステートメントに特に記載されていないため、エグレスルーターとの間 10.11.1.1
に中間ルーターが path
存在する可能性があります。エグレスの前に中間ルーターを防止するには、タイプでエグレスルーターを strict
最後のルーターとして設定します。
[edit protocols mpls] path to-hastings { 10.14.1.1 strict; 10.13.1.1 strict; 10.12.1.1 strict; 10.11.1.1 strict; }
と 10.14.1.1
の間に任意の数の中間ルーターを許可するパスalt-hastings
を作成します10.11.1.1
。さらに、エグレス ルーターとの間 10.11.1.1
では、中間ルーターが許可されています。
[edit protocols mpls] path alt-hastings { 10.14.1.1 strict; 10.11.1.1 loose; }
フェイト シェアリングを使用した代替バックアップ パスの設定
CSPF(制限付き最短パス ファースト)がプライマリ パスが不安定になった場合に備えて、1 つ以上のバックアップ パスの計算に使用する情報のデータベースを作成できます。データベースには、ルーターやリンクなど、ネットワーク要素間の関係が記述されています。これらのネットワーク要素は同じ運命を共有するため、この関係はフェイト シェアリングと呼ばれます。
バックアップ パスを設定して、共有リンクとファイバー パスの数をできるだけ最小限に抑えて、ファイバーを切断した場合に最小量のデータが失われ、パスがまだ宛先に存在することを確認できます。
バックアップ パスが最適に動作するためには、プライマリ パスとリンクや物理ファイバー パスを共有してはなりません。これにより、単一障害点が同時にプライマリ パスとバックアップ パスに影響を与えることはありません。
次のセクションでは、フェイト シェアリングの構成方法と CSPF への影響について説明し、フェイト シェアリングの構成例を示します。
フェイト シェアリングの設定
フェイト シェアリングを設定するには、 ステートメントを fate-sharing
含めます。
fate-sharing { group group-name { cost value; from address <to address>; } }
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要セクションを参照してください。
フェイトシェアリンググループには、それぞれ長さは最大32文字で、文字、数字、ピリオド(.)、ハイフン(-)を含めることができます。最大 512 グループを定義できます。
フェイトシェアリンググループには、3種類のオブジェクトが含まれています。
ポイントツーポイント リンク—リンクの各端にある IP アドレスによって識別されます。番号なしポイントツーポイント リンクは、通常、他のインターフェイスから IP アドレスを借りることで識別されます。順序は重要ではありません。
from 10.1.3.4 to 10.1.3.5
同from 10.1.3.5 to 10.1.3.4
じ意味を持ちますポイントツーポイント リンク-LAN インターフェイス(ギガビット イーサネット インターフェイスなど)または NBMA(Nonbroadcast Multiaccess)インターフェイス(ATM(非同期転送モード)やフレーム リレーなど)上のリンクを含めます。これらのリンクは、個々のインターフェイスアドレスによって識別します。例えば、LANインターフェイス
192.168.200.0/24
に4つのルーターが接続されている場合、各ルーターリンクは個別に識別されます。from 192.168.200.1; # LAN interface of router 1 from 192.168.200.2; # LAN interface of router 2 from 192.168.200.3; # LAN interface of router 3 from 192.168.200.4; # LAN interface of router 4
アドレスは、任意の順序で一覧表示できます。
ルーターノード—設定されたルーターIDで識別されます。
グループ内のすべてのオブジェクトは、特定の類似点を共有します。たとえば、同じファイバー導管を共有するすべてのファイバー、同じファイバーを共有するすべての光チャネル、同じ LAN スイッチに接続するすべてのリンク、同じ電源を共有するすべての機器のグループを定義できます。すべてのオブジェクトは、/32 ホスト アドレスとして扱われます。
グループが意味を持つには、少なくとも 2 つのオブジェクトを含める必要があります。ゼロまたは1つのオブジェクトでグループを設定できます。これらのグループは処理中に無視されます。
オブジェクトは任意の数のグループにすることができ、グループには任意の数のオブジェクトを含めることができます。各グループには、構成可能なコストが属性付けされており、このグループが CSPF 計算に与える影響のレベルを表します。コストが高いほど、バックアップ パスがグループ内の任意のオブジェクトのプライマリ パスと共有される可能性は低くなります。コストはトラフィック制御メトリックと直接比較できます。デフォルトでは、コストは1です。フェイト シェアリング データベースを変更しても、CSPF が次に再最適化されるまで確立された LSP には影響しません。フェイトシェアリングデータベースは、高速再ルート計算に影響を与えます。
CSPF に対する影響
CSPF は、LSP のプライマリ パス(またはプライマリ パスがアクティブでない場合はセカンダリ パス)を計算する場合、フェイトシェアリング情報を無視します。常に、プライマリ パスに最適なパス(最小 IGP コスト)を見つける必要があります。
CSPF が(同じ LSP の)プライマリ パスがアクティブな状態でセカンダリ パスを計算すると、以下が発生します。
CSPF は、プライマリ パスに関連付けられているすべてのフェイト シェアリング グループを特定します。CSPF は、プライマリ パスが通過するすべてのリンクとノードを識別し、少なくとも 1 つのリンクまたはノードを含むグループ リストをコンパイルすることでこれを行います。CSPF は検索のイングレス ノードとエグレス ノードを無視します。
CSPF は、トラフィック制御データベース内の各リンクをコンパイルされたグループ リストと照合します。リンクがグループのメンバーである場合、そのリンクのコストはグループのコストによって増加します。リンクが複数のグループのメンバーである場合、すべてのグループコストが一緒に追加されます。
CSPF は、イングレスノードとエグレスノードを除く、トラフィック制御データベース内のすべてのノードのチェックを実行します。繰り返しになりますが、ノードは複数のグループに属できるので、コストは追加されます。
ルーターは、調整されたトポロジーで通常の CSPF 計算を実行します。
バイパス LSP とのフェイト シェアリングにおける CSPF への影響
リンク保護またはリンクノード保護でフェイトシェアリングが有効になっている場合、CSPFはバイパスLSPパスを計算する際に以下のように動作します。
CSPF は、プライマリ LSP パスに関連付けられているフェイトシェアリング グループを特定します。CSPFは、バイパスが保護しようとしているすぐにダウンストリームリンクとすぐにダウンストリームノードを識別することで、これを行います。CSPF は、直接ダウンストリーム リンクとすぐにダウンストリーム ノードを含むグループ リストをコンパイルします。
CSPF は、トラフィック エンジニアリング データベース内の各リンク(イングレスからダウンストリーム ノードまで)をコンパイル済みのグループ リストと照合します。リンクがグループのメンバーである場合、そのリンクのコストはグループのコストによって増加します。
CSPF は、フェイト共有パスにないダウンストリーム リンクを特定します。
この計算により、有効な代替手段が利用可能な場合、バイパスがプライマリ LSP パスと同じ物理リンクを使用することを防ぎます。
例:フェイト シェアリングの設定
フェイト シェアリング グループ east
と を構成します west
。west
オブジェクトがないため、処理中には無視されます。
[edit routing-options] fate-sharing { group east { cost 20; # Optional, default value is 1 from 10.1.3.4 to 10.1.3.5; # A point-to-point link from 192.168.200.1; # LAN interface from 192.168.200.2; # LAN interface from 192.168.200.3; # LAN interface from 192.168.200.4; # LAN interface from 10.168.1.220; # Router ID of a router node from 10.168.1.221; # Router ID of a router node } group west { ..... } }
MPLS シグナル化 LSP の中間ルーターとエグレス ルーターの設定
MPLS に参加する必要があるすべての MPLS ルーターでシグナル化 LSP を設定するには、これらのルーターで MPLS と RSVP を有効にする必要があります。
イングレスルーターとエグレスルーター間の接続を設定する
イングレスルーターは、プライマリパスを使用してエグレスルーターに接続して再接続しようと試みます。イングレスルーターがプライマリパスを使用して接続を確立しようとしている頻度と、再試行の間の待機時間を制御できます。
再試行タイマーは、プライマリパスを使用してエグレスルーターに再度接続しようとする前に、イングレスルーターが待機する時間を設定します。デフォルトの再試行時間は30秒です。時間は1~600秒です。この値を変更するには、 ステートメントを retry-timer
含めます。
retry-timer seconds;
このステートメントは、以下の階層レベルで設定できます。
[edit protocols mpls label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
デフォルトでは、イングレスルーターがプライマリパスを使用してエグレスルーターへの接続の確立または再確立を試みる回数には制限はありません。試行回数を制限するには、 ステートメントを retry-limit
含めます。
retry-limit number;
このステートメントは、以下の階層レベルで設定できます。
[edit protocols mpls label-switched-path lsp-name]
[edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
上限は最大 10,000 の値です。再試行の制限を超えた場合、パス接続の確立を試みる回数はこれ以上ありません。この時点で、プライマリパスを再起動するには、介入が必要です。
再試行の上限を設定した場合、成功したプライマリ パスが作成されるたびに 1 にリセットされます。
LSP の ping
以下のセクションでは、 コマンドを使用してLSPの ping mpls
機能を確認する方法について説明します。
- MPLS LSP の Ping
- ポイントツーマルチポイント LSP の Pinging
- MPLS LSP のエンドポイント アドレスに ping を実行する
- CCC LSP の pinging
- レイヤー 3 VPN の Pinging
- RFC 4379 に基づく LSP Ping および Traceroute コマンドのサポート
MPLS LSP の Ping
特定の LSP に ping を実行できます。エコー要求は MPLS パケットとして LSP を介して送信されます。ペイロードは、127/8 範囲(デフォルトでは 127.0.0.1、このアドレスは構成可能)およびポート 8503 のアドレスに転送されるユーザー データグラム プロトコル(UDP)パケットです。この情報を MPLS パケットとして構築および送信するためのラベルとインターフェイス情報は、標準的な LSP トラフィックの場合と同じです。
エコー要求がエグレス ノードに到着すると、受信者はパケットの内容を確認し、UDP を使用して正しい戻り値を含む応答を送信します。エコー要求を送信するルーターは、2秒のタイムアウト後にエコー応答を受信するのを待ちます(この値は設定できません)。
リモート ルーター上の [edit protocols mpls]
階層レベルで MPLS を設定して、そこで終端する LSP に ping を実行できるようにする必要があります。LDP 転送等価クラス(FEC)のみに ping を実行する場合でも、MPLS を設定する必要があります。
MPLS LSP に ping を実行するには、 コマンドを ping mpls <count count> <ldp <fec>> <rsvp <exp forwarding-class> <lsp-name>>
使用します。セカンダリ MPLS LSP に ping を実行するには、 コマンドを ping mpls <count count> <rsvp <lsp-name>> standby path-name
使用します。このコマンドの詳細な説明については、 CLIエクスプローラーを参照してください。
ping mpls
コマンドは、ルーティングインスタンス内ではサポートされていません。
Self-ping はマスター インスタンスでサポートされており、CCC で使用される VLAN ベース LSP または LSP ではサポートされていません。このメッセージは各 LSP に対して表示され、設定の可読性が低下します。
ポイントツーマルチポイント LSP の Pinging
ポイントツーマルチポイント LSP に ping を実行するには、 または ping mpls rsvp egress address
コマンドをping mpls rsvp lsp-name multipoint
使用します。コマンドは ping mpls rsvp lsp-name multipoint
、すべてのエグレス ルーター識別子のリストと、ポイントツーマルチポイント LSP エグレス ルーターの現在のステータスを返します。コマンドは ping mpls rsvp lsp-name multipoint egress address
、指定されたエグレス ルーターの現在のステータスを返します。
MPLS LSP のエンドポイント アドレスに ping を実行する
2 つの PE(プロバイダ エッジ)ルーター間の LSP が稼働しているかどうかを確認するには、LSP のエンドポイント アドレスに ping を実行します。MPLS LSP エンドポイントに ping を実行するには、 コマンドを ping mpls lsp-end-point address
使用します。このコマンドは、指定されたアドレスで終了するLSP(RSVPまたはLDP)のタイプと、そのLSPがアップまたはダウンしているかどうかを示します。
このコマンドの詳細な説明については、 CLIエクスプローラーを参照してください。
CCC LSP の pinging
特定の CCC LSP に ping を実行できます。CCC LSP ping コマンドは、MPLS LSP に使用されるコマンドと同じです。使用するコマンドは.ping mpls <count count> <rsvp <lsp-name>>
コマンドを使用して、セカンダリスタンバイCCC LSPに ping mpls <count count> <rsvp <lsp-name>> standby path-name
ping することもできます。
このコマンドの詳細な説明については、 CLIエクスプローラーを参照してください。
レイヤー 3 VPN の Pinging
同様のコマンド 、 を使用して、 ping mpls l3vpn vpn-name prefix prefix <count count>
レイヤー 3 VPN に ping を実行できます。このコマンドの詳細については、 ルーティングデバイス用Junos OS VPNライブラリ と CLIエクスプローラを参照してください。
RFC 4379 に基づく LSP Ping および Traceroute コマンドのサポート
Junos OSは、RFC 4379、 MPLS(マルチプロトコルラベルスイッチ)データプレーン障害の検出に基づいて、LSPping
とtraceroute
コマンドをサポートしています。
RFC 4379 に基づく LSP ping
と traceroute
コマンドは、MPLS TTL の有効期限に依存して LSP が取得したパスをトレースしようとします。LSPは、イングレスからエグレスまで複数のパスを取得できます。これは特に ECMP(Equal Cost Multipath)で発生します。LSPコマンドは、LSP traceroute
ノードへの可能なすべてのパスをトレースできます。