このページで
LSP の基本設定
RSVP信号化MPLSラベルスイッチパス(LSP)のメトリックを設定する
LSPメトリックは、特定のLSPを介してトラフィックを送信する際の容易さまたは困難度を示すために使用されます。LSPメトリック値が低い(コストが低い)と、LSPが使用される可能性が高まります。反対に、LSPメトリック値が高い(コストが高い)と、LSPが使用される可能性が低くなります。
LSPメトリックは、次のセクションで説明するように、ルーターで動的に指定するか、ユーザーが明示的に指定することができます。
動的LSPメトリックを設定する
特定のメトリックが設定されない場合、LSPは同じ宛先(LSPのtoアドレス)に向かってIGPメトリックを追跡しようと試みます。IGPには、OSPF、IS-IS、ルーティング情報プロトコル(RIP)、および静的ルートが含まれます。BGPおよびその他のRSVPまたはLDPルートは除外されます。
例えば、ルーターに向けたOSPFのメトリックが20である場合、このルーターに向けたすべてのLSPが自動的に20のメトリックを継承します。ルーターに向けたOSPFが別の値に変更された場合、すべてのLSPのメトリックも変更されます。ルーターに向けたIGPルートがない場合、LSPはメトリックを65,535へと高くします。
この場合、LSPメトリックは完全にIGPによって決定されます。LSPが現在通過している実際のルートとは何の関係もありません。LSPが再ルーティングする場合(再最適化を通してなど)、メトリックは変更されないため、ユーザーに対する透明性が維持されます。動的メトリックはデフォルトの動作であり、設定する必要はありません。
静的LSPメトリックを設定する
LSPに対して、固定のメトリック値を割り当てることができます。metricステートメントで設定したあと、LSPメトリックは固定され、変更することはできません。
metric number;
以下の階層レベルでこのステートメントを使用することができます。
-
[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メトリックにはいくつかの用途があります。
-
同じegressルーターを持つLSPが並列に存在する場合、メトリック値が比較され、最もメトリック値が小さく(最もコストが小さい)、宛先への優先パスとなるLSPが特定されます。メトリックスが同じ数値の場合、トラフィックは共有されます。
メトリック値を調整することで、基礎となるIGPメトリックに関係なく、トラフィックが他のLSPよりも一定のLSPを優先するように強制することができます。
-
IGPのショートカットが有効になっている場合(ラベル付きスイッチパスを使用してSPFを拡張し、IGPショートカットを算出するを参照)、LSPが宛先への最短パスとなる場合には、LSPをネクストホップとするIGPルートがルーティングテーブルにインストールされることがあります。この場合、LSPメトリックが他のIGPメトリックに加算され、総パスのメトリック値が特定されます。例えば、ingressルーターがX、egressルーターがYのLSPが宛先Zへの最短パスになる場合、LSPのメトリックがYからZへのIGPルートのメトリック値に加算され、パスの総コストが特定されます。ネクストホップとなる可能性のあるLSPが複数ある場合、パスの合計メトリック値が比較され、どのパスが優先されるのか(つまり、総メトリック値が最も低い)を判断します。あるいは、同じ宛先に向かうIGPパスとLSPをメトリック値で比較し、どちらのパスを優先するかを決定することもできます。
LSPメトリックを調整することで、トラフィックにLSPを優先させたり、IGPパスを優先させたり、トラフィック間で負荷を共有させたりすることができます。
-
ルーターXとYがBGPピアであり、その間にLSPが存在する場合、LSPメトリックはXからYに到達するための総コストを表します。何らかの理由によりLSPが再ルーティングする場合、基盤となるパスコストは大きく変化するかもしれませんが、Yに到達するためにXにかかるコストは変わりません(LSPメトリック)。このため、XはBGPの複数の出口識別子(MED)を通じて下流のネイバーに安定したメトリックを報告することができます。YがLSPを通じて到達可能である限り、下流のBGPネイバーには対する変化は見られません。
ignore-lsp-metrics階層レベルの[edit protocols isis traffic-engineering shortcuts]ステートメントを含めることで、設定されたLSPメトリックを無視するようにIS-ISを設定することができます。このステートメントにより、パスを計算する際のIS-ISとMPLSの間に存在する相互依存関係が解消されます。詳細については、「ルーティングデバイス用Junos OSルーティングプロトコルライブラリ」を参照してください。
RSVP LSP条件付きメトリックの設定
条件付きメトリックは、ローカルで静的に設定されたラベルスイッチパス(LSP)に、条件に応じて異なるメトリック値を使用する機能を提供します。条件付きメトリックは、動的に変化するIGPメトリックに基づいています。Junos OSは、LSPメトリックを、IGPメトリックによって達成された最高閾値に対応する、設定された条件付きメトリックに変更します。一致する条件がない場合、LSPはルートのIGPメトリックを使用します。1つのLSPには最大4つの条件付きメトリックを設定することができ、それらは順番に並べられます。
条件メトリック設定のあるtrack-igp-metricステートメントを設定すると、Junos OSはインストールされているルートのIGPメトリックを使用して、設定された条件付きメトリックを評価します。条件付きメトリックと一緒に静的メトリックを設定することはできません。
RSVP LSPルートでIGPメトリックを保持する
conditional-metricステートメントを使用してRSVP LSPを設定する場合、結果として得られるメトリックが、LSP宛先用の実際のIGPメトリックと異なる場合があります。RSVPは、この条件付きメトリックをルートのメトリックとして、LSP ingressルートをプログラムします。しかし、特定の状況では、BGP MED値の計算など、後で使用するために、条件付きメトリックで使用される実際のIGPメトリックを保持しなければならない場合があります。
include-igp-metricステートメントをconditional-metricステートメントと組み合わせて、IGPメトリック情報をRSVPルートに含めます。
show route protocol rsvp extensiveコマンドを実行して、更新された実際のIGPコストを表示します。
これは、条件付きメトリックを使用したRSVPルートにのみ適用されます。動的IGPを使用するRSVPルートには、デフォルトでIGPメトリックが含まれます。
詳細については、include-igp-metric設定ステートメントを参照してください。
RSVP信号化MPLS LSP(ラベルスイッチパス)および静的LSPのテキスト説明を設定する
スペースを含む記述テキストを引用符("")で囲むことにより、LSPのテキスト記述を提供できます。記述テキストは、show mpls lspまたはshow mpls container-lspコマンドの詳細出力に表示されます。
LSPにテキスト記述を追加しても、LSPの動作には影響しません。LSPのテキスト記述の長さは80文字以下です。
LSPのテキスト記述を行うには、以下のいずれかの階層レベルでdescriptionステートメントを記述します。
-
[edit protocols mpls label-switched-path lsp-name] -
[edit protocols mpls container-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を有効にします。
-
MPLSドメインでLSPを設定します。
LSPのテキスト記述を追加するには、以下のとおりです。
-
LSPを記述したテキストを入力します。
[edit protocols mpls lsp lsp-name] user@host# set description text
たとえば、以下のように表示されます。
[edit protocols mpls lsp LSP1] user@host# set description “Connecting remote device”
-
設定を確認し、コミットします。
たとえば、以下のように表示されます。
[edit protocols mpls lsp] user@host# set protocols mpls label-switched-path LSP1 to 10.1.1.1 user@host# set protocols mpls label-switched-path LSP1 description "Connecting remote device" user@host# set protocols mpls interface ge-1/0/8.0
[edit] user@host# commit commit complete
-
設定されたLSPの種類により、
show mpls lsp detailまたはshow mpls container-lsp detailコマンドを使用してLSPの記述を表示します。user@host> show mpls lsp detail Ingress LSP: 1 sessions 10.1.1.1 From: 0.0.0.0, State: Up, ActiveRoute: 1, LSPname: LSP1 Description: Connecting remote device ActivePath: (none) LSPtype: Static Configured, Penultimate hop popping LoadBalance: Random Encoding type: Packet, Switching type: Packet, GPID: IPv4 Primary State: Up Priorities: 7 0 SmartOptimizeTimer: 180 No computed ERO. Total 1 displayed, Up 1, Down 0 Egress LSP: 0 sessions Total 0 displayed, Up 0, Down 0 Transit LSP: 0 sessions Total 0 displayed, Up 0, Down 0
RSVP信号化MPLSラベルスイッチパスのソフトプリエンプションを設定する
ソフトプリエンプションは、元のLSPを破棄する前に、プリエンプションされたLSPの新しいパスを確立することを試みます。デフォルトの動作は、まず先取りしたLSPを破棄し、新しいパスをシグナリングし、新しいパス上でLSPを再確立します。パスが停止してから新しいLSPが確立するまでの間、そのLSPを利用しようとしたトラフィックは失われます。ソフトプリエンプションは、このようなトラフィックロスを防ぎます。トレードオフは、LSPがソフトプリエントされている間、元のパスが破棄されるまで、対応する帯域幅要件を持つ2つのLSPが使用されることです。
MPLSソフトプリエンプションは、ネットワークのメンテナンスに有効です。例えば、特定のインタフェースからすべてのLSPを取り除き、トラフィックを中断させることなく、メンテナンスのためにインタフェースを停止させることができます。MPLSソフトプリエンプションについては、RFC 5712の「MPLSトラフィックエンジニアリングのソフトプリエンプション」で詳しく説明しています。
ソフトプリエンプションはLSPのプロパティで、デフォルトでは無効になっています。soft-preemptionステートメントを含めることで、LSPのingressで設定します。
soft-preemption;
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols mpls label-switched-path lsp-name][edit logical-systems logical-system-name protocols mpls label-switched-path lsp-name]
また、ソフトプリエンプション用のタイマーを設定することも可能です。このタイマーは、LSPのハードプリエンプションを開始する前にルーターが待機すべき時間の長さを指定します。指定された時間が終了すると、LSPは破棄され、再度シグナル化されます。ソフトプリエンプションクリーンアップタイマーのデフォルト値は30秒で、許容される値の範囲は0~180秒です。値が0の場合は、ソフトプリエンプションが無効であることを意味します。ソフトプリエンプションクリーンアップタイマーは、すべてのLSPに対してグローバルです。
cleanup-timerステートメントを含めてタイマーを設定します。
cleanup-timer seconds;
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols rsvp preemption soft-preemption][edit logical-systems logical-system-name protocols rsvp preemption soft-preemption]
高速再ルートが設定されているLSPには,ソフトプリエンプションは設定できません。コンフィギュレーションのコミットに失敗しました。ただし、ノードおよびリンク保護と組み合わせてソフトプリエンプションを有効にすることは可能です。
SoftPreemptionCntのカウンター値は0(ゼロ)で始まりコマンドshow rsvp interface detail出力に表示されます。
RSVP信号化MPLSラベルスイッチパスの優先順位とプリエンプションの設定
より重要なLSPを確立するための帯域幅が不足している場合、重要度の低い既存のLSPを破棄して帯域幅を確保したい場合があります。既存のLSPをプリエンプトすることで、これを行います。
LSPをプリエンプトできるかどうかは、LSPに関連する2つのプロパティによって決定されます。
設定優先度-既存のLSPをプリエンプトした新しいLSPを確立できるかどうかを判断します。プリエンプションが発生するためには、新しいLSPの設定優先度が既存のLSPの設定優先度よりも高い必要があります。また、既存のLSPをプリエンプトする行為は、新しいLSPをサポートするための十分な帯域幅を生成する必要があります。つまり、新しいLSPを正常に設定できる場合にのみ、プリエンプションが発生します。
予約優先度—LSPが正常に設定された後に、LSPがセッション予約を保持する度合いを決定します。予約優先度が高い場合、既存のLSPは予約を放棄する可能性が低いため、LSPをプリエンプトする可能性は低くなります。
2つのLSPが互いにプリエンプトすることを許可すると、永久的なプリエンプションループが発生する可能性があるため、設定優先度が高く、予約優先度が低いLSPを設定することはできません。予約優先度が設定優先度よりも高いように、設定する必要があります。
設定優先度は、同じingressルーター上のLSPの相対的な重要性も定義しています。ソフトウェアの起動時、新しいLSPの確立時、または障害回復中には、設定優先度によってLSPのサービスを受ける順番が決まります。優先度の高いLSPが先に確立される傾向があるため、より最適なパス選択が可能になります。
LSPのプリエンプションプロパティを設定するには、priorityステートメントを使用します。
priority setup-priority reservation-priority;
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
setup-priorityおよびreservation-priorityのどちらも、0から7までの値をとることができます。値0は、最も高い優先度に対応し、値7は、最も低い優先度に対応します。デフォルトでは、LSPの設定優先度は7(つまり、他のLSPをプリエンプトすることはできません)、予約優先度は0(つまり、他のLSPをプリエンプトすることはできません)となっています。これらのデフォルトは、プリエンプションが発生しないようになっています。これらの値を設定する場合、設定優先度は常に、保留優先度以下でなければなりません。
LSPに管理グループを設定する
リンクカラーリングまたはリソースクラスとも呼ばれる管理グループは、手動で割り当てる属性で、同じカラーを持つリンクが概念的に同じクラスに属するように、リンクの「カラー」を説明するためのものです。管理グループを使用して、さまざまなポリシーベースのLSP設定を実装することができます。
管理グループは、制約付きパスLSP計算が有効な場合にのみ、有意義なものとなります。
最大32の名称と値(0~31の範囲で)を割り当てることができ、一連の名称とそれぞれに対応する値を定義することができます。管理名と値は、単一ドメイン内のすべてのルーターで同じである必要があります。
管理値は、優先度とは異なります。LSPの優先度は、priorityステートメントを使用して設定します。LSPに優先度と優先権を設定するを参照してください。
管理グループを設定するには、次の手順を実行します。
admin-groupsステートメントを含めて、複数のレベルのサービス品質を定義します。admin-groups { group-name group-value; }
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]
次の設定例は、ドメインに管理名と値のセットを設定する方法を示しています。
[edit protocols mpls] admin-groups { gold 1; silver 2; copper 3; best-effort 4; }インターフェイスが属する管理グループを定義します。インターフェイスには複数のグループを割り当てることができます。
interfaceステートメントを含めますinterface interface-name { admin-group [ group-names ]; }
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]
admin-groupステートメントを含めなかった場合、インターフェイスはどのグループにも属しません。IGPはグループ情報を使用してリンク状態パケットを構築します。その後このパケットがネットワーク全体にフラッディングし、ネットワーク内のすべてのノードに情報を提供します。あらゆるルータで、IGPトポロジーとすべてのリンクの管理グループが利用可能になります。
インターフェイスの管理グループを変更した場合は、新しいLSPのみに影響を与えます。インターフェイス上の既存のLSPが、ネットワークを安定化するためにプリエンプトまたは再計算されることはありません。グループの変更によりLSPを削除する必要がある場合は、
clear rsvp sessionコマンドを発行します。注:リンクに管理グループと拡張管理グループを設定する場合、両方の管理グループの種類をインターフェイス上で設定する必要があります。
各LSPまたは各プライマリまたはセカンダリLSPパスに対して、管理グループ制約を設定します。
label-switched-pathステートメントを含めますlabel-switched-path lsp-name { to address; ... admin-group { exclude [ group-names ]; include-all [ group-names ]; include-any [ group-names ]; } primary path-name { admin-group { exclude [ group-names ]; include-all [ group-names ]; include-any [ group-names ]; } } secondary path-name { admin-group { exclude [ group-names ]; include-all [ group-names ]; include-any [ group-names ]; } } }
以下の階層レベルに
label-switched-pathステートメントを含めることができます。[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]
include-all、include-any、またはexcludeステートメントを省略すると、パスの計算は変更されることなく続行します。パスの計算は、制約付きパスLSP計算に基づきます。制約付きパスLSP計算がどのように計算されるのかについては、CSPFがパスを選択する方法を参照してください。注:LSPの管理グループを変更すると、ルートが直ちに再計算されます。このため、LSPが再ルーティングされる可能性があります。
LSP の拡張管理グループの設定
MPLS トラフィック エンジニアリングでは、一連の管理グループ(色またはリソース クラスとも呼ばれます)でリンクを設定できます。管理グループは、各リンクに割り当てられた 32 ビット値としてIGP(内部ゲートウェイ プロトコル)(OSPFv2 と IS-IS)で伝送されます。ジュニパーネットワークス ルーターは、通常、この 32 ビットの値を、各ビットがグループを表すビット マスクとして解釈し、各ネットワークを合計 32 個の異なる管理グループ(値範囲:0~31)に制限します。
32 ビット値で表され拡張管理グループを設定し、32 以上のネットワークでサポートされた管理グループの数を拡張します。管理グループに利用可能な値の元の範囲は、後方互換性のためまだサポートされています。
拡張管理グループ設定は、対応する一連の拡張管理グループ名との一連のインターフェイス セットを受け入れます。名前を 32 ビット値に変換し、この情報を IGP に伝送します。拡張管理グループ値はグローバルであり、ネットワークに参加している、サポートされているルーターすべてで同一に設定する必要があります。IGP フラッディングで他のルーターから学習されたドメイン全体拡張管理グループ データベースは、パス計算のための CSPF(制限付き最短パスファースト)によって使用されます。
以下の手順では、拡張管理グループの設定方法について説明します。
リンクに管理グループと拡張管理グループを設定する場合、両方の管理グループの種類をインターフェイス上で設定する必要があります。
RSVP信号化MPLS LSPのJunosルーティング優先値を設定する
オプションとして、同じペアのingressルーターとegressルーターの間に複数のLSPを設定することができます。これは、すべてのLSPがデフォルトで同じプリファレンスレベルを持っているため、LSP間の負荷を分散するのに役立ちます。あるLSPを他のLSPよりも優先するために、個々のLSPに異なるプリファレンスレベルを設定します。プリファレンス値が最も低いLSPが使用されます。RSVPLSPのデフォルトのプリファレンスは7、LDP LSPのデフォルトのプリファレンスは9です。これらのプリファレンス値は、ダイレクトインターフェースルートを除くすべての学習済みルートよりも低い(優先される)値です。
デフォルトのプリファレンス値を変更するには、preferenceステートメントを含めます。
preference preference;
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
RSVP信号化MPLS LSPによるパスルート記録の無効化
JunosのRSVP実装では、LSPが通過するルーターを積極的に記録できる記録ルートオブジェクトがサポートされています。この情報は、トラブルシューティングやルーティングループの防止に使用できます。デフォルトでは、パスルート情報が記録されます。記録を無効にするには、no-recordステートメントを使用します。
no-record;
recordとno-recordのステートメントを使用することができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
RSVP信号化MPLS LSPでメークビフォアブレークのヒットレス切り替えを実現する
適応型ラベルスイッチパス(LSP)は、新しいLSPインスタンスを確立し、古いインスタンスを分解解析する前に、古いLSPインスタンスから新しいLSPインスタンスにトラフィックを転送しなけばならない場合があります。このタイプの設定はメークビフォアブレーク(MBB)と呼ばれます。
RSVP-TEは、MPLSネットワークにLSPを確立するために使用されるプロトコルです。ヒットレス(トラフィックロスなし)でのMBBスイッチオーバーを達成するためいJunos OSでRSVP-TEを実装する際には、以下の設定ステートメントでタイマー値を設定していました。
optimize-switchover-delay—新しいLSPインスタンスにスイッチングするまでの待機時間。optimize-hold-dead-delay—スイッチオーバー後、古いLSPインスタンスを削除するまでの待機時間。
optimize-switchover-delayおよびoptimize-hold-dead-delayステートメントは両方とも、optimize-timerステートメントも設定されているLSPだけでなく、LSP設定や分解解析にメークビフォアブレーク動作を使用するすべてのLSPに適用されます。次のMPLS機能により、メークビフォアブレーク動作を使ってLSPが設定および破棄されます:
適応型LSP
自動帯域幅割り当て
LSP向けBFD
グレースフルルーティングエンジンスイッチオーバー
リンクおよびノード保護
ノンストップアクティブルーティング
最適化されたLSP
ポイントツーマルチポイント(P2MP)LSP
ソフト優先権
スタンバイセカンダリパス
設定された場合、optimize-switchover-delayとoptimize-hold-dead-delay両方のステートメントが、MBBプロセスに人為的な遅延を生じさせます。optimize-switchover-delayのステートメントの値は、明示的なルートオブジェクト(ERO)のサイズによって変わります。EROはRSVPの拡張機能で、RSVPPATHメッセージは、従来の最短パスのIPルーティングとは独立した、明示的なルーターのシーケンスを経由できるようになります。optimize-switchover-delayステートメントの値は、パス上の各ルーターのCPUロードにも依存します。顧客は、試行錯誤しながらoptimize-switchover-delayステートメントを設定しています。
optimize-hold-dead-delayステートメントの値は、ingressルーターがアプリケーションプレフィックスを新しいLSPを指すように移動させる速度によって異なります。これは、パケット転送エンジン負荷によって決定され、プラットフォームごとに異なる可能性があります。顧客は、試行錯誤しながらoptimize-hold-dead-delayステートメントを設定する必要があります。
ただし、リリース15.1以降のJunos OSでは、このようなタイマー値がもたらす人為的な遅延を設定せずに、ヒットレスMBBスイッチオーバーを実現することができます。
このトピックでは、Junos OSを使用して、古いLSPから新しいLSPへのMBBスイッチオーバーを実現する方法を3通り概説しています。
ルーターが新しいパスにスイッチオーバーするまでの待機時間を指定する
LSPインスタンス上でルーターが新しく最適化されたパスにスイッチオーバーするまでの待機時間を指定するには、optimize-switchover-delayステートメントを使用します。このステートメントは、影響を受けるLSPのingressとして機能するルーターでのみ設定する必要があります(トランジットやegressのルーターでの設定は不要)。このステートメントのタイマーにより、トラフィックが古いパスからスイッチオーバーする前に、新しい最適化パスが確立されたことを確認できます。このタイマーは、ルーターに設定されたすべてのLSPに対してのみ有効・無効化することができます。
ルーターがLSPインスタンス上で新たに最適化されたパスにスイッチオーバーするまでの待機時間を設定するには、optimize-switchover-delayステートメントを使用することにより、秒単位で時間を指定します。
optimize-switchover-delay seconds;
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]
古いパスの分解解析を遅延させる時間を指定する
ルーターがトラフィックを新しい最適化パスにスイッチした後に古いパスの分解解析を遅延させる時間を指定するには、optimize-hold-dead-delayステートメントを使用します。このステートメントは、影響を受けるLSPのingressとして機能するルーターでのみ設定する必要があります(トランジットやegressのルーターでの設定は不要)。このステートメントのタイマーにより、すべてのルートが新しい最適化パスにスイッチする前に、古いパスが分解解析されなくなります。このタイマーは、特定のLSPまたは、ルーターに設定されたすべてのLSPに対して有効にできます。
ルーターがトラフィックを新しい最適化パスにスイッチした後に、古いパスの分解解析を遅延させる時間を設定するには、optimize-hold-dead-delayステートメントを使用します:
optimize-hold-dead-delay seconds;
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
人為的な遅延なしに、ヒットレスのMBBスイッチオーバーを達成する
Junos OSリリース15.1では、optimize-switchover-delayまたはoptimize-hold-dead-delayステートメントによって設定された任意の時間間隔に頼らずに、MBBスイッチオーバー後に古いLSPインスタンスを放棄する別の方法があります。たとえば、optimize-hold-dead-delayステートメントを使用する場合、MBB後に古いLSPインスタンスを分解解析する前に待機すべきだと思う時間を設定します。ただし、ルートによってはまだ新しいインスタンスに移行するプロセス中かもしれません。古いLSPインスタンスを早期に分解解析すると、トランジットノードの1つが、新しいLSPインスタンスに移行していないルートのトラフィックをドロップしてしまいます。
トラフィック喪失を回避するには、optimize-switchover-delayステートメントを使用する代わりに、MPLS-OAM(lsp ping)を使用することができます。これにより、LSPデータプレーンがエンドーツーエンドで確立されます。optimize-hold-dead-delayステートメントを使用する代わりに、rpdインフラストラクチャーからのフィードバックメカニズムを使用して、古いLSPに関連するすべてのプレフィックスがスイッチオーバーしたことを確認できます。フィードバックメカニズムはタグライブラリから供給され、ルーティングプロトコルプロセス(RPD)インフラに依存して、MBBのスイッチオーバー後に古いLSPインスタンスを使用していたすべてのルートが新しいLSPインスタンスに完全に移行したことを判断します。
フィードバックメカニズムは常備されており、オプションです。optimize-adaptive-teardownステートメントを、MBBスイッチオーバー中に使用されるフィードバックメカニズムが搭載されるように設定します。この機能は、RSVPポイントツーマルチポイント(P2MP)LSPインスタンスではサポートされていません。optimize-adaptive-teardownステートメントのグローバル設定は、システムで設定されたポイントツーポイントLSPのみに影響します。
このoptimize-adaptive-teardownステートメントは、影響を受けるLSPのingressとして機能するルーターでのみ設定する必要があります(トランジットやegressルーターでの設定は不要)。このフィードバックメカニズムにより、すべてのルートが新しい最適化パスにスイッチオーバーされるまで、古いパスが破棄されないようになります。この設定ステートメントのグローバル設定は、システムで設定されたポイントツーポイントLSPのみに影響します。
optimize-adaptive-teardown { p2p: }
以下の[edit protocols mpls]階層レベルでこのステートメントを含めることができます。
シグナル化されたLSPの最適化
LSPが確立されると、トポロジーまたはリソース変更が、時間の経過とともに、パスを最適ではないものにする可能性があります。輻輳がより緩和され、メトリックがより低く、より少ないホップを通過する新しいパスが利用できるようになった可能性があります。ルーターを設定してパスを定期的に再計算し、より最適なパスが利用可能になったかどうかを確認できます。
再最適化が有効になっている場合、制約付きパスを再計算して、異なるパスを通してLSPを再ルーティングできます。ただし、再最適化が無効になっている場合、LSPのパスは固定されているので、新たに利用可能になったネットワークリソースを活用することはできません。次のトポロジー変更がLSPを中断し、再計算を強制するまで、LSPは固定されます。
再最適化はフェイルオーバーと関係していません。確立されたパスを中断するトポロジー障害が発生した場合、必ず新しいパスが計算されます。
システムのオーバーヘッドが関連している可能性があるため、再最適化の頻度は慎重に管理する必要があります。再最適化を有効にする場合、ネットワークの安定性が損われる可能性があります。デフォルトでは、optimize-timerのステートメントは0に設定されています(つまり、無効になっています)。
LSPの最適化は、制約付きパスのLSP計算が有効になっている場合にのみ役立ち、これがデフォルトの動作となります。制約付きパスのLSP計算の詳細については、制約付きパスLSP計算の無効化をご覧ください。また、LSPの最適化は、イングレスLSPにのみ適用可能なので、必要なのはイングレスルーター上でoptimize-timerのステートメントを設定することだけです。トランジットおよびエグレスルーターでは、(MPLSを有効な状態にすること以外)LSPの最適化に対応する特定の設定は必要ありません。
パスの再最適化を有効にするには、optimize-timerのステートメントを含めます。
optimize-timer seconds;
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
一旦optimize-timerのステートメントを設定すると、設定からoptimize-timerのステートメントを削除する場合でも、再最適化タイマーは設定値に向かってカウントダウンを継続します。次の最適化では、新しい値を使用します。古い値を削除して、設定をコミットし、optimize-timerのステートメントに新しい値を設定し、再度設定をコミットすると、すぐに、Junos OSに新しい値の使用を強制させることができます。
再最適化の実行後、以下を満たす場合にのみ、結果が受け入れられます。
新しいパスは、IGPメトリック値が高くない。(古いパスのメトリックは計算時に更新されるので、最新のリンクメトリックが古いパスのどこか途中で変わった場合、それはすでに計上されています。)
新しいパスに同じIGPメトリックがある場合、これ以上ホップが離れていない。
新しいパスはプリエンプションを実行しない。(これによりプリエンプションがプリエンプションを引き起こすという波及効果を緩和します。)
新しいパスが、全体的に輻輳を悪化させない。
新しいパスの相対輻輳は以下のように決定されます。
新しいパスで通過する各リンクの利用可能な帯域幅の割合は、最も混雑するリンクから始まる古いパスと比較されます。
ソフトウェアは、現在の(古い)パスごとに、昇順で通過するリンクの帯域幅の可用性に関する4つの最小値を保存します。
また、ソフトウェアは、昇順で通過するリンクに対応する、新しいパスの帯域幅の4つの最小可用性値を保存します。
この4つの新しい可用性のある帯域幅値のいずれかが、対応する古い帯域幅の可用性値のいずれかよりも小さい場合、新しいパスには、古いパスが使用しているリンクよりも輻輳がより悪化しているリンクが、少なくとも1つあります。このリンクを使用すると輻輳が悪化するため、トラフィックをこの新しいパスには切り替えません。
4つの新しい可用性のある帯域幅値のいずれも、対応する古い帯域幅の可用性値よりも小さい場合、新しいパスは古いパスよりも輻輳が悪化しません。
上記の条件がすべて満たされている場合、次のようになります。
新しいパスのIGPメトリックが低い場合、受け入れられます。
新しいパスのIGPメトリックが同等で、ホップ数が少ない場合、受け入れらる。
ロードバランシングアルゴリズムとして
least-fillを選択すると、LSPは次のように負荷分散されます。LSPは、現在のパスより少なくとも10%低く利用される新しいパスに移動します。これにより、現在のパスの輻輳をわずかに緩和する可能性があります。例えば、1MBの帯域幅のLSPを最低200MBのパスから移動させると、元のパスでの輻輳の緩和は1%以下です。
randomまたはmost-fillのアルゴリズムの場合、このルールは適用されません。
次の例では、
least-fillロード バランシングアルゴリズムの仕組みを表しています。図 1: 最小フィルロードバランシングアルゴリズムの例
図 1に示された通り、LSPがルーターAからルーターHへ通過するには、L1~L13の奇数リンクとL2~L14の偶数リンクの、2つのLSPパスが考えられます。現在、ルーターはLSPのアクティブパスとして偶数のリンクを使用しています。同じ2つのルーター(ルーターAとルーターBなど)間の各リンクは、同じ帯域幅を持っています。
L1, L2 = 10GE
L3, L4 = 1GE
L5, L6 = 1GE
L7, L8 = 1GE
L9, L10 = 1GE
L11, L12 = 10GE
L13, L14 = 10GE
1GEのリンクは輻輳が発生している可能性が高くなっています。この例では、奇数の1GEリンクには、以下の帯域幅が利用できます。
L3 = 41%
L5 = 56%
L7 = 66%
L9 = 71%
遇数の1GEリンクには、以下の帯域幅が利用できます。
L4 = 37%
L6 = 52%
L8 = 61%
L10 = 70%
この情報に基づいて、ルーターは奇数のリンクと偶数のリンク間で利用可能な帯域幅の差異を以下のように計算します。
L4 - L3 = 41% - 37% = 4%
L6 - L5 = 56% - 52% = 4%
L8 - L7 = 66% - 61% = 5%
L10 - L9 = 71% - 70% = 1%
奇数のリンクで利用できる追加帯域幅の合計は14%(4% + 4% + 5% + 1%)です。14%は10%(最小フィルアルゴリズムの最小閾値)より高い数値なので、LSPは、遇数のリンクを使用した元のパスから、奇数のリンク上の新しいパスに移動します。
それ以外では、新しいパスは拒否されます。
以下の再最適化基準(前に示した基準の一部)を無効にできます。
新しいパスに同じIGPメトリックがある場合、これ以上ホップが離れていない。
新しいパスはプリエンプションを実行しない。(これによりプリエンプションがプリエンプションを引き起こすという波及効果を緩和します。)
新しいパスが、全体的に輻輳を悪化させない。
新しいパスのIGPメトリックが同等で、ホップ数が少ない場合、受け入れらる。
これを無効にするには、clear mpls lsp optimize-aggressiveのコマンドを実行するか、optimize-aggressiveのステートメントを含めます。
optimize-aggressive;
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]
設定でoptimize-aggressiveのステートメントを含めると、再最適化の実行はさらに頻繁にトリガーされます。パスの再ルーティングがさらに頻繁に行われます。また、再最適化アルゴリズムもIGPメトリックのみに制限されます。
LSP のスマート最適化タイマーの設定
ネットワークやルーターのリソースに制約があるため、通常、最適化タイマーの間隔を短く設定することは望ましくありません。ただし、特定の状況では、通常通り最適化タイマーによって提供されるよりも早くパスを再最適化することが望ましい場合があります。
例えば、LSP が優先パスを通過していて、その後に障害が発生したとします。そのとき、LSP を、優先順位の劣るパスに切り替え、同じ宛先に到達させることができます。元のパスがすぐに回復したとしても、ネットワークパスを再最適化するための最適化タイマーを待つ必要があるため、LSP がそのパスを再度使用するには、非常に長い時間がかかる可能性があります。そのような状況の場合、スマート最適化タイマーを設定することができます。
スマート最適化タイマーを有効にすると、LSP がダウンしてから 3 分以内に元のパスが回復した場合には、元のパスに切り替えられます。また、60 分以内に元のパスが再びダウンすると、スマート最適化タイマーは無効になり、最適化タイマーのみを有効にした場合のパス最適化の動作が、通常通りに行われます。これにより、ルーターがフラッピングリンクを使用することを防ぎます。
スマート最適化タイマーは、正常に機能する他の MPLS 機能に依存しています。ここでは、元のパスに障害が発生した場合に LSP を代替パスに切り替えるシナリオを想定しており、高速再ルート、リンク保護、およびスタンバイセカンダリパスなど、複数の MPLS トラフィック保護機能が設定されていることを前提としています。障害が発生した場合、これらの機能によりトラフィックが確実に宛先に届くようになります。
スマート最適化タイマー機能が正しく動作するためには、少なくともスタンバイセカンダリパスを設定する必要があります。高速再ルートおよびリンク保護は、ネットワーク障害に対するより一時的な解決策です。セカンダリパスは、プライマリパスに障害が発生した場合に、安定した代替パスを確保するためのものです。LSP に何らかのトラフィック保護を設定していない場合、スマート最適化タイマーだけでは、トラフィックが確実に宛先に到達することはできません。MPLS トラフィック保護の詳細については、MPLS およびトラフィック保護を参照してください。
プライマリパスに障害が発生し、スマート最適化タイマーがトラフィックをセカンダリパスに切り替えた場合、プライマリパスが回復した後もルーターがセカンダリパスを使用し続ける可能性があります。イングレスルーターが CSPF の計算を完了すると、セカンダリパスがより良いパスであると判断される可能性があります。
これは、プライマリパスをアクティブなパスとし、セカンダリパスをバックアップとしてのみ使用する場合には望ましくありません。また、セカンダリパスがアクティブなパスとして使用されている場合(プライマリパスが再確立されていても)、セカンダリパスに障害が発生しても、スマート最適化タイマー機能は自動的にトラフィックをプライマリパスに戻すことはありません。ただし、ノード保護およびリンク保護を設定したり、スタンバイセカンダリパスを追加で設定することで、セカンダリパスの保護を有効にすることができ、その場合はスマート最適化タイマーを有効にできます。
smart-optimize-timer ステートメントを使用して、スマート最適化タイマーの時間を秒単位で指定します。
smart-optimize-timer設定ステートメントを適用できるのは、optimize-timerステートメントを使用して、定期的なLSP再最適化を有効にした場合のみです。
smart-optimize-timer seconds;
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]
RSVP信号化MPLS LSPのパス内のホップ数を制限する
デフォルトでは、各LSPは、ingressルーターとegressルーターを含めて、最大255ホップを通過できます。この値を変更するには、hop-limitステートメントを使用します。
hop-limit number;
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
ホップの数は、2~255で可能です。(2つのホップを持つパスは、ingressルーターとegressルーターのみで構成されます。)
RSVP信号化MPLS LSPに対して手動で定義された帯域幅値を設定する
各LSPは帯域幅の値を持ちます。この値は、RSVPパス設定メッセージの送信者Tspecフィールドに含まれます。帯域幅の値をビット毎秒で指定することができます。LSPに多くの帯域を設定すれば、より多くのトラフィックを伝送することができるはずです。デフォルトの帯域幅は0ビット/秒です。
帯域幅がゼロでない場合、トランジットルーターとegressルーターは、パスの送信リンクに沿って容量を確保する必要があります。この容量を確保するために、RSVP予約方式が採用されています。帯域予約の障害(RSVPポリシー制御やアドミッション制御の障害など)が発生すると、LSPの設定に失敗することがあります。通過ルータまたは退出ルータのインタフェースに十分な帯域がない場合、LSPは確立されません。
シグナル付きLSPの帯域幅値を指定するには、bandwidthステートメントを記述します。
bandwidth bps;
このステートメントを含めることができる階層レベルの一覧は、このステートメントのステートメント概要のセクションを参照してください。
LSP 向けの自動帯域幅割り当て
自動帯域幅調整によって、MPLS トラフィックはトンネルを通るトラフィックの量に基づき、帯域幅割り当てを自動的に調整できます。LSP を最小限の帯域幅で設定できます。この機能は、現在のトラフィック パターンに基づき、LSP 帯域幅割り当てを動的に調整できます。帯域幅調整は、トンネルを通るフローを中断しません。
自動帯域幅割り当てで設定された LSP でサンプリング間隔を設定します。この間隔の間の平均帯域幅が監視されます。この間隔の終わりに、帯域幅割り当てがその前のサンプリング間隔の最大平均値に設定された LSP の新しいパスのシグナリングが試行されます。新しいパスを正常に確立し、元のパスを削除した場合、LSP は新しいパスに切り替わります。新しいパスを作成しなかった場合、LSP は、次のサンプル間隔の終わりに新しいパスの確立が試行されるまで、現在のパスを引き続き使用します。LSP の最小および最大帯域幅値を設定できます。
自動トラフィック割り当て間隔中、ルーターは LSP 上のトラフィックの着実な増加(帯域幅利用の増加)を受け、場合によっては輻輳またはパケット ロスが発生する。これを防止するために、現在の調整間隔の終了前に自動帯域幅調整タイマーを早期に終了する 2 つ目のトリガーを定義できます。
LSPに自動帯域幅割り当てを設定する
自動帯域幅調整によって、MPLS トラフィックはトンネルを通るトラフィックの量に基づき、帯域幅割り当てを自動的に調整できます。最小限の帯域幅でLSPを設定することができます。この機能は、現在のトラフィックパターンに基づいて、LSPの帯域幅割り当てを動的に調整することができます。帯域幅調整は、トンネルを通るフローを中断しません。
自動帯域幅割り当てをおこなう時間インターバルの終了時に、現在の最大平均帯域幅の使用量が、LSPに割り当てられた帯域幅と比較されます。LSPにより多くの帯域幅が必要となる場合、帯域幅が現在の最大平均使用量と等しい新しいパスを設定しようと試みます。この試みに成功した場合には、LSPのトラフィックは新しいパスを通ってルーティングされ、古いパスは削除されます。この試みが失敗した場合には、LSPは現在のパスを引き続き使用します。
(イングレスLSPと比較した)Max AvgBWの値を計算する際には、不正確な結果を防ぐために、事前対応(MBB)前に収集されたサンプルは無視されます。帯域幅調整後の最初のサンプル、またはLSP ID変更後のサンプル(パスの変更に関係なく)も無視されます。
リンクとLSPのノード保護を設定しており、トラフィックをバイパスLSPに切り替えている場合、自動帯域幅割り当て機能の動作は継続し、バイパスLSPから帯域幅サンプルを取り続けます。最初の帯域幅調整サイクルでは、元のリンクとノード保護されたLSPから取した最大平均帯域幅の使用量を使用して、もっと多くの帯域幅が必要な場合にはバイパスLSPを再び信号化します。(リンクとノード保護は、QFXシリーズスイッチではサポートされていません。)
LSPに高速再ルートを設定している場合には、この機能を使用して帯域幅を調整できないことがあります。これは、LSPが固定フィルター(FF)予約スタイルを採用しているためで、新しいパスを信号化した場合に、帯域幅がダブルカウントされる可能性があるからです。自動帯域幅割り当てが有効になっている場合、ダブルカウントにより、高速再ルートLSPによって帯域幅が調整されるのを防ぐことができます。(高速再ルートは、QFXシリーズスイッチではサポートされていません。)
自動帯域幅割り当てを設定するには、次のセクションにある手順を実行します。
QFX10000スイッチでは、edit protocols mpls 階層レベルにのみ自動帯域幅割り当てを設定できます。論理システムはサポートされていません。
MPLS LSPの最適化された自動帯域幅調整の設定
自動帯域幅機能により、直接設定された RSVP-TE LSP、または自動メッシュを使用して自動的に作成された LSP は、トラフィックレートに基づいてサイズを変更することができます。各 LSP で運ばれるトラフィック量は,定期的にサンプルを採取して測定する.set protocols mpls statistics intervalトラフィック統計の収集頻度は、コンフィギュレーション文によって制御されます。adjust-intervalLSPのサイズを変更することを調整といい、調整の頻度はステートメントで制御します。調整間隔の設定可能な最小値は1秒です。
adjust-intervalauto-bandwidthadjust-threshold-overflow-limitadjust-threshold-underflow-limitJunos OS Release 20.4R1以降では、or文が設定されたオーバーフローまたはアンダーフローの閾値を超えた場合、調整のための最小値が150秒に減少します。
adjust-intervalauto-bandwidthただし、オーバーフローやアンダーフローのサンプルが検出されない場合、調整のための最小値は300秒です。
adjust-intervalJunos OS Release 20.4R1より前のリリースでは、オーバーフローまたはアンダーフローの条件下で300秒になります。
auto-bandwidth自動帯域調整最適化の実装により、LSPの帯域幅をより速く減少させることができます。adjust-threshold-overflow-limitイングレスのラベルエッジルータ(LER)は、MBB後の古いLSPインスタンスのティアダウンが150秒以内に完了すれば、 , が減少するため、150秒以内にリサイズすることが可能です。
自動帯域最適化の要件は以下の通りです。
LSP経路変更確率低減-自動帯域調整時にLSP経路変更確率を低減します。
LSP再ルーティングの確率を下げる-同じリソースを要求する優先度の高いLSPのために、LSPが再ルーティングされる確率を下げることです。
これらの要件を満たすために、自動帯域調整最適化は以下をサポートします。
In-place LSP Bandwidth Update-ドメイン内 LSP の帯域変更時に,イングレスのラベルエッジルータ(LER)で LSP ID を再利用できるようにします。
注:ドメイン間LSPの場合,LSP帯域のインプレース更新は適用されません。
特定のシナリオでは、LSPルートネクストホップは、直接または間接的にLSP帯域幅を伝送します。これらのシナリオでは、インプレースLSP帯域更新がサポートされていても、LSP経路変更のため、機能による性能向上は限定的です。auto-bandwidth (MPLS Tunnel)つまり、自動帯域幅(MPLSトンネル)後のinet.3ルートテーブルが変更されたためです。例えば、どちらか一方または両方のステートメントを設定した場合、パフォーマンスの向上は制限されます。
auto-policingMPLSの下で構成されています。bandwidthload-balanceRSVPで設定した文の下のオプション。
注:LSP-IDの再利用によるその場でのLSP帯域更新が失敗し、入口LERが直ちに新しいLSP-IDでMBBをトリガーした場合。
no-cspfはLSPに設定されています。LSPは、PCE(Path Computation Element)によって制御される。
LSP最適化タイマが切れる。
clear mpls lsp optimize-aggressiveコマンドが実行されます。
Per-priority Subscription-ネットワークリソースをより効率的に利用するため,優先度ごとの加入により,優先度の低いLSPのRSVP加入率を低く,優先度の高いLSPのRSVP加入率を高く設定することができます。
例えば,すべての優先度のLSPに対してRSVP加入率を90%に設定する代わりに,優先度の低いLSPに対して低いRSVP加入率(例えば75%)を設定することができます。
優先順位ごとの加入は、差別化サービス(DiffServ)を考慮したトラフィックエンジニアリング(TE)とは相互運用できません。差別化サービス(DiffServ)を考慮したトラフィックエンジニアリングは、優先度ごとの加入よりも柔軟で統計的なTEリンク帯域の共有を可能にします。
To Configure In-place LSP Auto-bandwidth Resizing:
Verification
show protocolsshow interfacesコンフィギュレーションモードから、, コマンドを入力して、コンフィギュレーションを確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
interfaces {
et-0/0/0:1 {
unit 0 {
family {
mpls;
}
}
}
}
protocols {
mpls {
label-switched-path lsp1 {
to 10.2.5.1;
in-place-lsp-bandwidth-update;
}
}
}
To Configure Per-priority Subscription:
インターフェースにRSVPプロトコルを設定します。
[edit] user@host# set protocols rsvp interfaceinterface-name user@host# set protocols rsvp interface et-0/0/0:1.0
インタフェースの帯域予約値を設定します。0~65,000%の値を設定することができる。サブスクリプションのデフォルト値は100%です。
[edit] user@host# set protocols rsvp interface interface-name subscription percentage
user@host# set protocols rsvp et-0/0/0:1.0 subscription 11
インターフェイス上のサブスクリプションの優先順位を設定します。
[edit] user@host# set protocols rsvp interface interface-name subscription percentage priority
user@host# set protocols rsvp et-0/0/0:1.0 subscription 11 priority 7
優先順位に応じた加入率を設定します。
[edit] user@host# set protocols rsvp interface interface-name subscription percentage priority percentage
user@host# set protocols rsvp et-0/0/0:1.0 subscription 11 priority 7 percent 10
コンフィギュレーションモードからコミットを入力します。
Verification
show protocolsshow interfacesコンフィギュレーションモードから、, コマンドを入力して、コンフィギュレーションを確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
protocols {
rsvp {
interface et-0/0/0:1.0 {
subscription 11{
priority 7 {
percent 10;
}
}
}
関連項目
LSP の自動帯域幅割り当て統計のレポートの設定
自動帯域幅調整によって、MPLS トラフィックはトンネルを通るトラフィックの量に基づき、帯域幅割り当てを自動的に調整できます。以下の手順を完了することで、デバイスが自動帯域幅割り当てに関連する統計情報を収集するようにデバイスを設定できます。
RSVP信号化MPLS LSPを設定して自律システム間のパスを計算する
LSPの設定の一部としてinter-domainステートメントを含めることで、ネットワーク内の複数のエリアを横断するLSPを設定することができます。このステートメントにより、ルーターはIGPデータベース内のルートを検索することができます。このステートメントは、ドメイン内CSPFを使用してパスを見つけることができない可能性があるルータに、(TED(トラフィック制御データベース)を検索して)設定する必要があります。エリア間LSPを設定する場合、inter-domainステートメントは必須です。
開始する前に、以下を実行します。
ファミリMPLSでデバイスインタフェースを設定します。
デバイスルーターIDと自律システム番号を設定します。
ルーターとトランジットインターフェースでMPLSとRSVPを有効にします。
トラフィック制御をサポートするようにIGPを設定します。
ingressからegressルーターへのLSPを設定します。
ingressラベル交換ルータ(LER)上で複数のASにまたがるLSPを設定する場合。
RSVP信号化MPLS LSP状態変化のIGPアドバタイズのダンピング
LSPがアップからダウンへ、またはダウンからアップへ変化すると、ルーターのソフトウェアとハードウェアでこの遷移が直ちに有効になります。ただし、IS-ISやOSPFにLSPを広告する場合、LSPの遷移を減衰させ、一定時間(ホールドタイムと呼ばれる)が経過するまで遷移を広告しないようにしたい場合があります。この場合、LSPがアップからダウンになったとしても、ホールドタイム期間中はダウンしたままでないと、LSPがダウンしたとは広告されません。ダウンからアップへの遷移は、即座にIS-ISとOSPFにアドバタイズされます。LSPダンピングは、LSPのIS-ISとOSPFの広告にのみ影響し、他のルーティングソフトウェアとハードウェアはLSPの遷移に即座に反応することに注意してください。
LSPの遷移を減衰させるために、advertisement-hold-timeステートメントを入れます。
advertisement-hold-time seconds;
secondsには、0~65,535秒の値を指定することができます。デフォルトは5秒です。
以下の階層レベルでこのステートメントを使用することができます。
[edit protocols mpls][edit logical-systems logical-system-name protocols mpls]
共同ルーティングされた双方向RSVP信号化MPLS LSPを設定する
図 2に示す通り、共同ルート双方向パケットLSPは、ingressおよびegressノードのペア間で同じパスを共有する2つのLSPの組み合わせです。RSVP-TEへのGMPLS拡張が確立されています。このタイプのLSPは、レイヤー2VPN、レイヤー2回線、レイヤー3VPNを含む、あらゆる標準的なタイプのMPLSベーストラフィックの伝送に使用できます。双方向LSP向けに単一BFDセッションを設定することができます(各方向の各LSPに対してBFDセッションを設定する必要はありません)。また、単一のスタンバイ双方向LSPがプライマリ双方向LSPのバックアップを提供するように設定することもできます。共同ルート双方向LSPは、PHP(最後から2番目のホップポッピング)とUHP(最終ホップポッピング)の両方でサポートされています。
高可用性は、双方向LSPで利用可能です。グレースフルリスタートとノンストップアクティブルーティングが有効にすることができます。グレースフルリスタートとノンストップアクティブルーティングは、再起動するルーターが双方向LSPのingress、egress、またはトランジットルーターである場合にサポートされます。

共同ルート双方向LSPを設定するには以下を実行します。
LSPにエントロピーラベルを設定する
LSPにエントロピーラベルを挿入することで、トランジットルーターはディープパケットインスペクションに依存することなく、MPLSラベルスタックのみをハッシュ入力として使用して、ECMPパス全体またはリンクアグリゲーショングループ全体でMPLSトラフィックの負荷を分散することができます。ディープパケットインスペクションでは、ルーターにより多くの処理能力が必要とされ、ルーターによってディープパケットインスペクションの機能は異なります。
LSPにエントロピーラベルを設定するには、以下のステップを実行します。
トランジットルーターに設定は必要ありません。エントロピーラベルが存在することは、MPLSラベルスタックのみに基づいて、トランジットルーターが負荷分散を行う必要があることを示しています。
最後から2番目のホップルーターは、デフォルトでエントロピーラベルをホップします。
例:BGP ラベル付きユニキャスト LSP 向けエントロピーラベルを設定
この例では、エントロピーラベルを使用してエンドツーエンドの負荷分散を実現するために、BGPラベル付きユニキャストにエントロピーラベルを設定する方法を示します。IP パケットが宛先に到達するまでのパスが複数ある場合、Junos OS は、パケット ヘッダーの特定のフィールドを使用して、パケットを決定論的なパスにハッシュします。これには、フロー情報を伝えることができる特別な負荷分散用のラベル、エントロピーラベルが必要です。コアの LSR は、単にエントロピーラベルをキーとして使用し、パケットを正確なパスにハッシュします。エントロピーラベルには、16~1048575(通常の 20 ビットラベル範囲)のラベル値を設定できます。この範囲は、既存の標準ラベル範囲と重なるため、エントロピーラベルの前に、エントロピーラベルインジケーター(ELI)と呼ばれる特別なラベルを挿入します。ELI は、IANA で割り当てられた特別なラベルで、値は 7 です。
BGPのラベル付きユニキャストは、通常、複数のIGPエリアまたは複数の自律システムでRSVPまたはLDP LSPを連結します。RSVP または LDP のエントロピーラベルは、RSVP または LDP ラベルとともに、最終ホップノードにポップされます。この機能は、BGPトラフィックのエンドツーエンドのエントロピーラベルの負荷分散を実現するために、ステッチングポイントでエントロピーラベルを使用して、最終ホップノードとステッチングポイントの間のギャップを埋めることができます。
要件
この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。
-
MPCを持つ 7つのMXシリーズルーター
-
すべてのデバイスでJunos OS Release15.1以降が実行されている
-
Junos OS Relese 22.4を使用して再検証されている
-
BGP ラベル付きユニキャスト向けエントロピーラベルを設定する前に、以下のことを確認してください:
-
デバイスインターフェイスを設定します。
-
OSPF、またはその他の IGP プロトコルを設定します。
-
BGP を設定します。
-
RSVP を設定する。
-
MPLS を設定します。
概要
BGPのラベル付きユニキャストが、複数のIGPエリアや複数の自律システムにまたがるRSVPまたはLDP LSPを連結する場合、RSVPまたはLDPのエントロピーラベルは、RSVPまたはLDPのラベルと一緒に、最終ホップノードでポップされます。ただし、ステッチングポイント(2つのエリア間のルーター)にはエントロピーラベルがありません。そのため、ステッチポイントのルーターは、BGPラベルを使用してパケットを転送しました。
Junos OSリリース15.1以降、エンドツーエンドでエントロピーラベルの負荷分散を実現するため、BGPラベル付きユニキャストのエントロピーラベルを設定できるようになりました。この機能を使うと、BGPトラフィックのエンドツーエンドのエントロピーラベルの負荷分散を実現するために、ステッチポイントのエントロピーラベルを使用できます。Junos OSでは、BGPラベル付きユニキャストLSPイングレスにエントロピーラベルを挿入できるようになりました。
デフォルトでは、エントロピーラベルをサポートするルーターは、階層レベルのload-balance-label-capabilityステートメント[edit forwarding-options]で設定され、LSPベースでラベルを通知します。ピアルーターが負荷分散ラベルを処理する機能を備えていない場合、階[edit forwarding-options]層レベルno-load-balance-label-capabilityで ステートメントを設定することで、エントロピーラベル機能のシグナリングを防止できます。
[edit forwarding-options]user@PE#no-load-balance-label-capability
階[edit policy-options policy-statement policy name then]層レベルのno-entropy-label-capabilityオプションによりポリシーで指定されたルートのエグレスで、エントロピーラベル機能を明確に無効にすることができます。
[edit policy-options policy-statement policy-name then]user@PE#no-entropy-label-capability
トポロジー
図 3で、ルーターPE1はイングレスルーターで、ルーターPE2はエグレスルーターです。ルーターP1とP2は、トランジットルーターです。ルーターABRは、エリア0とエリア1の間のエリアブリッジルーターです。2つのLPSは、トラフィックの負荷分散のためにABRからPE2に設定されています。BGPラベル付きユニキャストのエントロピーラベル機能は、イングレスルーターPE1で有効です。ホスト1は、エントロピーラベルを表示できるように、パケットキャプチャ用にP1に接続されています。

設定
CLIクイック構成
この例を迅速に設定するには、以下のコマンドをコピーして、テキストファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピーアンドペーストして、設定モードから commit を入力します。
ルーターCE1
set interfaces ge-0/0/0 unit 0 family inet address 172.16.12.1/30 set interfaces lo0 unit 0 family inet address 172.16.255.1/32 primary set interfaces lo0 unit 0 family inet address 192.168.255.1/32 set routing-options router-id 172.16.255.1 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
ルーターPE1
set interfaces ge-0/0/0 unit 0 family inet address 172.16.12.2/30 set interfaces ge-0/0/2 unit 0 family inet address 10.1.23.1/30 set interfaces ge-0/0/2 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.1.255.2/32 primary set interfaces lo0 unit 1 family inet address 10.1.255.22/32 set policy-options policy-statement bgp-to-ospf from protocol bgp set policy-options policy-statement bgp-to-ospf then accept set policy-options policy-statement pplb then load-balance per-packet set routing-instances VPN-l3vpn instance-type vrf set routing-instances VPN-l3vpn protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set routing-instances VPN-l3vpn protocols ospf area 0.0.0.0 interface lo0.1 passive set routing-instances VPN-l3vpn protocols ospf export bgp-to-ospf set routing-instances VPN-l3vpn interface ge-0/0/0.0 set routing-instances VPN-l3vpn interface lo0.1 set routing-instances VPN-l3vpn route-distinguisher 10.1.255.2:1 set routing-instances VPN-l3vpn vrf-target target:65000:1 set routing-options router-id 10.1.255.2 set routing-options autonomous-system 65000 set routing-options forwarding-table export pplb set protocols bgp group ibgp type internal set protocols bgp group ibgp local-address 10.1.255.2 set protocols bgp group ibgp family inet labeled-unicast entropy-label set protocols bgp group ibgp neighbor 10.1.255.4 family inet labeled-unicast rib inet.3 set protocols bgp group ibgp neighbor 10.1.255.6 family inet-vpn unicast set protocols mpls icmp-tunneling set protocols mpls label-switched-path pe1-abr to 10.1.255.4 set protocols mpls label-switched-path pe1-abr entropy-label set protocols mpls interface ge-0/0/2.0 set protocols mpls interface lo0.0 set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols rsvp interface ge-0/0/2.0 set protocols rsvp interface lo0.0
ルーターP1
set interfaces ge-0/0/0 unit 0 family inet address 10.1.23.2/30 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 10.1.34.1/30 set interfaces ge-0/0/2 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.1.255.3/32 primary set routing-options router-id 10.1.255.3 set protocols mpls icmp-tunneling set protocols mpls interface ge-0/0/0.0 set protocols mpls interface lo0.0 set protocols mpls interface ge-0/0/2.0 set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 set protocols rsvp interface ge-0/0/0.0 set protocols rsvp interface lo0.0 set protocols rsvp interface ge-0/0/2.0
ルーターABR
set interfaces ge-0/0/0 unit 0 family inet address 10.1.34.2/30 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 10.1.45.1/30 set interfaces ge-0/0/2 unit 0 family mpls set interfaces ge-0/0/3 unit 0 family inet address 10.1.45.5/30 set interfaces ge-0/0/3 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.1.255.4/32 primary set forwarding-options hash-key family mpls label-1 set forwarding-options hash-key family mpls label-2 set forwarding-options hash-key family mpls label-3 set forwarding-options enhanced-hash-key family mpls no-payload set policy-options policy-statement pplb then load-balance per-packet set policy-options policy-statement send-inet3-pe1 from route-filter 10.1.255.2/32 exact set policy-options policy-statement send-inet3-pe1 then accept set policy-options policy-statement send-inet3-pe2 from route-filter 10.1.255.6/32 exact set policy-options policy-statement send-inet3-pe2 then accept set routing-options router-id 10.1.255.4 set routing-options autonomous-system 65000 set routing-options forwarding-table export pplb set protocols bgp group ibgp type internal set protocols bgp group ibgp local-address 10.1.255.4 set protocols bgp group ibgp family inet labeled-unicast rib inet.3 set protocols bgp group ibgp neighbor 10.1.255.2 export send-inet3-pe2 set protocols bgp group ibgp neighbor 10.1.255.6 export send-inet3-pe1 set protocols mpls icmp-tunneling set protocols mpls label-switched-path abr-pe1 to 10.1.255.2 set protocols mpls label-switched-path abr-pe1 entropy-label set protocols mpls label-switched-path abr-pe2 to 10.1.255.6 set protocols mpls label-switched-path abr-pe2 entropy-label set protocols mpls label-switched-path abr-pe2 primary to-r6-1 set protocols mpls label-switched-path abr-pe2-2 to 10.1.255.6 set protocols mpls label-switched-path abr-pe2-2 entropy-label set protocols mpls label-switched-path abr-pe2-2 primary to-r6-2 set protocols mpls path to-r6-1 10.1.45.2 strict set protocols mpls path to-r6-1 10.1.56.2 strict set protocols mpls path to-r6-2 10.1.45.6 strict set protocols mpls path to-r6-2 10.1.56.6 strict set protocols mpls interface lo0.0 set protocols mpls interface ge-0/0/0.0 set protocols mpls interface ge-0/0/2.0 set protocols mpls interface ge-0/0/3.0 set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.1 interface ge-0/0/2.0 set protocols ospf area 0.0.0.1 interface ge-0/0/3.0 set protocols rsvp interface lo0.0 set protocols rsvp interface ge-0/0/0.0 set protocols rsvp interface ge-0/0/2.0 set protocols rsvp interface ge-0/0/3.0
ルーターP2
set interfaces ge-0/0/0 unit 0 family inet address 10.1.45.2/30 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 10.1.45.6/30 set interfaces ge-0/0/1 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 10.1.56.1/30 set interfaces ge-0/0/2 unit 0 family mpls set interfaces ge-0/0/3 unit 0 family inet address 10.1.56.5/30 set interfaces ge-0/0/3 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.1.255.5/32 primary set forwarding-options hash-key family mpls label-1 set forwarding-options hash-key family mpls label-2 set forwarding-options hash-key family mpls label-3 set forwarding-options enhanced-hash-key family mpls no-payload set policy-options policy-statement pplb then load-balance per-packet set routing-options router-id 10.1.255.5 set routing-options forwarding-table export pplb set protocols mpls icmp-tunneling set protocols mpls interface ge-0/0/2.0 set protocols mpls interface lo0.0 set protocols mpls interface ge-0/0/0.0 set protocols mpls interface ge-0/0/1.0 set protocols mpls interface ge-0/0/3.0 set protocols ospf traffic-engineering set protocols ospf area 0.0.0.1 interface lo0.0 passive set protocols ospf area 0.0.0.1 interface ge-0/0/2.0 set protocols ospf area 0.0.0.1 interface ge-0/0/0.0 set protocols ospf area 0.0.0.1 interface ge-0/0/1.0 set protocols ospf area 0.0.0.1 interface ge-0/0/3.0 set protocols rsvp interface ge-0/0/2.0 set protocols rsvp interface lo0.0 set protocols rsvp interface ge-0/0/0.0 set protocols rsvp interface ge-0/0/1.0 set protocols rsvp interface ge-0/0/3.0
ルーターPE2
set interfaces ge-0/0/0 unit 0 family inet address 10.1.56.2/30 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 10.1.56.6/30 set interfaces ge-0/0/1 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 172.16.67.2/30 set interfaces lo0 unit 0 family inet address 10.1.255.6/32 primary set interfaces lo0 unit 1 family inet address 10.1.255.66/32 set forwarding-options hash-key family mpls label-1 set forwarding-options hash-key family mpls label-2 set forwarding-options hash-key family mpls label-3 set forwarding-options enhanced-hash-key family mpls no-payload set policy-options policy-statement bgp-to-ospf from protocol bgp set policy-options policy-statement bgp-to-ospf then accept set policy-options policy-statement pplb then load-balance per-packet set routing-instances VPN-l3vpn instance-type vrf set routing-instances VPN-l3vpn protocols ospf area 0.0.0.0 interface ge-0/0/2.0 set routing-instances VPN-l3vpn protocols ospf area 0.0.0.0 interface lo0.1 passive set routing-instances VPN-l3vpn protocols ospf export bgp-to-ospf set routing-instances VPN-l3vpn interface ge-0/0/2.0 set routing-instances VPN-l3vpn interface lo0.1 set routing-instances VPN-l3vpn route-distinguisher 10.1.255.6:1 set routing-instances VPN-l3vpn vrf-target target:65000:1 set routing-options router-id 10.1.255.6 set routing-options autonomous-system 65000 set routing-options forwarding-table export pplb set protocols bgp group ibgp type internal set protocols bgp group ibgp local-address 10.1.255.6 set protocols bgp group ibgp family inet labeled-unicast entropy-label set protocols bgp group ibgp neighbor 10.1.255.4 family inet labeled-unicast rib inet.3 set protocols bgp group ibgp neighbor 10.1.255.2 family inet-vpn unicast set protocols mpls icmp-tunneling set protocols mpls label-switched-path pe2-abr to 10.1.255.4 set protocols mpls label-switched-path pe2-abr entropy-label set protocols mpls interface ge-0/0/0.0 set protocols mpls interface lo0.0 set protocols mpls interface ge-0/0/1.0 set protocols ospf traffic-engineering set protocols ospf area 0.0.0.1 interface ge-0/0/0.0 set protocols ospf area 0.0.0.1 interface lo0.0 passive set protocols ospf area 0.0.0.1 interface ge-0/0/1.0 set protocols rsvp interface ge-0/0/0.0 set protocols rsvp interface lo0.0 set protocols rsvp interface ge-0/0/1.0
ルーターCE2
set interfaces ge-0/0/0 unit 0 family inet address 172.16.67.1/30 set interfaces lo0 unit 0 family inet address 172.16.255.7/32 primary set interfaces lo0 unit 0 family inet address 192.168.255.7/32 set routing-options router-id 172.16.255.7 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 set protocols ospf area 0.0.0.0 interface lo0.0 passive
ルーターPE1の設定
ステップバイステップでの手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLI のナビゲーションについては、CLIユーザー・ガイド の コンフィギュレーション・モードでのCLIエディタの使用を参照してください。
ルーターPE1を設定するには:
適切なインターフェイス名、アドレス、およびその他のパラメーターに変更した後、ルーターPE2のこの手順を繰り返します。
-
物理インターフェイスの設定を行います。
family mplsをコアフェーシングインターフェイスで設定することを確認してください。[edit] user@PE1# set interfaces ge-0/0/0 unit 0 family inet address 172.16.12.2/30 user@PE1# set interfaces ge-0/0/2 unit 0 family inet address 10.1.23.1/30 user@PE1# set interfaces ge-0/0/2 unit 0 family mpls
-
ループバックインターフェイスを設定します。セカンダリループバックはオプションであり、後のステップにおいてルーティングインスタンスの下で適用されます。
[edit] user@PE1# set interfaces lo0 unit 0 family inet address 10.1.255.2/32 primary user@PE1# set interfaces lo0 unit 1 family inet address 10.1.255.22/32
-
ルーターIDと自律システム番号を設定します。
[edit] user@PE1# set routing-options router-id 10.1.255.2 user@PE1# set routing-options autonomous-system 65000
-
OSPFプロトコルを設定します。
[edit] user@PE1# set protocols ospf traffic-engineering user@PE1# set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 user@PE1# set protocols ospf area 0.0.0.0 interface lo0.0 passive
-
RSVPプロトコルを設定します。
[edit] user@PE1# set protocols rsvp interface ge-0/0/2.0 user@PE1# set protocols rsvp interface lo0.0
-
ABRに向けてMPLSプロトコルとLSPを設定します。
entropy-labelMPLSラベルスタックにエントロピーラベルを追加するオプションを含めます。[edit protocols] user@PE1# set protocols mpls icmp-tunneling user@PE1# set protocols mpls label-switched-path pe1-abr to 10.1.255.4 user@PE1# set protocols mpls label-switched-path pe1-abr entropy-label user@PE1# set protocols mpls interface ge-0/0/2.0 user@PE1# set protocols mpls interface lo0.0
-
ABRピアリング
family inet labeled-unicastとPE2ピアリングfamily inet-vpnのためにを使用してIBGPを設定します。BGPラベル付きユニキャストのエントロピーラベル機能を有効にします。[edit] user@PE1# set protocols bgp group ibgp type internal user@PE1# set protocols bgp group ibgp local-address 10.1.255.2 user@PE1# set protocols bgp group ibgp family inet labeled-unicast entropy-label user@PE1# set protocols bgp group ibgp neighbor 10.1.255.4 family inet labeled-unicast rib inet.3 user@PE1# set protocols bgp group ibgp neighbor 10.1.255.6 family inet-vpn unicast
-
BGP VPNルートをOSPFにエクスポートするポリシーを定義します。ポリシーは、ルーティングインスタンスにおいてOSPFの下で適用されます。
[edit] user@PE1# set policy-options policy-statement bgp-to-ospf from protocol bgp user@PE1# set policy-options policy-statement bgp-to-ospf then accept
-
ロードバランシングポリシー
routing-options forwarding-tableを定義し、の下にそれを適用します。PE1はサンプルに1つのパスしかないため、このステップは必要ありませんが、この例では、すべてのデバイスに同じロードバランシングポリシーを適用しています。[edit] user@PE1# set policy-options policy-statement pplb then load-balance per-packet user@PE1# set routing-options forwarding-table export pplb
-
レイヤー3 VPNルーティングインスタンスを設定します。
[edit] user@PE1# set routing-instances VPN-l3vpn instance-type vrf
-
ルーティングインスタンスへのインターフェイスを割り当てます。
[edit] user@PE1# set routing-instances VPN-l3vpn interface ge-0/0/0.0 user@PE1# set routing-instances VPN-l3vpn interface lo0.1
-
ルーティングインスタンスのルート識別子を設定します。
[edit] user@PE1# set routing-instances VPN-l3vpn route-distinguisher 10.1.255.2:1
-
ルーティングインスタンス用のVPNルーティングと転送(VRF)ターゲットを設定します。
[edit] user@PE1# set routing-instances VPN-l3vpn vrf-target target:65000:1
-
ルーティングインスタンスの下でプロトコルOSPFを設定し、以前に設定された
bgp-to-ospfポリシーを適用します。[edit] user@PE1# set routing-instances VPN-l3vpn protocols ospf area 0.0.0.0 interface ge-0/0/0.0 user@PE1# set routing-instances VPN-l3vpn protocols ospf area 0.0.0.0 interface lo0.1 passive user@PE1# set routing-instances VPN-l3vpn protocols ospf export bgp-to-ospf
ルーターP1の設定
ステップバイステップでの手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLI のナビゲーションについては、CLIユーザー・ガイド の コンフィギュレーション・モードでのCLIエディタの使用を参照してください。
ルーターP1を設定するには:
適切なインターフェイス名、アドレス、およびその他のパラメーターを変更した後、ルーターP2を対象にしたこの手順を繰り返します。
-
物理インターフェイスの設定を行います。
[edit] user@P1# set interfaces ge-0/0/0 unit 0 family inet address 10.1.23.2/30 user@P1# set interfaces ge-0/0/0 unit 0 family mpls user@P1# set interfaces ge-0/0/2 unit 0 family inet address 10.1.34.1/30 user@P1# set interfaces ge-0/0/2 unit 0 family mpls
-
ループバックインターフェイスを設定します。
[edit] user@P1# set interfaces lo0 unit 0 family inet address 10.1.255.3/32 primary
-
ルーターIDを設定します。
[edit] user@P1# set routing-options router-id 10.1.255.3
-
OSPFプロトコルを設定します。
[edit] user@P1# set protocols ospf traffic-engineering user@P1# set protocols ospf area 0.0.0.0 interface lo0.0 passive user@P1# set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 user@P1# set protocols ospf area 0.0.0.0 interface ge-0/0/2.0
-
RSVPプロトコルを設定します。
[edit] user@P1# set protocols rsvp interface ge-0/0/0.0 user@P1# set protocols rsvp interface lo0.0 user@P1# set protocols rsvp interface ge-0/0/2.0
-
MPLSプロトコルを設定します。
[edit] user@P1# set protocols mpls icmp-tunneling user@P1# set protocols mpls interface ge-0/0/0.0 user@P1# set protocols mpls interface lo0.0 user@P1# set protocols mpls interface ge-0/0/2.0
ルーターABRの設定
ステップバイステップでの手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLI のナビゲーションについては、CLIユーザー・ガイド の コンフィギュレーション・モードでのCLIエディタの使用を参照してください。
ルーターABRを設定するには:
-
物理インターフェイスの設定を行います。
[edit] user@ABR# set interfaces ge-0/0/0 unit 0 family inet address 10.1.34.2/30 user@ABR# set interfaces ge-0/0/0 unit 0 family mpls user@ABR# set interfaces ge-0/0/2 unit 0 family inet address 10.1.45.1/30 user@ABR# set interfaces ge-0/0/2 unit 0 family mpls user@ABR# set interfaces ge-0/0/3 unit 0 family inet address 10.1.45.5/30 user@ABR# set interfaces ge-0/0/3 unit 0 family mpls
-
ループバックインターフェイスを設定します。
[edit] user@ABR# set interfaces lo0 unit 0 family inet address 10.1.255.4/32 primary
-
負荷分散のための宛先にパケットをハッシュするのにルーターが使用するMPLSラベルを設定します。
[edit] user@ABR# set forwarding-options hash-key family mpls label-1 user@ABR# set forwarding-options hash-key family mpls label-2 user@ABR# set forwarding-options hash-key family mpls label-3 user@ABR# set forwarding-options enhanced-hash-key family mpls no-payload
-
ルーターIDと自律システム番号を設定します。
[edit] user@ABR# set routing-options router-id 10.1.255.4 user@ABR# set routing-options autonomous-system 65000
-
OSPFプロトコルを設定します。
[edit] user@ABR# set protocols ospf traffic-engineering user@ABR# set protocols ospf area 0.0.0.0 interface lo0.0 passive user@ABR# set protocols ospf area 0.0.0.0 interface ge-0/0/0.0 user@ABR# set protocols ospf area 0.0.0.1 interface ge-0/0/2.0 user@ABR# set protocols ospf area 0.0.0.1 interface ge-0/0/3.0
-
RSVPプロトコルを設定します。
[edit] user@ABR# set protocols rsvp interface lo0.0 user@ABR# set protocols rsvp interface ge-0/0/0.0 user@ABR# set protocols rsvp interface ge-0/0/2.0 user@ABR# set protocols rsvp interface ge-0/0/3.0
-
MPLSプロトコルを設定し、PE1とPE2に向けてLSPを指定します。2つのLSPは、異なるLSPとインターフェイスが使用されていることを示すために、ロードバランシングトラフィックをPE2に向けて作成されます。
[edit] user@ABR# set protocols mpls icmp-tunneling user@ABR# set protocols mpls label-switched-path abr-pe1 to 10.1.255.2 user@ABR# set protocols mpls label-switched-path abr-pe1 entropy-label user@ABR# set protocols mpls label-switched-path abr-pe2 to 10.1.255.6 user@ABR# set protocols mpls label-switched-path abr-pe2 entropy-label user@ABR# set protocols mpls label-switched-path abr-pe2 primary to-r6-1 user@ABR# set protocols mpls label-switched-path abr-pe2-2 to 10.1.255.6 user@ABR# set protocols mpls label-switched-path abr-pe2-2 entropy-label user@ABR# set protocols mpls label-switched-path abr-pe2-2 primary to-r6-2 user@ABR# set protocols mpls path to-r6-1 10.1.45.2 strict user@ABR# set protocols mpls path to-r6-1 10.1.56.2 strict user@ABR# set protocols mpls path to-r6-2 10.1.45.6 strict user@ABR# set protocols mpls path to-r6-2 10.1.56.6 strict user@ABR# set protocols mpls interface lo0.0 user@ABR# set protocols mpls interface ge-0/0/0.0 user@ABR# set protocols mpls interface ge-0/0/2.0 user@ABR# set protocols mpls interface ge-0/0/3.0
-
family inet labeled-unicastを使用して、IBGPをPE1とPE2の両方に設定します。ポリシーを適用して、PE1とPE2の両方からinet.3ループバックルートをアドバタイズします。次のステップでポリシーを紹介します。[edit] user@ABR# set protocols bgp group ibgp type internal user@ABR# set protocols bgp group ibgp local-address 10.1.255.4 user@ABR# set protocols bgp group ibgp family inet labeled-unicast rib inet.3 user@ABR# set protocols bgp group ibgp neighbor 10.1.255.2 export send-inet3-pe2 user@ABR# set protocols bgp group ibgp neighbor 10.1.255.6 export send-inet3-pe1
-
PE1とPE2のループバックアドレスで一致するポリシーを定義します。
[edit] user@ABR# set policy-options policy-statement send-inet3-pe1 from route-filter 10.1.255.2/32 exact user@ABR# set policy-options policy-statement send-inet3-pe1 then accept user@ABR# set policy-options policy-statement send-inet3-pe2 from route-filter 10.1.255.6/32 exact user@ABR# set policy-options policy-statement send-inet3-pe2 then accept
-
ロードバランシング用のポリシーを定義し、
routing-options forwarding-tableの下にそれを適用します。[edit] user@ABR# set policy-options policy-statement pplb then load-balance per-packet user@ABR# set routing-options forwarding-table export pplb
(オプション)ポートミラーリング設定
適用されたエントロピーラベルを表示するには、トラフィックをキャプチャできます。この例では、P1のPE1向けのインターフェイスにフィルターを適用して、CE1からCE2トラフィックをキャプチャします。トラフィックは、ホスト1に送信されて表示されます。この例では、トラフィックをキャプチャするさまざまな方法があります。詳細については、ポートミラーリングとアナライザについてを参照してください。
ステップバイステップでの手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLI のナビゲーションについては、CLIユーザー・ガイド の コンフィギュレーション・モードでのCLIエディタの使用を参照してください。
ルーターP1を設定するには:
-
インターフェイスを設定します。この例では、Host1に接続されたインターフェイスをブリッジドメインに配置し、Host1への接続を検証するためのIRBインターフェイスを作成します。
[edit] user@P1# set interfaces ge-0/0/4 unit 0 family bridge interface-mode access user@P1# set interfaces ge-0/0/4 unit 0 family bridge vlan-id 100 user@P1# set interfaces irb unit 0 family inet address 10.1.31.1/30
-
ブリッジドメインを設定します。
[edit] user@P1# set bridge-domains v100 vlan-id 100 user@P1# set bridge-domains v100 routing-interface irb.0
-
トラフィックをキャプチャするためにフィルターを設定します。この例では、すべてのトラフィックをキャプチャしています。
[edit] user@P1# set firewall family any filter test term 1 then count test user@P1# set firewall family any filter test term 1 then port-mirror user@P1# set firewall family any filter test term 1 then accept
-
フィルターをPE1向けのインターフェイスに適用します。
[edit] user@P1# set interfaces ge-0/0/0 unit 0 filter input test
-
ポートミラーリングオプションを設定します。この例では、すべてのトラフィックをミラーリングし、インターフェイスge-0/0/4に接続されたHost1に送信しています。
[edit] user@P1# set forwarding-options port-mirroring input rate 1 user@P1# set forwarding-options port-mirroring family any output interface ge-0/0/4.0
検証
設定が正常に機能していることを確認します。
- エントロピーラベル機能がアドバタイズされていることの検証
- ルーターPE1がエントロピーラベルアドバタイズメントを受け取ることを確認
- ABRからPE2でECMPを検証する
- PE1でCE2へのルートを表示する
- CE1からCE2にPing
- ロードバランシングを検証する
- エントロピーラベルを検証する
エントロピーラベル機能がアドバタイズされていることの検証
目的
エントロピーラベル機能パス属性が、PE2へのルート用にABRからPE1にアドバタイズされていることを確認します。
アクション
運用モードから、ルーターABRのshow route advertising-protocol bgp 10.1.255.2 detailコマンドを実行します。
user@ABR> show route advertising-protocol bgp 10.1.255.2 detail
inet.3: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden)
* 10.1.255.6/32 (1 entry, 1 announced)
BGP group ibgp type Internal
Route Label: 299952
Nexthop: Self
Flags: Nexthop Change
MED: 2
Localpref: 4294967294
AS path: [65000] I
Entropy label capable
意味
出力からは、IPアドレスが10.1.255.6であるホストPE2が、エントロピーラベル機能と使用されるルートラベルを持っていることがわかります。ホストは、BGPネイバーにエントロピーラベル機能をアドバタイズしています。
ルーターPE1がエントロピーラベルアドバタイズメントを受け取ることを確認
目的
ルーターPE1が、ルーターPE2のエントロピーラベルアドバタイズメントを受信していることを確認します。
アクション
運用モードから、ルーターPE1のshow route protocol bgp 10.1.255.6 extensiveコマンドを実行します。
user@PE1> show route protocol bgp 10.1.255.6 extensive
inet.0: 19 destinations, 19 routes (19 active, 0 holddown, 0 hidden)
inet.3: 2 destinations, 2 routes (2 active, 0 holddown, 0 hidden)
10.1.255.6/32 (1 entry, 1 announced)
*BGP Preference: 170/1
Next hop type: Indirect, Next hop index: 0
Address: 0x7b3ffd4
Next-hop reference count: 2, key opaque handle: 0x0, non-key opaque handle: 0x0
Source: 10.1.255.4
Next hop type: Router, Next hop index: 0
Next hop: 10.1.23.2 via ge-0/0/2.0, selected
Label-switched-path pe1-abr
Label operation: Push 299952, Push 299808(top)
Label TTL action: prop-ttl, prop-ttl(top)
Load balance label: Label 299952: Entropy label; Label 299808: None;
Label element ptr: 0x93d6bf8
Label parent element ptr: 0x93d6c20
Label element references: 3
Label element child references: 2
Label element lsp id: 0
Session Id: 0
Protocol next hop: 10.1.255.4
Label operation: Push 299952
Label TTL action: prop-ttl
Load balance label: Label 299952: Entropy label;
Indirect next hop: 0x758c05c - INH Session ID: 0
State: <Active Int Ext>
Local AS: 65000 Peer AS: 65000
Age: 1:33:11 Metric: 2 Metric2: 2
Validation State: unverified
Task: BGP_65000.10.1.255.4
Announcement bits (2): 3-Resolve tree 1 4-Resolve_IGP_FRR task
AS path: I
Accepted
Route Label: 299952
Localpref: 4294967294
Router ID: 10.1.255.4
Session-IDs associated:
Session-id: 324 Version: 3
Thread: junos-main
Indirect next hops: 1
Protocol next hop: 10.1.255.4 Metric: 2 ResolvState: Resolved
Label operation: Push 299952
Label TTL action: prop-ttl
Load balance label: Label 299952: Entropy label;
Indirect next hop: 0x758c05c - INH Session ID: 0
Indirect path forwarding next hops: 1
Next hop type: Router
Next hop: 10.1.23.2 via ge-0/0/2.0
Session Id: 0
10.1.255.4/32 Originating RIB: inet.3
Metric: 2 Node path count: 1
Forwarding nexthops: 1
Next hop type: Router
Next hop: 10.1.23.2 via ge-0/0/2.0
Session Id: 0意味
ルーターPE1は、BGPネイバーからエントロピーラベル機能アドバタイズメントを受信します。
ABRからPE2でECMPを検証する
目的
PE2への等価コストマルチパス(ECMP)を検証します。
アクション
運用モードから、とルーターABRのコマshow route forwarding-table label <label>ンドを実行しますshow route table mpls.0。
user@ABR> show route table mpls.0
mpls.0: 6 destinations, 6 routes (6 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
0 *[MPLS/0] 2w1d 23:02:11, metric 1
Receive
1 *[MPLS/0] 2w1d 23:02:11, metric 1
Receive
2 *[MPLS/0] 2w1d 23:02:11, metric 1
Receive
13 *[MPLS/0] 2w1d 23:02:11, metric 1
Receive
299936 *[VPN/170] 2d 21:47:02
> to 10.1.34.1 via ge-0/0/0.0, label-switched-path abr-pe1
299952 *[VPN/170] 2d 21:47:02
> to 10.1.45.2 via ge-0/0/2.0, label-switched-path abr-pe2
to 10.1.45.6 via ge-0/0/3.0, label-switched-path abr-pe2-2
ruser@ABR> show route forwarding-table label 299952
Routing table: default.mpls
MPLS:
Destination Type RtRef Next hop Type Index NhRef Netif
299952 user 0 ulst 1048575 2
10.1.45.2 Swap 299824 516 2 ge-0/0/2.0
10.1.45.6 Swap 299840 572 2 ge-0/0/3.0
...意味
出力には、BGPラベル付きユニキャストルートに使用されるラベルのECMPが表示されます。
PE1でCE2へのルートを表示する
目的
CE2へのルートを確認します。
アクション
運用モードから、ルーターPE1でshow route table VPN-l3vpn.inet.0 172.16.255.7 extensiveとのshow route table VPN-l3vpn.inet.0 192.168.255.7 extensiveコマンドを実行します。
user@PE1> show route table VPN-l3vpn.inet.0 172.16.255.7 extensive
VPN-l3vpn.inet.0: 10 destinations, 10 routes (10 active, 0 holddown, 0 hidden)
172.16.255.7/32 (1 entry, 1 announced)
TSI:
OSPF area : 0.0.0.0, LSA ID : 172.16.255.7, LSA type : Summary
KRT in-kernel 172.16.255.7/32 -> {indirect(1048574)}
*BGP Preference: 170/-101
Route Distinguisher: 10.1.255.6:1
Next hop type: Indirect, Next hop index: 0
Address: 0x7b40434
Next-hop reference count: 9, key opaque handle: 0x0, non-key opaque handle: 0x0
Source: 10.1.255.6
Next hop type: Router, Next hop index: 515
Next hop: 10.1.23.2 via ge-0/0/2.0, selected
Label-switched-path pe1-abr
Label operation: Push 299824, Push 299952, Push 299808(top)
Label TTL action: prop-ttl, prop-ttl, prop-ttl(top)
Load balance label: Label 299824: None; Label 299952: Entropy label; Label 299808: None;
Label element ptr: 0x93d6c98
Label parent element ptr: 0x93d6bf8
Label element references: 1
Label element child references: 0
Label element lsp id: 0
Session Id: 140
Protocol next hop: 10.1.255.6
Label operation: Push 299824
Label TTL action: prop-ttl
Load balance label: Label 299824: None;
...
user@PE1> show route table VPN-l3vpn.inet.0 192.168.255.7 extensive
VPN-l3vpn.inet.0: 10 destinations, 10 routes (10 active, 0 holddown, 0 hidden)
192.168.255.7/32 (1 entry, 1 announced)
TSI:
OSPF area : 0.0.0.0, LSA ID : 192.168.255.7, LSA type : Summary
KRT in-kernel 192.168.255.7/32 -> {indirect(1048574)}
*BGP Preference: 170/-101
Route Distinguisher: 10.1.255.6:1
Next hop type: Indirect, Next hop index: 0
Address: 0x7b40434
Next-hop reference count: 9, key opaque handle: 0x0, non-key opaque handle: 0x0
Source: 10.1.255.6
Next hop type: Router, Next hop index: 515
Next hop: 10.1.23.2 via ge-0/0/2.0, selected
Label-switched-path pe1-abr
Label operation: Push 299824, Push 299952, Push 299808(top)
Label TTL action: prop-ttl, prop-ttl, prop-ttl(top)
Load balance label: Label 299824: None; Label 299952: Entropy label; Label 299808: None;
Label element ptr: 0x93d6c98
Label parent element ptr: 0x93d6bf8
Label element references: 1
Label element child references: 0
Label element lsp id: 0
Session Id: 140
Protocol next hop: 10.1.255.6
Label operation: Push 299824
Label TTL action: prop-ttl
Load balance label: Label 299824: None;
...意味
出力からは、両方のルートに同じラベルが使用されていることがわかります。
CE1からCE2にPing
目的
接続を確認し、ロードバランシングの検証に使用します。
アクション
運用モードから、ルーターPE1でping 172.16.255.7 source 172.16.12.1 rapid count 100とのping 192.168.255.7 source 192.168.255.1 rapid count 200コマンドを実行します。
user@CE1> ping 172.16.255.7 source 172.16.12.1 rapid count 100 PING 172.16.255.7 (172.16.255.7): 56 data bytes !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --- 172.16.255.7 ping statistics --- 100 packets transmitted, 100 packets received, 0% packet loss round-trip min/avg/max/stddev = 5.369/6.070/8.828/0.612 ms user@CE1> ping 192.168.255.7 source 192.168.255.1 rapid count 200 PING 192.168.255.7 (192.168.255.7): 56 data bytes !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --- 192.168.255.7 ping statistics --- 200 packets transmitted, 200 packets received, 0% packet loss round-trip min/avg/max/stddev = 5.086/5.994/10.665/0.649 ms
意味
出力からは、pingsが成功したことがわかります。
ロードバランシングを検証する
目的
ロードバランシングを検証します。
アクション
運用モードから、ABRでshow mpls lsp ingress statisticsコマンドを実行します。
user@ABR> show mpls lsp ingress statistics Ingress LSP: 3 sessions To From State Packets Bytes LSPname 10.1.255.2 10.1.255.4 Up 300 30000 abr-pe1 10.1.255.6 10.1.255.4 Up 200 20000 abr-pe2 10.1.255.6 10.1.255.4 Up 100 10000 abr-pe2-2 Total 3 displayed, Up 3, Down 0
意味
出力からは、以前のコマンドからの1番目のpingはLSPabr-pe2-2を、2番目のpingはLSPabr-pe2を使ったことがわかります。
エントロピーラベルを検証する
目的
エントロピーラベルが、使用されたpings間で異なっていることを確認します。
アクション
ホスト1で、tcpdump -i eth1 -nを実行します。
user@Host1# tcpdump -i eth1 -n ... 13:42:31.993274 MPLS (label 299808, exp 0, ttl 63) (label 299952, exp 0, ttl 63) (label 7, exp 0, ttl 63) (label 1012776, exp 0, ttl 0) (label 299824, exp 0, [S], ttl 63) IP 172.16.12.1 > 172.16.255.7: ICMP echo request, id 32813, seq 9, length 64 ... 13:43:19.570260 MPLS (label 299808, exp 0, ttl 63) (label 299952, exp 0, ttl 63) (label 7, exp 0, ttl 63) (label 691092, exp 0, ttl 0) (label 299824, exp 0, [S], ttl 63) IP 192.168.255.1 > 192.168.255.7: ICMP echo request, id 46381, seq 9, length 64
意味
出力には、2つの異なるpingコマンドのエントロピーラベルの異なる値が表示されます。
RSVP信号化MPLS LSPに最終ホップポッピングを設定する
デフォルトでは、RSVPシグナル化されたLSPは、PHP(最後から2番目のホップポッピング)を使用します。図 4は、ルーターPE1とルーターPE2の間の最後から2番目のホップポッピングLSPを表しています。ルーターCE1は、パケットをそのネクストホップ(ルーターPE1)に転送します。それは、LSP ingressでもあります。ルーターPE1は、パケットにラベル1をプッシュし、ラベル付きパケットをルーターP1に転送します。ルーターP1は、ラベル1とラベル2を入れ替える、標準的なMPLSラベル入れ替え操作を完了させ、パケットをルーターP2に転送します。ルーターP2は、LSPにとってルーターPE2に次ぐ最後から2番目のホップルーターのため、まずラベルをポップし、次にパケットをルーターPE2に転送します。ルーターPE2がそれを受信すると、パケットはサービスラベル、明示的nullラベル、もしくは普通のIPかVPLSを得ることができます。ルーターPE2は、ラベルなしのパケットをルーターCE2に転送します。

また、RSVPがシグナルしたLSPに、UHP(最後のホップポッピング)(図 5で表示)を設定することもできます。一部のネットワークアプリケーションは、パケットが非nullの外側ラベルとともにegressルーター(ルーターPE2)に到達することを求めることがあります。最後のホップポッピングLSPに対して、最後から2番目のルーター(図 5のルーターP2)は、標準的なMPLSラベル入れ替え操作(この例では、ラベル2をラベル3に入れ替え)をegressルーターPE2にパケットを転送する前に実行します。ルーターPE2は、外側ラベルをポップし、2回目のパケットアドレスのルックアップをして、最終宛先を決定します。そして、次に適切な宛先(ルーターCE2かルーターCE4)にパケットを転送します。

以下のネットワークアプリケーションには、UHPのLSPを設定する必要があります。
パフォーマンス監視とインバンドOAMのためのMPLS-TP
エッジ保護仮想回線
以下の機能はUHP動作に対応していません。
LDPシグナルのLSP
静的LSP
ポイントツーマルチポイントLSP
CCC
tracerouteコマンド
UHP動作の詳細については、インターネットドラフトdraft-ietf-mpls-rsvp-te-no-php-oob-mapping-01.txt、非PHP動作、RSVP-TEのLSPのアウトオブバンドマッピングをご覧ください。
ポイントツーポイントRSVP信号化LSPに対して、UHP動作はLSP ingressからシグナルされます。ingressルーター設定に基づいて、RSVPは、非PHPフラグセットでUHPのLSPをシグナルできます。RSVPパスメッセージは、LSP属性オブジェクトで2つのフラグを伝送します。egressルーターがパスメッセージを受信すると、非nullラベルをLSPに割り当てます。また、RSVPはmpls.0ルーティングテーブルで2つのルートを作成し、インストールします。Sは、MPLSラベルのSビットを表し、最下部のラベルスタックに到達したかどうかを示します。
ルートS=0—スタックに、まだラベルが存在することを表します。このルートのネクストホップは、mpls.0ルーティングテーブルを指し示し、連鎖されたMPLSラベルルックアップをトリガーし、スタックにある残りのMPLSラベルを見つけ出します。
ルートS=1—ラベルがもう存在しないことを表しています。このネクストホップは、プラットフォームが連鎖されたルックアップとマルチファミリのルックアップに対応している場合、inet.0ルーティングテーブルを指し示します。または、ラベルルートは、VTインターフェイスを指し示し、IP転送を開始します。
UHP LSPを有効にすると、レイヤー3VPN、VPLS、レイヤー2VPN、レイヤー2回線などのMPLSアプリケーションはUHP LSPを使用することができます。以下で、どのようにUHP LSPがMPLSアプリケーションの異なるタイプに影響を与えるかを説明します。
レイヤー2 VPNとレイヤー2回線—1つのパケットが2つのラベルとともにPEルーター(UHP LSPのegress)に到達します。外側ラベル(S=0)はUHPラベルで、内側ラベル(S=1)はVCラベルです。トランスポートラベルに基づくルックアップは、mpls.0ルーティングテーブルのテーブルハンドルを獲得します。内側ラベルに該当するmpls.0ルーティングテーブルには、追加ルートがあります。内側ラベルに基づくルックアップは、CEルーターネクストホップを獲得します。
レイヤー3VPN—1つパケットが2つのラベルとともにPEルーター(UHP LSPのegress)に到達します。外側ラベル(S=0)はUHPラベルで、内側ラベル(S=1)はVPNラベル(S=1)です。トランスポートラベルに基づくルックアップは、mpls.0ルーティングテーブルのテーブルハンドルを獲得します。このシナリオには2つのケースがあります。デフォルトでは、レイヤー3VPNはネクストホップラベルごとにアドバタイズします。内側ラベルに基づくルックアップは、CEルーターに向かうネクストホップを獲得します。ただし、レイヤー3VPNルーティングインスタンスに
vrf-table-labelのステートメントを設定した場合、内側LSIラベルがVRFルーティングテーブルを指し示します。VRFルーティングテーブルのIPルックアップも完了します。注:vrf-table-labelのステートメントで設定されたレイヤー3VPNのUHPは、MXシリーズ5Gユニバーサルルーティングプラットフォーム上だけで対応されています。VPLS—1つのパケットが2つのラベルとともに、PEルーター(UHP LSPのegress)に到達します。外側ラベルは、トランスポートラベル(S=0)で、内側ラベルはVPLSラベル(S=1)です。トランスポートラベルに基づくルックアップは、mpls.0ルーティングテーブルのテーブルハンドルを獲得します。mpls.0ルーティングテーブルの内側ラベルに基づくルックアップは、トンネルサービスが設定されていない(もしくはVTインターフェイスが利用できない)場合、VPLSルーティングインスタンスのLSIトンネルインターフェイスを獲得します。MX 3Dシリーズルーターは連鎖されたルックアップとマルチファミリのルックアップに対応しています。
注:no-tunnel-serviceのステートメントで設定されたVPLSのUHPは、MX 3Dシリーズルーターのみで対応されています。MPLS上のIPv4—パケットは1つのラベル(S=1)とともに、PEルーター(UHP LSPのegress)に到達します。このラベルに基づくルックアップは、VTトンネルインターフェイスを返します。もう1つのIPルックアップはVTインターフェイスで完了し、パケットの返送場所を決定します。ルーティングプラットフォームが、マルチファミリや連鎖するルックアップ(例えば、MX 3DルーターやPTXシリーズパケットトランスポートルーター)に対応する場合、ラベルルート(S=1)に基づくルックアップは、inet.0ルーティングテーブルを指し示します。
MPLS上のIPv6—MPLS上IPv6トンネリングに対して、PEルーターはラベル値2を使用して、IPv6ルートを相互にアドバタイズします。これは、IPv6の明示的nullラベルです。結果として、リモートPEルーターから学習するIPv6の転送ネクストホップは、通常2つのラベルをプッシュします。内側ラベルは2で(アドバタイズするPEルーターが他のベンダーのものである場合、異なることもあります)、ルーターラベルはLSPラベルです。パケットは、2つのラベルとともにPEルーター(UHP LSPのegress)に到達します。外側ラベルはトランスポートラベル(S=0)で、内側ラベルはIPv6明示的nullラベル(ラベル2)です。mpls.0ルーティングテーブルの内側ラベルに基づくルックアップは、mpls.0ルーティングテーブルにリダイレクトします。MX 3Dシリーズルーターでは、内側ラベル(ラベル2)は取り除かれ、IPv6ルックアップはinet6.0ルーティングテーブルを使用して実行されています。
PHPとUHP LSPの両方を有効化—同じネットワークパス上で、PHPとUHP LSPの両方を設定できます。
install-nexthopのステートメントとともに正規表現を使用する転送LSPネクストホップを選択することより、PHPとUHPトラフックを分離できます。また、LSPに適切な名称をつけるだけでも、トラフィックを分離できます。
以下のステートメントで、LSPの最終ホップポッピングを有効にできます。特定のLSP上、もしくはルーターで設定されたすべてのingress LSPに、この機能を有効にすることができます。LSP ingressで、以下のステートメントをルーター上で設定します。
明示的なパスLSPの設定
制約付きパスLSP計算の無効化の説明に従って、制約付きパスラベルスイッチパス(LSP)計算を無効にしている場合、手動でLSPを設定したり、LSPにIGPパスをたどらせることができます。
明示的なパスLSPが設定されている場合、指定されたパスに沿ってLSPが確立されます。パスがトポロジーの面から到達できないものである場合、ネットワークがパーティション化されているか、パスの一部で利用可能なリソースが不十分であるため、LSPは失敗に終わります。代替パスは使用できません。設定に成功した場合、LSPは定義されたパスに恒久的にとどまります。
明示的なパスLSPを設定するには、次の手順に従います。
-
指定されたパスの作成の説明に従って、指定されたパス内のパス情報を設定します。完全なパス情報を構成するには、イングレスルーターとエグレスルーターの間のすべてのルーターホップを指定します。なるべく
strict属性を使用してください。不完全なパス情報を設定するには、パスが不完全な場所にはloose属性を使用して、ルーターホップのサブセットのみを指定します。不完全なパスの場合、MPLSルーターはローカルルーティングテーブルをクエリーしてパスを完成させます。このクエリーはホップバイホップでおこなわれ、各ルーターは次の明示的なホップに到達するのに十分な情報のみを把握できます。次の(ルーズ)明示的なホップに到達するために、多くのルーターを通過する必要がある可能性があります。
不完全なパス情報を設定すると、パスに現在のルーティングテーブルに依存する部分が作成され、トポロジーが変更された際に、パスのこの部分が再ルーティングされる可能性があります。このため、不完全なパス情報が含まれる明示的なパスLSPは完全に固定されません。このようなタイプのLSPは、自らを修復する能力が限られており、ローカルルーティングテーブルのコンテンツに応じてループやフラップが形成される傾向にあります。
-
LSPを設定し、指定されたパスにポイントするには、プライマリおよびセカンダリLSPの設定に記載されている説明に従って、
primaryまたはsecondaryステートメントのいずれかを使用します。 -
LSPの一部として、または
primaryあるいはsecondaryステートメントの一部として、no-cspfステートメントを含めて、制約付きパスLSPの計算を無効化します。詳細については、制約付きパスLSP計算の無効化を参照してください。 -
他のLSPプロパティを設定します。
エグレスノードに属する2つ以上のストリクトホップを使用して制約付きパスLSPを定義する際に、最初のストリクトホップを、RSVPパスメッセージを受け取るインターフェイスでエグレスノードに割り当てられたIPアドレスに一致するように設定しなければなりません。受信RSVPパスメッセージが異なるIPアドレスでインターフェイスに届くと、LSPは拒否されます。
Junos OS 20.3X75-D20または22.2R1より前は、RSVPパスメッセージを受信するインターフェイスのIPアドレスに一致するストリクトホップの後にくる、いかなる追加ストリクトホップもエグレスノードに割り当てられたループバックアドレスに一致するように設定されなければなりません。以降のJunosリリースでは、この動作は、エグレスノードのいかなるインターフェイスに割り当てられたIPアドレスに一致する追加のストリクトホップに許可を与えるよう変更されています。
明示的なパスLSPを使用した場合、次の欠点があります。
-
設定作業により多くの労力が必要になります。
-
設定されたパス情報は、動的ネットワーク帯域幅の予約を考慮することができないため、リソースを使い切ったときにはLSPが失敗する傾向にあります。
-
明示的なパスLSPが失敗に終わった場合には、手動で修復する必要が生じる可能性があります。
これらの制限があることから、オフラインのシミュレーションソフトウェアパッケージを使用した計算から得られる最適化されたLSP配置戦略を強制する場合などの、管理された状況下でのみ明示的なパスLSPを使用することが推奨されます。
例:明示的パスLSPの設定
インエグレスルーターで、明示的なパス LSPを作成し、イングイングレスとエグレスルイングレスルーター間のトランジットルーターを指定します。この構成では、制約付きパス計算は行われません。プライマリパスでは、ルートが変更されないように、すべての中間ホップが厳密に指定されています。セカンダリパスは、まずルーター14.1.1.1を経由し、その後、目的地に到達するために利用可能な任意のルートを取る必要があります。セカンダリパスがたどる残りのルートは、通常、IGPによって計算される最短パスです。
エグレスノードに属する2つ以上のストリクトホップを使用して制約付きパスLSPを定義する際に、最初のストリクトホップを、RSVPパスメッセージを受け取るインターフェイスでエグレスノードに割り当てられたIPアドレスに一致するように設定しなければなりません。受信RSVPパスメッセージが異なるIPアドレスでインターフェイスに届くと、LSPは拒否されます。
Junos OS 20.3X75-D20または22.2R1より前は、RSVPパスメッセージを受信するインターフェイスのIPアドレスに一致するストリクトホップの後にくる、いかなる追加ストリクトホップもエグレスノードに割り当てられたループバックアドレスに一致するように設定されなければなりません。以降のJunosリリースでは、この動作は、エグレスノードのいかなるインターフェイスに割り当てられたIPアドレスに一致する追加のストリクトホップに許可を与えるよう変更されています。
[edit]
interfaces {
so-0/0/0 {
unit 0 {
family mpls;
}
}
}
protocols {
rsvp {
interface so-0/0/0;
}
mpls {
path to-hastings {
14.1.1.1 strict;
13.1.1.1 strict;
12.1.1.1 strict;
11.1.1.1 strict;
}
path alt-hastings {
14.1.1.1 strict;
11.1.1.1 loose; # Any IGP route is acceptable
}
label-switched-path hastings {
to 11.1.1.1;
hop-limit 32;
bandwidth 10m; # Reserve 10 Mbps
no-cspf; # do not perform constrained-path computation
primary to-hastings;
secondary alt-hastings;
}
interface so-0/0/0;
}
}
LSP帯域オーバーサブスクリプションの概要
LSPは、LSPを通過すると予想される最大量のトラフィックに対して帯域予約が設定された状態で確立されます。すべてのLSPが常に最大量のトラフィックをそのリンク上で運ぶわけではありません。例えば、リンクAの帯域が完全に予約されていたとしても、実際の帯域は使用可能であるが、現在は使用されていない可能性があります。この余剰帯域は、他のLSPにもリンクAを使用させ、リンクをカバーサブスクライブすることで利用することができる。個々のクラスタイプに設定された帯域をオーバーサブスクライブするか、インターフェイスを使用しているすべてのクラスタイプに単一の値を指定することができます。
オーバーサブスクリプションは、トラフィックパターンの統計的性質を利用し、リンクの高い利用率を可能にするために使用することができます。
次の例では、帯域幅のオーバーサブスクリプションとアンダーサブスクリプションの使用方法について説明します。
トラフィックのピークが時間的に重ならないクラスタイプでは、オーバーサブスクリプションを使用する。
ベストエフォート型トラフィックを伝送するクラスタイプのオーバーサブスクリプションを使用します。ネットワークリソースをより有効に活用する代わりに、一時的にトラフィックを遅延させたり、ドロップさせたりするリスクを負うことになります。
異なるクラスタイプに対して、トラフィックのオーバーサブスクリプションまたはアンダーサブスクリプションの度合いを指定します。例えば、次のようにトラフィックのクラスに対するサブスクリプションを設定します。
ct0 1000ベストエフォートct3 1音声
マルチクラスLSPのクラスタイプをアンダーサブスクライブすると、すべてのRSVPセッションの総需要は、常にクラスタイプの実際の容量より小さくなります。アンダーサブスクリプションを使用すると、クラスタイプの利用を制限することができます。
帯域幅のオーバーサブスクリプションの計算は、ローカルルーターでのみ行われます。ネットワーク内の他のルーターからの信号や他の相互作用が必要ないため、この機能をサポートしていない可能性のある他のルーターで有効にしたり利用したりすることなく、個々のルーターでこの機能を有効にすることができます。隣接するルーターはオーバーサブスクリプションの計算について知る必要がなく、IGPに依存します。
次のセクションでは、Junos OSで利用可能な帯域幅のオーバーサブスクリプションの種類について説明します。
LSPサイズオーバーサブスクリプションLSPサイズのオーバーサブスクリプション
LSPリンクサイズオーバーサブスクリプションLSP リンクサイズ過多
クラスタイプのオーバーサブスクリプションとローカルオーバーサブスクリプションの倍率クラスタイプのオーバーサブスクリプションとローカルオーバーサブスクリプションの倍率
LSPサイズオーバーサブスクリプション
LSPサイズオーバーサブスクリプションでは、LSPに予想されるピークレートより少ない帯域を設定するだけです。また、自動ポリサーの構成を調整する必要がある場合もあります。自動ポリサーは、LSPに割り当てられたトラフィックが設定された帯域値を超えないように管理します。LSPサイズオーバーサブスクリプションでは、LSPが設定された帯域幅割り当てを超えることが必要です。
ポリシングはまだ可能です。ただし、ポリサーは、構成された値ではなく、LSPに計画された最大帯域幅を考慮して手動で構成する必要があります。
LSPリンクサイズオーバーサブスクリプション
リンクで予約可能な最大帯域幅を増やし、帯域幅アカウンティングに膨張した値を使用できます。リンクをオーバーサブスクライブするには、subscriptionステートメントを使用します。設定された値は、リンク上のすべてのクラスタイプの帯域幅割り当てに適用されます。リンクサイズオーバーサブスクリプションの詳細については,LSPの帯域幅サブスクリプション率の設定を参照してください。
クラスタイプのオーバーサブスクリプションとローカルオーバーサブスクリプションの倍率
LOM(ローカル オーバーサブスクリプションの倍率)によって、クラス タイプごとに異なるオーバーサブスクリプション値を設定できます。LOM は、リンクごとに異なるオーバーサブスクリプション率が必要なネットワークや、クラスごとに異なるオーバーサブスクリプション値が必要なネットワークに有用です。この機能によって、音声トラフィックを処理するクラス タイプにはオーバーサブスクリプションを使用せずに、ベストエフォート トラフィックを処理するクラス タイプをオーバーサブスクリプションを使用できます。LOM はルーターでローカルで計算されます。LOM に関連する情報はネットワーク内の他のルーターにシグナリングされません。
LOM は、各リンクおよびクラス タイプごとに設定できます。クラスタイプごとの LOM によっt、オーバーサブスクリプションの比率を変更できます。クラスタイプごとの LOM は、無制限の帯域幅のアドミッション コントロールと IGP アドバタイズを構成するすべてのローカル帯域幅に組み込まれます。
LOM の計算は、クラス タイプ全体でオーバーサブスクリプションの影響を正確に構成する必要があるため、使用する帯域幅モデル(MAM、拡張 MAM、入れ子構造)に関連しています。
すべての LOM 計算は、Junos OS によって実行され、ユーザーの介入は必要ありません。
クラス タイプのオーバーサブスクリプションに関連する式は以下のセクションで説明されています。
LSP の帯域幅サブスクリプション割合の設定
デフォルトでは、RSVP はすべてのクラスタイプの帯域幅(100%)を RSVP 予約に使用できます。マルチクラスLSP のクラスタイプをオーバーサブスクライブする場合、すべてのRSVPセッションの総需要は、クラスタイプの実際の容量を超えることができます。
同じ割合の帯域幅を使用して、インターフェイス上のすべてのクラス タイプをオーバーサブスクライブまたはアンダーサブスクライブしたい場合は、 subscriptionステートメントを使用して割合を設定します。
subscription percentage;
このステートメントを含めることができる階層レベルの一覧は、ステートメント概要セクションを参照してください。
各クラスタイプの帯域幅をアンダースクライブまたはオーバーサブスクライブするには、 subscriptionステートメントの各クラス タイプ(ct0、ct1、ct2、ct3オプションの割合を設定します。クラスタイプをオーバーサブスクライブすると、実際の帯域幅の計算に LOM が適用されます。詳細については、クラスタイプのオーバーサブスクリプションとローカルオーバーサブスクリプションの倍率を参照してください。
subscription { ct0 percentage; ct1 percentage; ct2 percentage; ct3 percentage; }
このステートメントを含めることができる階層レベルの一覧は、ステートメント概要セクションを参照してください。
percentageは、RSVP が予約に使用できるクラスタイプの帯域幅の割合です。0~65,000%の値を設定することができる。100 より大きい値を指定すると、インターフェイスまたはクラスタイプをオーバーサブスクライブしていることになります。
クラスタイプをオーバーサブスクライブしているときに設定する値は、実際に使用できるクラスタイプ帯域幅の割合です。サブスクリプションのデフォルト値は100%です。
subscriptionステートメントを使用すると、1 つ以上のクラス タイプの新しい RSVP セッションを無効化できます。割合に 0 を設定すると、クラスタイプに新しいセッションは許可されません(帯域幅要件が 0 のものも含まれます)。
既存の RSVP セッションは、サブスクリプション ファクターの変更に影響されません。既存のセッションをクリアするには、clear rsvp sessionコマンドを発行します。clear rsvp sessionコマンドの詳細については、CLI エクスプローラーを参照してください。
帯域幅サブスクリプションの設定に関する制約
帯域幅サブスクリプションを設定に際しては、以下の問題に注意してください。
[edit class-of-service interface interface-name]階層レベルで帯域幅制約を設定すると、Diffserv-TE の[edit protocols rsvp interface interface-name bandwidth]階層レベルで指定された帯域幅設定がオーバーライドされます。また、CoS または RSVP 帯域幅制約のいずれかが、ハードウェア帯域幅制約をオーバーライドする可能性があることにも注意してください。すべてのインタフェースに設定された値と異なる特定のインタフェースに対して(
[edit protocols rsvp interface interface-name]および[edit protocols rsvp interface all]階層のsubscriptionステートメントの異なる値を含めることで)帯域幅サブスクリプション値を設定する場合、インターフェイス固有の値がインターフェイスに使用されます。帯域幅モデルも設定する場合にのみ、各クラスタイプのサブスクリプションを設定できます。帯域幅モデルが設定されていない場合、コミット操作は失敗し、以下のエラー メッセージが表示されます:
user@host# commit check [edit protocols rsvp interface all] 'subscription' RSVP: Must have a diffserv-te bandwidth model configured when configuring subscription per traffic class. error: configuration check-out failed
特定のクラスタイプの設定とインターフェイス全体の設定の両方に
subscriptionステートメントを含めることはできません。コミット操作は失敗し、以下のエラー メッセージが表示されます:user@host# commit check [edit protocols rsvp interface all] 'subscription' RSVP: Cannot configure both link subscription and per traffic class subscription. error: configuration check-out failed
MPLS MTU超過エラーの検出
Junosは、IPv4、IPv6、およびMPLSパケットのTTL切れ、到達不能宛先、DF(到達不能宛先)、リダイレクトなどのエラー条件の送信元へのICMPエラーメッセージの生成をサポートします。
JunosOSリリース23.4R1以降、MPLS環境でMTU超過エラーのICMPエラーメッセージ生成をサポートしています。
MTU超過エラーにより、MPLSラベル付きパケット障害がコアまたはトランジットノードの出口インターフェイスで発生した場合、LSPを終了するピアPEデバイスに向けてICMPエラーメッセージが生成されます。ピアPEデバイスは、MPLSヘッダーをデカプセル化し、ICMPエラーメッセージを送信元デバイスにルーティングします。返りパスは、デバイスのルーティングテーブルの状態に基づいて、純粋IPパスまたは異なるLSPのいずれかになります。送信元または顧客エッジデバイスは、ICMPエラーメッセージを受信し、MTUエラーを回避するためにパケットサイズを調整します。
RFC3032は、TTL切れおよびMTU超過例外のMPLSパケットのICMPエラーメッセージ生成を処理するICMPトンネルメカニズムを定義します。
MPLS環境でMTU超過エラーのICMPエラーメッセージ生成のメリットの一部を以下に示します。
-
失敗原因がMTU超過エラーに起因するかどうかを理解します。
-
MPLS設定のトランジットノードおよびイングレスノードのMTU超過失敗について知る。
-
ネットワーク上のアプリケーションが、レイヤー3VPN(ユニキャスト)またはスタティックLSPネットワークを介してエンドポイントと通信するユースケースをサポートします。
ICMP MTU超過エラーメッセージ生成を有効にするには、コアおよびトランジットデバイスの[edit protocol mpls]階層レベルでステートメントを有効にすることで、ICMPトンネicmp-tunnellingリングを設定する必要があります。
ICMP MTU超過エラーメッセージ生成を機能させるには、パケットを送信元CEデバイスにルーティングするピアCEデバイス上でルートテーブルを設定する必要があります。これを行わないと、ICMP MTU超過エラーパケットがドロップされます。
トランジットルーターで[edit routing-options forwarding-table]階層レベルおよびMPLS MTU例外でステートchained-composite-next-hop transit <>メントを設定する場合、ICMPエラーメッセージ生成が機能する保証はありません。
イングレスルーターの[edit routing-options forwarding-table]階層レベルでステートchained-composite-next-hop transit <>メントを設定し、イングレスおよびエグレスインターフェイスが異なるFPC/PFE上にあり、イングレスFPC/PFEが1個以上のMPLSラベル追加を実行している場合、イングレスルーターのMPLS MTU例外のICMPエラー生成は正確ではありません。
ICMPエラーメッセージ生成は、以下でサポートされていません。
-
レイヤー2VPNおよびレイヤー2回線
-
トラフィックがMPLSを介して転送されたマルチキャスト設定。MTU例外パケットはカウントおよびドロップされます。
変更履歴
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer をご利用ください。