PCEP設定
RSVP LSPとセグメントルーティング用のPath Computation Element Protocol(PCEP)
パス計算要素(PCE)は、ネットワークグラフに基づいてネットワークパスまたはルートを計算し、計算制約を適用できるエンティティ(コンポーネント、アプリケーション、またはネットワークノード)です。パス計算クライアント(PCC)は、PCEによって実行されるパス計算を要求するクライアントアプリケーションです。PCEP(Path Computation Element Protocol)は、PCCとPCE間、または2つのPCE(RFC 5440で定義)間の通信を可能にします。
PCEPは、IETF PCEワーキンググループによって定義されたTCPベースのプロトコルであり、PCEPセッションの管理と、マルチドメイントラフィックエンジニアリングLSP(TE LSP)のパスの要求と送信に使用される一連のメッセージとオブジェクトを定義します。これは、PCEがPCCの外部LSPのパス計算を実行するメカニズムを提供します。PCEPインタラクションには、PCCからPCEに送信されたLSPステータスレポートや、外部LSPのPCEアップデートが含まれます。
図1 は、MPLS RSVP-TE対応ネットワークにおけるステートフルPCEアーキテクチャのクライアント側実装におけるPCEPの役割を示しています。
TCPベースのPCEPセッションは、PCCを外部PCEに接続します。PCCはPCEPセッションを開始し、PCEPセッションの間、PCEへの接続を維持します。PCEPセッション中、PCCはステートフルPCEにLSPパラメーターを要求します。PCEから1つ以上のLSPパラメーターを受信すると、PCCはTE LSPに再シグナリングします。PCEPセッションが終了すると、基盤となるTCP接続は直ちに閉じられ、PCCはPCEPセッションの再確立を試みます。
したがって、PCEP機能には以下が含まれます。
-
PCCとステートフルPCE間のLSPトンネル状態同期—アクティブなステートフルPCE接続が検出されると、PCCはLSP状態同期と呼ばれる手順で、すべてのLSPをこのPCEに委任しようとします。PCEPにより、PCC LSP状態をPCEに同期できます。
-
ステートフルPCEへのLSPトンネル制御の委任—アクティブなステートフルPCEは、帯域幅、パス(ERO)、優先度(設定および保留)など、計算パスのための1つ以上のLSP属性を制御します。PCEPにより、パス計算のためのこのようなLSPの委任が可能になります。
-
PCEPセッション内およびPCEPセッション間でパス計算のタイミングと順序のステートフルPCE制御–アクティブなステートフルPCEは、帯域幅、パス(ERO)、優先度(設定および保留)などの1つ以上のLSP属性を変更します。PCEPは、これらの新しいLSP属性をPCEからPCCに伝達し、その後、PCCは指定されたパスのLSPに再シグナリングします。
RSVP-TE のパス計算要素プロトコルのサポート概要
- MPLS RSVP-TE について
- 現在の MPLS RSVP-TE の制限事項
- 外部パスコンピューティングエンティティの使用
- 外部パスコンピューティングのコンポーネント
- PCEP を使用した PCE と PCC 間の相互作用
- 外部コンピューティングでのLSPの動作
- 外部コンピューティングでサポートされている設定ステートメント
- PCE制御LSP保護
- PCE制御LSP ERO
- PCE制御のポイントツーマルチポイントRSVP-TE LSP
- PCE主導のポイントツーポイントLSP
- PCE開始バイパスLSP
- PCE主導のポイントツーマルチポイントLSP
- PCEPのSRv6 LSP
- PCEP における SRv6 LSP のメリット
- 自動帯域幅とPCE制御LSP
- PCEPセッションのTCP-MD5認証
- クライアント側PCE実装がネットワークパフォーマンスに与える影響
MPLS RSVP-TE について
トラフィックエンジニアリング(TE)は、主にトラフィックフローを既存の物理トポロジーにマッピングすることで、運用ネットワークのパフォーマンス最適化を扱います。トラフィックエンジニアリングは、トラフィックフローを内部ゲートウェイプロトコル(IGP)が選択する最短経路から、ネットワーク上で混雑していない可能性のある物理経路に移動させる機能を提供します。
大規模で高密度ネットワークのトラフィック制御では、MPLS機能は、オーバーレイモデルから利用可能な機能のほとんどを統合された方法で、現在の競合手段よりも低コストで提供できる可能性があるため、実装することができます。MPLSトラフィックエンジニアリングを実装する主な理由は、トラフィックがネットワークを通過するパスを制御することです。MPLSトラフィックエンジニアリングを実装する主な利点は、ATMのトラフィックエンジニアリング機能とIPのサービスクラス(CoS)差別化を組み合わせることができることです。
MPLSネットワークでは、データプレーン情報はラベルスイッチを使用して転送されます。カスタマーエッジ(CE)ルーターからプロバイダエッジ(PE)ルーターに到着したパケットにはラベルが貼られ、エグレスPEルーターに転送されます。ラベルはegressルーターで削除され、IPパケットとして適切な宛先に転送されます。MPLSドメイン内のラベルスイッチングルーター(LSR)は、ラベル配布プロトコルを使用して、LSR間およびLSRを介してトラフィックを転送するために使用されるラベルの意味を伝達します。RSVP-TEは、LSRピアが他のピアのラベルマッピングについて学習できるようにするラベル配布プロトコルの1つです。
ルーターで MPLS と RSVP の両方が有効になっている場合、MPLS は RSVP のクライアントになります。Junos OS RSVPソフトウェアの主な目的は、ラベルスイッチパス(LSP)内の動的なシグナリングをサポートすることです。RSVPは、IPユニキャストやマルチキャストフローなどのリソースを予約し、アプリケーションのサービス品質(QoS)パラメーターをリクエストします。このプロトコルはMPLSトラフィックエンジニアリングで拡張されており、RSVPがMPLSネットワークのトラフィックエンジニアリングに使用できるLSPを設定できるようにします。
MPLSとRSVPを組み合わせると、ラベルはRSVPフローに関連付けられます。LSPが確立されると、パスを通過するトラフィックは、LSPのingressノードで適用されるラベルによって定義されます。ラベルとトラフィックのマッピングは、異なる基準を使用して行われます。特定のノードから同じラベル値が割り当てられたパケットのセットは、同じFEC(Forwarding Equivalence Class)に属し、RSVPフローを効果的に定義します。このようにトラフィックがLSPにマッピングされると、LSPはLSPトンネルと呼ばれます。
LSP トンネルは、単方向のラベルスイッチ パスを確立する方法です。RSVP-TEは、新しいオブジェクトを定義し、LSP確立のためにPATHおよびRESVオブジェクトで使用される既存のオブジェクトを変更することで、RSVPコアプロトコルに基づいて構築されます。新しいオブジェクトであるLABEL-REQUESTオブジェクト(LRO)、RECORD-ROUTE オブジェクト(RRO)、LABELオブジェクト、EXPLICIT-ROUTEオブジェクト(ERO)は、LSPトンネルの確立に必須であるLROオブジェクトとLABELオブジェクトを除き、RSVPプロトコルに関してはオプションです。
一般に、RSVP-TEは、ingressからegressルーターへのフレーム配信を保証するラベルスイッチパスを確立します。ただし、新しいトラフィック制御機能により、MPLSドメインで以下の機能がサポートされます。
-
完全または部分的な明示的なルートを使用してラベルスイッチパスを確立する可能性(RFC 3209)。
-
帯域幅やリンク特性などの要件を満たすリンク上の制約ベースのLSP確立。
-
エンドポイント制御:イングレスルーターおよびエグレスルーターでのLSPトンネルの確立と管理に関連付けられます。
-
リンク管理:リンクリソースを管理して、トラフィックエンジニアリングLSPのリソース認識型ルーティングを実行し、MPLSラベルをプログラムします。
-
保護が必要なLSPを管理し、バックアップトンネル情報をこれらのLSPに割り当てるMPLS高速再ルート(FRR)。
現在の MPLS RSVP-TE の制限事項
トラフィック制御用のRSVP拡張は、ネットワーク使用率を向上させ、トラフィッククラスの要件を満たしますが、今日のMPLS RSVP-TEプロトコルスイートには、その分散された性質に固有のいくつかの問題があります。これは、特にLSPのサブセットが共通の設定を共有し、優先度値を保持するLSP優先度クラス内で、二分容量の競合中に多くの問題を引き起こします。RSVP-TEには以下の制限があります。
-
個々のLSP単位、デバイス単位の帯域幅要求が可視化されていない—MPLS RSVP-TEネットワークのイングレスルーターは、ネットワーク上の帯域幅需要をグローバルに把握せずにLSPを確立します。ネットワークリソース使用率に関する情報は、インターフェイスごとのトラフィッククラスごとの総予約容量としてのみ利用できます。個々のLSP状態は、それぞれのLSPに対してのみ各ラベルエッジルーター(LER)でローカルに利用できます。その結果、特に共通の設定と保留の優先度内で、需要パターンに関連する多くの問題が発生します。
-
RSVP シグナリングの非同期かつ独立した性質 - RSVP-TE では、パス確立の制約は管理者によって制御されます。そのため、LSPトンネル用に予約された帯域幅は管理者によって設定され、トンネルを介して送信されるトラフィックに自動的に制限を意味するものではありません。したがって、トラフィック制御リンクで利用可能な帯域幅は、リンク上で行われたすべての予約の合計を除いた、リンクに設定された帯域幅です。このように、LSP トンネルに対するシグナル以外の要求は、過剰な帯域幅を必要とする LSP や、トラフィック制御リンクの帯域幅要件に準拠する他の LSP のサービス低下につながります。
-
優先順位の順に動的または明示的パスオプションに基づいて確立されたLSP—MPLS RSVP-TEネットワーク内のイングレスルーターは、到着順に基づいて需要用のLSPを確立します。イングレスルーターはネットワーク上の帯域幅需要をグローバルに把握できないため、優先順位を使用してLSPを確立すると、帯域幅需要が超過した場合にトラフィックがドロップされたり、LSPがまったく確立されなかったりすることがあります。
例として、 図2 はMPLS RSVP-TEで設定されており、AとGはラベルエッジルーター(LER)です。これらのイングレスルーターは、需要の順序に基づいて独立してLSPを確立し、互いのLSPについての知識や制御はありません。ルーターB、C、およびDは、エグレスルーターEおよびFに接続する中間ルーターまたはトランジットルーターです。
イングレスルーターは、需要が到着した順番に基づいてLSPを確立します。ルーター G が G-F に対してそれぞれ容量 5 の需要を 2 つ受信した場合、G は G-B-D-F を介して 2 つの LSP(LSP1 と LSP2)にシグナリングします。同様に、ルーターAはA-Eの容量10の3番目の需要を受信すると、A-B-C-Eを介してLSP、LSP3にシグナリングします。ただし、A-E LSP の需要が 10 から 15 に増加すると、B-C リンクの容量が小さくなるため、ルーター A は同じ(A-B-C-E)パスを使用して LSP3 に信号を送ることができません。
ルーターAは、A-B-D-C-Eパスを使用してLSP3への需要増加をシグナリングしているはずです。LSP1とLSP2は、受信した需要の順序に基づいてB-Dリンクを使用しているため、LSP3はシグナリングされません。
したがって、すべてのLSPで十分な最大フロー帯域幅が利用可能であっても、LSP3は長期にわたってサービス低下する可能性があります。これは、ルーターAがグローバルな需要を可視化できないことと、イングレスルーターAおよびGによる需要配置における体系的な調整の欠如によるものです。
外部パスコンピューティングエンティティの使用
MPLS RSVP-TE パス計算で見られる現在の制限に対する解決策として、利用可能な容量に関係なく、ネットワーク内の LSP ごと、デバイスごとの需要をグローバルに把握できる外部パス計算エンティティが必要です。
現在、MPLS RSVP-TE ネットワークでは、オンラインかつリアルタイムの制約ベースのルーティング パス計算のみが提供されています。各ルーターは、ネットワーク内の他のルーターとは独立して、制約ベースのルーティング計算を実行します。これらの計算は、現在入手可能なトポロジー情報(通常は最新の情報ではありますが、完全に正確ではない情報)に基づいています。LSPの配置は、現在のネットワークステータスに基づいてローカルに最適化されます。MPLS RSVP-TE トンネルは、CLI を使用して設定されます。運用担当者が TE LSP を設定し、ingressルーターからシグナリングされます。
既存のトラフィック制御機能に加えて、MPLS RSVP-TEの機能が拡張され、パス計算要素(PCE)と呼ばれる外部パスコンピューティングエンティティが含まれます。PCEは、外部制御用に設定されたイングレスルーターのTE LSPのパスを計算します。PCEに接続するingressルーターは、パス計算クライアント(PCC)と呼ばれます。PCCは、PCEによる外部パスコンピューティングを容易にするために、PCEP(Path Computation Client Protocol)で設定されています。
詳細については、「 外部パスコンピューティングのコンポーネント」を参照してください。
PCCのTE LSPに対して外部パスコンピューティングを有効にするには、[edit mpls]および[edit mpls lsp lsp-name]階層レベルでlsp-external-controller pccdステートメントを含めます。
外部パスコンピューティングのコンポーネント
外部パスコンピューティングシステムを構成するコンポーネントは次のとおりです。
パス計算要素
パス計算要素(PCE)は、ネットワークグラフに基づいてネットワークパスまたはルートを計算し、計算制約を適用できる任意のエンティティ(コンポーネント、アプリケーション、またはネットワークノード)です。ただし、PCEが、外部制御用に設定されているPCCのTE LSPに対してのみパスを計算できます。
PCE は、ステートフルまたはステートレスのいずれかです。
-
ステートフルPCE—ステートフルPCEは、PCEとネットワークの状態(トポロジーとリソース情報の観点から)と、ネットワークで使用されている計算されたパスと予約済みリソースのセット間の厳密な同期を維持します。つまり、ステートフルPCEは、PCCからの新規リクエストを処理する際に、トラフィック制御データベースからの情報と、ネットワーク内の既存のパス(例えば、TE LSP)に関する情報を利用します。
ステートフルPCEには2つのタイプがあります。
-
パッシブステートフルPCE—PCCとの同期を維持し、PCC LSP状態を学習してパス計算をより適切に最適化しますが、それらを制御することはできません。
-
アクティブステートフルPCE—PCC LSPの状態について学習するだけでなく、PCC LSPをアクティブに変更します。
注:メインおよびバックアップアクティブステートフルPCEを使用した冗長設定では、バックアップアクティブステートフルPCEは、フェイルオーバー時にメインPCEになるまで、委任されたLSPの属性を変更できません。スイッチオーバーの場合、PCEのプリエンプトはありません。メインPCEはバックアップPCEによってバックアップされており、メインPCEがダウンすると、バックアップPCEはメインPCEの役割を引き受け、以前にメインPCEだったPCEが再び稼働した後もメインPCEであり続ける。
ステートフルPCEは、以下の機能を提供します。
-
オフラインのLSPパス計算を提供します。
-
ネットワークを再最適化する必要がある場合に、LSPの再ルートをトリガーします。
-
アプリケーションからの帯域幅需要が増加した場合、LSP帯域幅を変更します。
-
ERO、設定優先度、保留優先度など、ルーター上のその他のLSP属性を変更します。
PCEは、ネットワーク内の帯域幅需要をグローバルに把握し、パス計算を実行するためにトラフィック制御されたデータベースを維持します。SNMP と NETCONF を使用して、MPLS ドメインのすべてのルーターから統計情報の収集を実行します。これにより、PCCのTE LSPをオフラインで制御するメカニズムが提供されます。オフラインのLSP経路計算システムをネットワークコントローラに組み込むことはできますが、PCEは本格的なネットワークコントローラのように動作し、経路の計算に加えて、PCCのTE LSPの制御も提供します。
ステートフルPCEは最適な経路計算と経路計算の成功率の向上を可能にしますが、信頼性の高い状態同期メカニズムが必要であり、TE LSPのフルメッシュの場合のように、コントロールプレーンのオーバーヘッドが大きくなり、状態に関する大量のデータが維持される可能性があります。
-
-
ステートレスPCE—ステートレスPCEは計算されたパスを記憶せず、リクエストの各セットは互いに独立して処理されます(RFC 5440)。
パス計算クライアント
パス計算クライアント(PCC)は、PCEによって実行されるパス計算を要求するクライアントアプリケーションです。
PCCは、一度に最大10のPCEに接続できます。PCCからPCEへの接続は、設定された静的ルートまたは到達可能性を確立するTCP接続にすることができます。PCCは、接続された各PCEに優先度番号を割り当てます。LSP状態同期と呼ばれるプロセスで、現在のLSPに関する情報を含むメッセージを接続されているすべてのPCEに送信します。外部制御が有効な TE LSP の場合、PCC はそれらの LSP をメイン PCE に委任します。PCCは、メインPCEとして、優先度番号が最も低いPCE、または優先度番号がない場合は最初に接続するPCEを選択します。
PCCは、PCEから受信した計算されたパスに基づいて、LSPに再シグナリングします。メインPCEとのPCEPセッションが終了すると、PCCは新しいメインPCEを選択し、以前のメインPCEに委任されたすべてのLSPは、新しく利用可能なメインPCEに委任されます。
パス計算要素プロトコル
PCEP(Path Computation Element Protocol)は、PCCとPCE間(および2つのPCE間)の通信に使用されます(RFC 5440)。PCEPは、IETF PCEワーキンググループによって定義されたTCPベースのプロトコルであり、PCEPセッションの管理や、マルチドメインTE LSPのパスの要求と送信に使用される一連のメッセージとオブジェクトを定義します。PCEP インタラクションには、PCC メッセージのほか、MPLS RSVP-TE のコンテキストでの PCE の使用に関連する特定の状態の通知が含まれます。PCEP を PCE 間の通信に使用する場合、要求側の PCE は PCC の役割を引き受けます。
したがって、PCEP機能には以下が含まれます。
-
PCCとステートフルPCE間のLSPトンネル状態同期
-
ステートフルPCEへのLSPトンネル制御の委任。
PCEP を使用した PCE と PCC 間の相互作用
図3 は、MPLS RSVP-TEの文脈におけるPCE、PCC、およびPCEPの役割の関係を示しています。
PCEからPCCへの通信は、TCPベースのPCEPによって有効になります。PCCはPCEPセッションを開始し、PCEPセッションの間、PCEに接続されたままになります。
Junos OSリリース16.1以降、RFC 5440に従ってTCP-MD5認証を使用してPCEPセッションを保護できます。PCEPセッションでMD5セキュリティメカニズムを有効にするには、PCEPセッションの [edit protocols pcep pce pce-id] 階層レベルでMD5認証キーを定義してバインドすることをお勧めします。ただし、 [edit security authentication-key-chains key-chain] 階層レベルから事前定義されたキーチェーンを使用して、PCEPセッションを保護することもできます。この場合、定義済みのキーチェーンを [edit protocols pcep pce pce-id] 階層レベルでPCEPセッションにバインドする必要があります。
PCEとPCCは、同じ鍵を使用して、PCEPセッションのTCP接続で送信された各セグメントの真正性を検証することで、攻撃を受けてネットワーク上のサービスを中断する可能性のあるデバイス間のPCEP通信を保護します。
MD5 認証を使用した PCEP セッションのセキュリティ認証の詳細については、 PCEP セッションの TCP-MD5 認証を参照してください。
PCEPセッションが確立されると、PCCは以下のタスクを実行します。
-
LSP状態同期—PCCは、接続されているすべてのPCEにすべてのLSP(ローカルおよび外部)に関する情報を送信します。外部LSPの場合、PCCは設定変更、RRO変更、状態変更などの情報をPCEに送信します。
PCE開始LSPの場合、PCCにLSP設定は存在しません。LSP を開始する PCE は、PCE 開始 LSP をサポートする機能を示す LSP パラメーターを PCC に送信します。
注:PCE開始LSPのサポートは、Junos OSリリース13.3以降のリリースで提供されます。
-
LSP委任—LSP状態情報が同期された後、PCCは外部LSPをメインのアクティブステートフルPCEである1つのPCEに委任します。メインPCEのみが外部LSPのパラメーターを設定できます。メインPCEが変更するパラメーターには、帯域幅、パス(ERO)、および優先度(設定および保留)が含まれます。ローカル設定で指定されたパラメーターは、メインPCEによって設定されたパラメーターによって上書きされます。
注:メインPCEとのPCEPセッションが終了すると、PCCは新しいメインPCEを選択し、以前のメインPCEに委任されたすべてのLSPは、新しく利用可能なメインPCEに委任されます。
PCE開始LSPの場合、PCCはPCEから受信したパラメーターを使用してLSPを作成します。PCCは、PCEが開始したLSPに一意のLSP-IDを割り当て、自動的にLSPをPCEに委任します。PCCは、アクティブなPCEPセッションに対してPCEが開始したLSPの委任を取り消すことはできません。
PCEPセッションが終了すると、PCCはサービスの中断を避けるために、PCEが開始したLSP(
delegation cleanup timeoutとlsp cleanup timer)をすぐに削除することなく、2つのタイマーを開始します。この間、アクティブなステートフルPCEは、LSPの作成リクエストを送信することで、障害が発生したPCEによってプロビジョニングされたLSPの制御を取得できます。PCEが開始したLSPの制御は、
delegation cleanup timeoutの満了時にPCCに戻ります。delegation cleanup timeoutの有効期限が切れ、障害が発生したPCEからLSPの制御権を他のPCEが取得していない場合、PCCは非委任されたPCE開始LSPのローカル制御を行います。その後、元のステートフルPCEまたは新しいアクティブなステートフルPCEが、ローカルで制御されたPCE開始LSPの制御を取得したい場合、PCCはこれらのLSPをPCEに委任し、lsp cleanup timerタイマーは停止します。PCEは、PCEが開始したLSPの委任をPCCに返して、PCE間のLSP転送を許可することができます。これにより、PCE開始LSPの
lsp cleanup timerがトリガーされます。PCCは、LSPクリーンアップタイマーが終了するまで待ってから、障害が発生したPCEから委任されていないPCE開始LSPを削除します。lsp cleanup timerの有効期限が切れ、障害が発生したPCEからLSPの制御を他のPCEが取得していない場合、PCCは障害が発生したPCEによってプロビジョニングされたすべてのLSPを削除します。注:draft-ietf-pce-stateful-pce-09に準拠し、PCCによるPCE開始LSP委任の取り消しは、LSPが代替PCEに再委任される前に、事前対応方式で行われます。Junos OS Release 18.1R1以降、PCCがLSP委任を取り消すには、
lsp-cleanup-timerがdelegation-cleanup-timeout以上である必要があります。そうでない場合、PCCの再委任タイムアウト間隔を無限大に設定することができ、PCEが設定したパラメーターを変更するためにPCCが特定のアクションを取るまで、そのPCEへのLSP委任はそのまま残ります。 -
LSPシグナリング—メインのアクティブステートフルPCEから1つ以上のLSPパラメーターを受信すると、PCCはPCEから提供されたパスに基づいてTE LSPに再シグナリングします。PCCがLSPの設定に失敗した場合、PCEに設定失敗を通知し、メインPCEがそのLSPに新しいパラメータを提供するのを待ってから、再度シグナリングします。
PCEが不完全なパスや、パスエンドポイントのみが指定されたルーズホップを持つパスを指定すると、PCCはホップの完全なセットを見つけるためにローカル制約ベースのルーティングを実行しません。代わりに、PCCはシグナリング用にPCEから提供されたパスをそのままRSVPに提供し、パスはIGPホップバイホップルーティングを使用して設定されます。
図2で使用したトポロジーを考慮して、図4はMPLS RSVP-TE対応ネットワークにおけるクライアント側PCEの部分的な実装を示しています。イングレスルーターAとGは、TCP接続を介して外部ステートフルPCEに接続するように設定されたPCCです。
PCEは、ネットワーク内の帯域幅需要をグローバルに把握し、トラフィック制御データベースを検索した後、外部パス計算を実行します。その後、アクティブなステートフルPCEは、1つ以上のLSP属性を変更し、PCCに更新を送信します。PCCは、PCEから受信したパラメータを使用して、LSPに再シグナリングします。
このようにして、ステートフルPCEは、最短のドメイン間制約付きパス計算の特定の課題に対処するために使用される分散機能の協調運用を提供します。これにより、トラフィックストリームが利用可能なリソースに非効率的にマッピングされ、ネットワークリソースの一部サブセットが過剰に使用され、他のリソースが未利用のままになる混雑シナリオが解消されます。
外部コンピューティングでのLSPの動作
LSP タイプ
クライアントサイドPCE実装には、3種類のTE LSPがあります。
-
CLI制御LSP—
lsp-external-controller pccdステートメントが設定されていないLSPは、CLI制御LSPと呼ばれます。これらのLSPはローカル制御下にありますが、PCCは初期LSP同期プロセス中に、接続されたPCEをCLI制御LSPに関する情報で更新します。最初のLSP同期後、PCCは新規および削除されたLSPについてもPCEに通知します。 -
PCE制御LSP—
lsp-external-controller pccdステートメントが設定されているLSPは、PCE制御LSPと呼ばれます。PCCは、外部パス計算のためにPCCが開始したLSPをメインPCEに委任します。PCCは、帯域幅、ERO、優先度など、PCE制御LSPの設定済みパラメーターについてPCEに通知します。また、使用可能な場合、RRO を含む LSP を設定するためにこれらのパラメーターに使用される実際の値についても PCE に通知します。
PCCは、再設定が行われた場合、または外部制御下にあるPCE制御LSPのERO、RRO、またはステータスに変更があった場合にのみ、このようなLSPステータスレポートをPCEに送信します。
PCEのLSPのCLI設定から取得されるパラメーターには2種類あります。
-
PCEによって上書きされず、すぐに適用されるパラメーター。
-
PCEによって上書きされるパラメーター。これらのパラメーターには、帯域幅、パス、優先度(設定値と保留値)が含まれます。制御モードが外部からローカルに切り替わると、これらのパラメーターに対してCLIで設定された値が、次回の機会に適用され、LSPに再シグナリングされます。値はすぐには適用されません。
-
-
外部でプロビジョニングされたLSP(またはPCE開始LSP)—
lsp-provisioningステートメントが設定されているLSPは、PCE開始LSPと呼ばれます。PCE開始LSPは、外部PCEによって動的に作成されます。その結果、PCCにはLSP設定は存在しません。PCCは、PCEから提供されるパラメーターを使用してPCE開始LSPを作成し、自動的にLSPをPCEに委任します。注:PCE開始LSPのサポートは、Junos OSリリース13.3以降のリリースで提供されます。
CLI制御LSP、PCE制御LSP、PCE開始LSPは、PCC上で共存できます。
CLI制御LSPとPCE制御LSPは、PCC上で共存できます。
LSP制御モード
クライアントサイドPCE実装では、PCC制御LSPの制御モードには2種類あります。
-
外部—デフォルトでは、すべてのPCE制御LSPが外部制御下にあります。LSPが外部制御下にある場合、PCCはPCEが提供するパラメーターを使用してLSPを設定します。
-
ローカル—PCE制御のLSPをローカル制御下に置くことができます。LSPが外部制御からローカル制御に切り替わる際、CLIで設定したパラメータと制約ベースルーティングを使用してパス計算が行われます。このようなスイッチオーバーは、LSPに再シグナリングするトリガーがある場合にのみ発生します。それまでは、PCCはPCEから提供されたパラメータを使用してPCE制御LSPに信号を送りますが、LSPはローカル制御下にとどまります。
PCE制御LSPは、PCEに接続できない場合や、PCEがLSPの委任をPCCに返す場合などに、デフォルトの外部制御モードからローカル制御に切り替わります。
CLI制御LSPとPCE制御LSPの詳細については、 LSPタイプを参照してください。
外部コンピューティングでサポートされている設定ステートメント
表 1 は、PCE 制御 LSP に適用される MPLS および既存の LSP 設定ステートメントを示しています。
|
PCE制御LSPのサポート |
該当するLSP設定ステートメント |
適用可能なMPLS設定ステートメント |
|---|---|---|
|
これらの設定ステートメントは、PCEの設定と一緒に設定できます。ただし、ローカル設定が使用されている場合にのみ有効になります。PCE制御中は、これらの設定ステートメントは非アクティブなままです。 |
|
|
|
これらの設定ステートメントは、PCE設定と一緒に設定できますが、PCE制御のLSP属性によって上書きされます。ただし、ローカル設定が使用されている場合は、これらの設定ステートメントに設定された値が適用されます。
注:
LSPがステートフルPCEの制御下にある間にCLIを使用してローカル設定を変更しても、LSPには影響しません。これらの変更は、ローカル設定が適用された場合にのみ有効になります。 |
|
|
|
これらの設定ステートメントは、PCE設定と一緒に設定することはできません。 |
|
|
残りのLSP設定ステートメントは、既存のLSPの場合と同様に適用できます。PCE制御LSPに対して上記の設定ステートメントのいずれかを設定すると、設定されたパラメータがいつ有効になるかを示すMPLSログメッセージが生成されます。
PCE制御LSP保護
高速再ルートやバイパスLSPなどの保護パスは、制約ベースルーティングを使用してPCCによってローカルで計算されます。ステートフルPCEは、プライマリパス(ERO)のみを指定します。また、ローカル設定にLSP保護用の非スタンバイセカンダリパスがない場合でも、PCEは非スタンバイセカンダリパスをトリガーできます。
PCE制御LSP ERO
PCE制御LSP(PCC委任LSPおよびPCE開始LSP)の場合、PCEからPCCに送信する必要があるのは、本格的なERO(明示的なルートオブジェクト)オブジェクトだけです。そうしないと、PCCはそのPCEPセッションのPCUpdateメッセージまたはPCCreateメッセージを拒否します。
Junos OSリリース17.2以降、 external cspfに加えて、PCE制御LSPに local cspf と no cspfの2つの新しいパス計算タイプが導入されます。
-
local cspf—PCCは、PCEがタイプ5のジュニパーベンダー TLV(企業番号:0x0a4c)を送信する場合にのみ、local cspf計算タイプを使用します。 -
no cspf- PCE も PCC も制約付きパス計算を実行しません。エンドポイントと制約は、IGPパスでLSPを設定するためのRSVPモジュールに与えられます。PCCは、以下の場合
no cspf計算タイプを使用します。-
PCEが
local cspfTLVを送信し、このLSPのJunos OS設定または一致するテンプレートがPCC委任LSPにno-cspf含まれている場合。 -
PCEが
local cspfTLVを送信し、このLSPのJunos OS設定テンプレートがPCE開始LSPにno-cspf含まれている場合。 -
PCEが空のEROまたはルーズERO(EROオブジェクトにルーズビットが設定されている)を使用して
local cspfTLVを送信しない場合。
-
これらの新しい計算タイプにより、PCC は ERO オブジェクトをルーズ ERO または空の ERO として受け入れることができます。パスを計算できない外部パスコンピューティングエンティティは、分析に基づいて帯域幅や色などのパラメーターを変更できます。このような場合、空のEROオブジェクトまたはルーズEROが使用され、PCCがたどるパスを決定します。
PCE制御のポイントツーマルチポイントRSVP-TE LSP
PCEとPCCの間でPCEPセッションが確立されると、PCCはLSP状態同期のためにシステム内のすべてのLSPをPCEに報告します。これには、PCC制御、PCE委任、およびPCE開始のポイントツーポイントLSPが含まれます。 Junos OSリリース15.1F6および16.1R1以降、この機能はポイントツーマルチポイントLSPも報告するように拡張されています。PCEの場合、ポイントツーマルチポイントLSPはRSVPポイントツーマルチポイントLSPのLSPと類似しており、ポイントツーマルチポイントLSPは、ポイントツーマルチポイント識別子の下にグループ化されたポイントツーポイントLSPの集合として扱われます。
デフォルトでは、ポイントツーマルチポイント LSP の PCE 制御は PCC でサポートされていません。この機能を追加するには、[edit protocols pcep pce pce-name]または[edit protocols pcep pce-group group-id]階層レベルでp2mp-lsp-report-capabilityステートメントを含めます。PCCでポイントツーマルチポイントレポート機能が設定された後、PCCはこの機能をPCEにアドバタイズします。PCEが同じポイントツーマルチポイントレポート機能をアドバタイズした場合、PCCはLSP状態同期のために完全なポイントツーマルチポイントLSPツリーをPCEに報告します。
ポイントツーマルチポイント TE LSP 機能を持つ PCC は、ステートフル PCE、ポイントツーマルチポイント更新、およびポイントツーマルチポイント LSP 名をキーとしてサポートする LSP データベースのポイントツーマルチポイント TE LSP のレポートをサポートします。ただし、Junos OSリリース15.1F6および16.1では、以下の機能はサポートされていません。
-
静的なポイントツーマルチポイントLSP
-
PCE委任およびPCE開始ポイントツーマルチポイントLSP
-
自動帯域幅
-
TE++
-
PCEリクエストと応答メッセージ
-
テンプレートを使用したポイントツーマルチポイントLSPの作成
-
PCEが開始するポイントツーマルチポイントLSPでのフォワードエントリの設定
-
プロビジョニングされたLSPを指すルーター上でフォワードエントリを設定します。
PCE主導のポイントツーポイントLSP
Junos OSリリース16.1以降、PCEP機能が拡張され、ステートフルPCEがPCCを介してトラフィックエンジニアリングLSPを開始およびプロビジョニングできるようになります。以前は、LSPはPCCで設定され、PCCは外部LSPの制御をPCEに委任していました。LSP 状態の所有権は PCC によって維持されました。PCE開始LSPの導入により、PCEは、PCCにローカルに設定されたLSPを必要とせずに、トラフィック制御ポイントツーポイントLSPを動的に開始およびプロビジョニングすることができます。PCEからPCCreateメッセージを受信すると、PCCはPCE開始LSPを作成し、自動的にLSPをPCEに委任します。
デフォルトでは、PCCはPCEからPCEが開始したポイントツーポイントLSPのプロビジョニングリクエストを拒否します。PCCでPCE開始LSPのサポートを有効にするには、[edit protocols pcep pce pce-id]または[edit protocols pcep pce-group group-id]階層レベルでlsp-provisioningステートメントを含めます。
PCCは、PCEとのPath Computation Element Protocol(PCEP)セッションを確立しながら、PCEが開始するポイントツーポイントLSPをサポートする機能を示します。PCEは、LSPを開始するためにこの機能を持つPCCを選択します。PCEは、PCE開始LSPパラメーターをPCCに提供します。PCEが開始したポイントツーポイントLSPパラメーターを受信すると、PCCはLSPを設定し、LSP IDを割り当て、自動的にLSPをPCEに委任します。
LSP を開始する PCE が PCE 開始のポイントツーポイント LSP パラメーターを提供しない場合、PCC はデフォルト パラメーターを使用します。オプションのLSPテンプレートは、LSPパラメーターがPCEによって提供されない場合に、PCEが開始するポイントツーポイントLSPの値を指定するように設定することもできます。PCEが開始するポイントツーポイントLSPのLSPテンプレートをPCC上で設定するには、[edit protocols mpls lsp-external-controller lsp-external-controller]階層レベルでlabel-switched-path-templateステートメントを含めます。
PCEPセッションが終了すると、PCCはサービスの中断を避けるために、PCEが開始したLSP(delegation cleanup timeout と lsp cleanup timer)をすぐに削除することなく、2つのタイマーを開始します。この間、アクティブなステートフルPCEは、障害が発生したPCEによってプロビジョニングされたLSPの制御を取得できます。
PCEは、PCEが開始したポイントツーポイントLSPの委任をPCCに返して、PCE間のLSP転送を許可することができます。PCEが開始したLSPの制御は、委任クリーンアップタイムアウトの満了時にPCCに戻ります。委任クリーンアップタイムアウトが終了し、障害が発生したPCEからLSPの制御権を他のPCEが取得していない場合、PCCは非委任PCE開始LSPのローカル制御を行います。その後、元のステートフルPCEまたは新しいアクティブなステートフルPCEが、ローカルで制御されたPCEによって開始されたポイントツーポイントLSPの制御を取得したい場合、PCCはこれらのLSPをPCEに委任し、LSPクリーンアップタイマーは停止します。
PCCは、LSPクリーンアップタイマーが終了するのを待ってから、障害が発生したPCEから委任されていないPCE開始ポイントツーポイントLSPを削除します。LSP クリーンアップ タイマーが終了し、障害が発生した PCE から LSP の制御を他の PCE が取得していない場合、PCC は障害が発生した PCE によってプロビジョニングされたすべての LSP を削除します。
Junos OSリリース21.1R1以降、PCE開始RSVPベースのポイントツーポイントおよびポイントツーマルチポイントLSPのノンストップアクティブルーティング(NSR)がサポートされています。プライマリルーティングエンジンのみが、コントローラとのPCEPセッションを維持します。PCEが開始したすべてのP2MP LSPのマルチキャストフロー仕様を含む、PCEによって開始されたすべてのRSVP LSPをバックアップルーティングエンジンと同期させます。スイッチオーバー中、PCEPセッションはダウンし、バックアップのルーティングエンジンがプライマリルーティングエンジンになると再確立されます。これにより、ルーティングエンジンの切り替え時にPCEが開始したRSVP LSPを介して転送されるトラフィックのトラフィックロスが低減されます。この機能は、NSRが設定されている場合に有効になります。
PCE開始バイパスLSP
PCE開始バイパスLSPを理解する
ネットワーク内のバックアップ保護パスにトラフィックを処理するのに十分な帯域幅がないため、リンクまたはノードの障害時にトラフィックが停止する可能性があります。このようなネットワークでは、PCEを使用してすべてのパスを計算できますが、ネットワークパフォーマンスを最適化するために、ローカル保護パスもPCEを介して制御する必要があります。
Junos OSリリース19.2R1以降のリリースでは、インターネットドラフトdraft-cbrt-pce-stateful-local-protection-01(2018年12月終了)、 PCEP拡張機能for RSVP-TE Local-Protection with PCE-Statefulを部分的にサポートしています。PCEP機能を拡張して、ステートフルPCEが保護されたインターフェイスのバイパスLSPを開始、プロビジョニング、管理できるようにしています。リンクまたはノードを保護するために、帯域幅予約付きの複数のバイパスLSPをPCEが開始できます。バイパスLSPの帯域幅は、保護する可能性のあるプライマリLSPの合計帯域幅よりも小さくなることが予想されます。
動的バイパスLSPよりも手動バイパスLSP(利用可能な場合)を優先する既存のバイパス選択メカニズムは、動的バイパスLSPよりもPCEプロビジョニングバイパスLSP(利用可能な場合)を優先するように拡張されています。PCEプロビジョニングされたバイパスLSPは、動的バイパスLSPよりも優先度が高くなりますが、手動バイパスLSPよりも優先度は低くなります。
clear rsvp sessionなどの運用バイパスLSPで実行するために使用される一連の操作は、PCE開始バイパスLSPでも実行できます。show path-computation-client status extensiveやshow path-computation-client lspなどのコマンドを使用して、PCE開始バイパスLSP統計情報を表示できます。
PCE開始バイパスLSPのサポートにより、以下が可能です。
-
外部コントローラからPCEPを介してRSVPバイパスLSPを作成します。ここで、バイパスLSPは次のとおりです。
-
リンクまたはノード保護用にすることができます。
-
帯域幅がゼロ以外である必要があります。
-
指定された厳密な ERO が必要です。
-
-
既存のPCE作成バイパスLSPの帯域幅とEROを更新します。
-
プライマリLSPのアドミッション制御のためのバイパスLSP帯域幅をオーバーサブスクライブします。これはバイパスごとのパラメーターである必要があり、バイパスLSPごとのサブスクリプションの更新を許可する必要があります。
PCE開始バイパスLSPのメリット
PCE開始バイパスLSPには、以下のメリットがあります。
-
障害後のトラフィックの制御が向上し、保護パスのパス計算がより決定論的になります。
-
LSPの多様なパスとそのローカル保護パスの維持など、複雑な制約や多様性の要件を満たします。
-
障害イベント時にリンクが過負荷にならないようにします。
PCEPセッション障害時のPCE開始バイパスLSPの動作
PCEPセッション障害が発生すると、PCEが開始するバイパスLSPは、状態タイムアウトタイマーが終了するまで孤立します。PCEが開始したバイパスLSPは、状態タイムアウトタイマーの満了時にクリーンアップされます。PCEが開始するバイパスLSP(PCEPセッションが失敗した後)を制御するために、PCE(プライマリPCEまたはセカンダリPCEのいずれか)は、状態タイムアウトタイマーの有効期限が切れる前にPCInitiateメッセージを送信します。
PCE主導のポイントツーマルチポイントLSP
ポイントツーマルチポイントPCE開始LSPの導入により、PCEは、PCC上でローカルLSPを設定することなく、ポイントツーマルチポイントLSPを動的に開始およびプロビジョニングできます。これにより、PCEは、PCEP(Path Computation Element Protocol)セッション内およびセッション間でポイントツーマルチポイントのパス計算のタイミングと順序を制御し、一元的に制御および展開される動的なネットワークを作成できます。
詳細については、「 PCE開始ポイントツーマルチポイントLSPをサポートするMPLS RSVP-TEのパス計算要素プロトコルを理解する」を参照してください。
PCEPのSRv6 LSP
セグメントルーティングは、MPLSとIPv6の両方の転送プレーンに適用できます。パス計算要素(PCE)は、MPLS と IPv6 の両方の転送プレーンの SR パスを計算します。PCEPのセグメントルーティングは、PCE主導、ローカル作成、およびIPv6転送プレーンで委任されたSR LSPなどのSR LSPをサポートします。
PCEP における SRv6 LSP のメリット
- PCE開始SRv6 LSPを作成できます。
- ルーターで作成されたSRv6 LSPをコントローラに委任します。
- ルーター上でローカルに作成されたLSPをコントローラに報告します。
- SRv6ネットワークプログラミングは、MPLSを展開することなくセグメントルーティングを活用する柔軟性を提供します。
PCEPは、PCE開始の色付きおよび色なしのSRv6 LSPの作成、更新、削除をサポートしています。PCEが開始したSRv6 LSPが、同じIPまたはカラーベースIPに対して静的なSRv6 LSPと共存する場合、静的なSRv6 TE LSP寄与ルートがPCE開始のSRv6 TE LSP寄与ルートよりも優先されます。
PCEPセッションをSRv6対応に設定するには、[edit protocols pcep pce pce-id]または[edit protocols pcep pce-group pce-id]階層レベルでsrv6-capability設定ステートメントを有効にする必要があります。srv6-capability設定ステートメントが有効になっている場合、[edit protocols source-packet-routing]階層レベルでもsrv6設定ステートメントを有効にする必要があります。有効にしないと、コミット中にエラーが表示されます。
SR-TEにSRv6を設定するには、[edit protocols source-packet-routing]階層レベルでsrv6設定ステートメントを追加する必要があります。
[詳細については、 SRv6トンネルのSR-TEポリシーを理解する を参照してください。
SRv6 LSP のセグメント リストの最大深度を設定するには、[edit protocols pcep] 階層レベルで maximum-srv6-segment-list-depth 設定ステートメントを有効にする必要があります。
自動帯域幅とPCE制御LSP
Junos OSリリース14.2R4以降、PCE制御LSPに自動帯域幅のサポートが提供されます。以前のリリースでは、自動帯域幅オプションはPCE制御LSPには適用されませんでしたが、自動帯域幅および制約ベースルーティングの制御下にあるLSPはPCE制御LSPと共存できます。自動帯域幅の統計収集は、PCE制御LSPの制御モードが外部からローカルに変更された場合にのみ有効になっていました。これは、PCEに接続できない場合や、PCEがLSPの委任をPCCに返す場合に発生していました。
PCEPセッションのTCP-MD5認証
ステートフルPCEサーバーは、ネットワーク全体のトラフィック制御パスの作成を自動化することで、ネットワーク使用率を高め、PCCとのPCEP通信を使用してカスタマイズされたプログラム可能なネットワーキングエクスペリエンスを実現します。PCCはLSPレポートをPCEサーバーに送信し、PCEはLSPをPCCに更新またはプロビジョニングします。PCEPセッションを介して送信されるデータは、PCEサーバーが外部パスコンピューティングを実行するために不可欠です。その結果、PCEP通信に対する攻撃によってネットワークサービスが中断される可能性があります。改ざんされたPCEPメッセージがPCCに送信されると、不適切なLSPが設定される可能性があります。同様に、改ざんされたPCEPメッセージがPCEに送信されると、PCEはネットワークの誤ったビューを学習します。
PCE機能を効果的に実行する上でのPCEとPCC間のPCEP通信の重要性を考慮して、Junos OSリリース16.1では、RFC 5440に従ってTCP-MD5認証を使用してPCEPセッションを保護する機能が導入されています。この機能は、攻撃の対象となり、ネットワークサービスを中断する可能性があるPCEPセッションを介したPCEとPCC間の通信を保護します。
PCEPセッションでMD5セキュリティメカニズムを有効にするには、PCEPセッションの [edit protocols pcep pce pce-id] 階層レベルでMD5認証キーを定義してバインドすることをお勧めします。ただし、 [edit security authentication-key-chains key-chain] 階層レベルから定義済みのキーチェーンを使用して、PCEPセッションを保護することもできます。この場合、定義済みのキーチェーンを [edit protocols pcep pce pce-id] 階層レベルでPCEPセッションにバインドする必要があります。
PCCで以下の設定を実行して、PCEとのセキュアなPCEPセッションを確立します。
-
MD5認証キーの使用:
[edit protocols pcep pce pce-id] user@PCC# set authentication-key key
-
事前定義された認証キーチェーンを使用します。
[edit protocols pcep pce pce-id] user@PCC# set authentication-key-chain key-chain user@PCC# set authentication-algorithm md5
セキュアなPCEPセッションを正常に確立するには、PCEサーバーとPCCの両方で事前共有認証キーを使用してMD5認証を設定する必要があります。PCEとPCCは、同じ鍵を使用して、PCEPセッションのTCP接続で送信された各セグメントの信頼性を検証します。
-
Junos OSリリース16.1は、PCEPセッションのTCP-MD5認証のみをサポートしており、盗聴、改ざん、メッセージ偽造に対する保護など、TLSおよびTCP-AOのサポートは拡張されていません。
-
PCEPセッションにセキュリティメカニズムを最初に適用すると、セッションがリセットされます。
-
MD5が誤って設定されているか、PCEPセッションの片側で設定されていない場合、セッションは確立されません。PCCとPCEの設定が一致していることを確認します。
-
この機能は、セッション認証メカニズムをサポートしません。
-
PCEPセッションで使用される認証キーチェーンを表示するには、
show path-computation-client statusおよびshow protocols pcepコマンド出力を使用します。 -
show system statistics tcp | match authコマンドを使用して、認証エラーのためにTCPによってドロップされたパケット数を表示します。 -
キーチェーンの動作は、
show security keychain detailコマンド出力を使用して確認できます。
クライアント側PCE実装がネットワークパフォーマンスに与える影響
ステートフルデータベースのメンテナンスは簡単ではありません。単一の集中型PCE環境では、ステートフルPCEは、PCEが計算したすべてのTE LSP、実際に設定されたTE LSP(これがわかっている場合)、およびTE LSPがいつ破棄されたかを記憶するだけで済みます。しかしながら、これらの要件は、状態、ネットワークの使用と処理、およびネットワーク全体のグローバルなリンクの最適化の点で、かなりの制御プロトコルのオーバーヘッドを引き起こします。したがって、ステートフルPCE実装の懸念事項は次のとおりです。
-
信頼性の高い同期メカニズムでは、コントロールプレーンのオーバーヘッドが大きく発生します。PCE は相互に通信することで状態を同期することもありますが、複数の PCE 間で実行される分散計算を使用して TE LSP を設定すると、同期と競合状態の回避の問題が大きく複雑になります。
-
アウトオブバンドトラフィックエンジニアリングデータベースの同期は、分散PCE計算モデルで複数のPCEを設定すると複雑になる可能性があり、競合状態、スケーラビリティの問題などが発生しやすい可能性があります。
-
ネットワーク全体の状態を組み込んだパス計算は、PCEにすべてのパス、優先度、レイヤーに関する詳細な情報があったとしても、非常に複雑です。
上記の懸念にもかかわらず、ステートフルPCEの部分的なクライアント側実装は、大規模なトラフィックエンジニアリングシステムにおいて非常に効果的です。これは、TE LSP状態のグローバルな可視性と、制御対象デバイス間のパス予約の順序付き制御の要件を提供することで、迅速なコンバージェンスと、最適なリソース使用の観点からの大きなメリットを提供します。
例:MPLS RSVP-TE のパス計算要素プロトコルの設定
この例では、パス計算クライアント(PCC)上のトラフィック エンジニアリング ラベルスイッチ パス(TE LSP)に対して、パス計算要素(PCE)による外部パス計算を有効にする方法を示します。また、PCCでPath Computation Element Protocol(PCEP)を設定し、PCEからPCCへの通信を有効にする方法についても説明します。
要件
この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。
-
ACXシリーズルーター、M Seriesマルチサービスエッジルーター、MXシリーズ5Gユニバーサルルーティングプラットフォーム、T Seriesコアルーター、またはPTXシリーズトランスポートルーターの組み合わせが可能な3台のルーターで、そのうちの1台はPCCとして設定されています。
-
PCCから外部ステートフルPCEへのTCP接続。
-
Junos OSリリース12.3以降とJSDNアドオンパッケージとともにPCCで実行されている。
JSDNアドオンパッケージは、コアのJunos OSインストールパッケージと一緒にインストールする必要があります。
始める前に:
-
デバイスインターフェイスを設定します。
-
MPLS と RSVP-TE を設定します。
-
IS-ISまたはその他のIGPプロトコルを設定します。
概要
Junos OSリリース12.3以降、MPLS RSVP-TE機能が拡張され、PCC上でステートフルPCEアーキテクチャ(draft-ietf-pce-stateful-pce)をクライアント側で部分的に実装できるようになりました。
ステートフルPCEアーキテクチャのクライアント側での部分的な実装は、インターネットドラフトdraft-ietf-pce-stateful-pceのバージョン2に基づいています。Junos OSリリース16.1以降、この実装は、インターネットドラフトdraft-ietf-pce-stateful-pce-07で定義されているバージョン7をサポートするようにアップグレードされます。16.1より前のリリースでは、古いバージョンのPCEドラフトがサポートされているため、以前のリリースを実行しているPCCと、インターネットドラフトdraft-ietf-pce-stateful-pce-07に準拠したステートフルPCEサーバーとの間で相互運用性の問題が発生します。
PCEによる外部パスコンピューティングを有効にするには、[edit mpls]および[edit mpls lsp lsp-name]階層レベルでPCCにlsp-external-controllerステートメントを含めます。
lsp-external-controller pccd;
lsp-external-controllerステートメントで設定されたLSPはPCE制御LSPと呼ばれ、デフォルトではPCEの外部制御下にあります。アクティブなステートフルPCEは、PCCのPCE制御LSPに対して、帯域幅、パス(ERO)、優先度など、CLIから設定されたパラメーターを上書きできます。
PCEからPCCへの通信を有効にするには、 [edit protocols] 階層レベルでPCC上でPCEPを設定します。
pcep { ... }
PCCでPCEPを設定する場合は、以下の点に留意してください。
-
JSDNアドオンパッケージは、コアのJunos OSインストールパッケージと一緒にインストールする必要があります。
-
Junos OSリリース12.3は、ステートフルPCEのみをサポートします。
-
PCCは、最大10個のステートフルPCEに接続できます。どの時点でも、PCCがパス計算のためにLSPを委任するメインPCE(優先度値が最も低いPCE、またはPCE優先度がない場合に最初にPCCに接続するPCE)は1つだけです。
-
Junos OSリリース12.3では、PCCは常にPCEPセッションを開始します。リモートPCEによって開始されたPCEPセッションは、PCCによって受け入れられません。
-
LSP保護やメークビフォアブレークなどの既存のLSP機能は、PCE制御LSPで動作します。
-
PCE制御LSPでは自動帯域幅オプションはオフになっていますが、自動帯域幅および制約ベースルーティングの制御下にあるLSPはPCE制御LSPと共存できます。
-
PCE制御LSPは、ルートへのlspネクストホップ、転送隣接関係、CCC接続、論理トンネルなど、他のCLI設定で参照できます。
-
PCE制御LSPはGRESをサポートしていません。
-
論理システム下のPCE制御LSPはサポートされていません。
-
PCE制御LSPは、ポイントツーマルチポイントLSPにすることはできません。
-
双方向LSPはサポートされていません。
-
PCE制御LSPは、プライマリパスなしでセカンダリパスを持つことはできません。
-
PCE制御LSPは外部パス計算に依存しており、これは全体的なセットアップ時間、再ルート、および事前対応機能に影響します。
-
既存のLSPの設定時間とコンバージェンス時間(reroute、MBB)は、PCE制御LSPがない場合の以前のリリースと同じです。ただし、PCE制御LSPが存在する場合、わずかな影響が見られます。
-
ERO の計算時間は、ローカル CSPF よりも大幅に長くなることが予想されます。
トポロジー
この例では、PCCは外部のアクティブステートフルPCEに接続するingressルーターです。
ルーターPCCの外部LSPは、以下のように計算されます。
-
ルーターPCCは、CLIを使用して設定されたLSPトンネル設定を受信します。受信した設定が外部パスコンピューティングで有効になっていると仮定すると、ルーターPCCは、帯域幅、パス、優先度などのLSP属性の一部がステートフルPCEの制御下にあることを認識し、LSPをPCEに委任します。
この例では、外部LSPは
PCC-to-R2と呼ばれ、ルーターPCCからルーターR2に設定されています。PCC-to-R2のCLI設定されたEROはPCC-R0-R1-R2です。PCC-to-R2の帯域幅は10mで、設定優先度と保留優先度の値はともに4です。 -
ルーターPCCは、PCE制御のLSP属性を取得しようとします。これを行うために、ルーターPCCは、LSPが設定されたことを示すPCRptメッセージをステートフルPCEに送信します。PCRptメッセージは、LSPのステータスを伝達し、LSPのローカル設定パラメーターを含みます。
-
ステートフルPCEは、委任されたLSP属性の1つ以上を変更し、PCUpdメッセージを介して新しいLSPパラメーターをルーターPCCに送信します。
-
新しいLSPパラメーターを受信すると、ルーターPCCは新しいLSPを設定し、PCEが提供するパスを使用して再シグナリングします。
この例では、PCEが提供する
PCC-to-R2のEROはPCC-R3-R2です。PCC-to-R2の帯域幅は8mで、設定優先度と保留優先度の値はともに3です。 -
ルーターPCCは、新しいRROを含むPCRptをステートフルPCEに送信します。
設定
CLIクイックコンフィグレーション
この例を簡単に設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、コマンドを [edit] 階層レベルのCLIにコピー&ペーストしてください。
PCC
set interfaces ge-1/0/1 unit 0 family inet address 20.31.4.1/24 set interfaces ge-1/0/1 unit 0 family iso set interfaces ge-1/0/1 unit 0 family mpls set interfaces ge-1/1/1 unit 0 family inet address 20.31.1.1/24 set interfaces ge-1/1/1 unit 0 family iso set interfaces ge-1/1/1 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.255.179.95/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls lsp-external-controller pccd set protocols mpls label-switched-path PCC-to-R2 to 10.255.179.98 set protocols mpls label-switched-path PCC-to-R2 bandwidth 10m set protocols mpls label-switched-path PCC-to-R2 priority 4 4 set protocols mpls label-switched-path PCC-to-R2 primary to-R2-path set protocols mpls label-switched-path PCC-to-R2 lsp-external-controller pccd set protocols mpls path to-R2-path 20.31.1.2 strict set protocols mpls path to-R2-path 20.31.2.2 strict set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis level 1 disable set protocols isis interface all set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0 set protocols pcep pce pce1 destination-ipv4-address 10.209.57.166 set protocols pcep pce pce1 destination-port 4189 set protocols pcep pce pce1 pce-type active set protocols pcep pce pce1 pce-type stateful
R0
set interfaces ge-1/0/6 unit 0 family inet address 20.31.1.2/24 set interfaces ge-1/0/6 unit 0 family iso set interfaces ge-1/0/6 unit 0 family mpls set interfaces ge-1/0/7 unit 0 family inet address 20.31.2.1/24 set interfaces ge-1/0/7 unit 0 family iso set interfaces ge-1/0/7 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.255.179.96/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis level 1 disable set protocols isis interface all set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0
R1
set system ports console log-out-on-disconnect set interfaces ge-2/0/3 unit 0 family inet address 20.31.2.2/24 set interfaces ge-2/0/3 unit 0 family iso set interfaces ge-2/0/3 unit 0 family mpls set interfaces ge-2/0/4 unit 0 family inet address 20.31.8.1/24 set interfaces ge-2/0/4 unit 0 family iso set interfaces ge-2/0/4 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.255.179.97/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis level 1 disable set protocols isis interface all set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0
R2
set interfaces ge-1/0/2 unit 0 family inet address 20.31.8.2/24 set interfaces ge-1/0/2 unit 0 family iso set interfaces ge-1/0/2 unit 0 family mpls set interfaces ge-1/0/3 unit 0 family inet address 20.31.5.2/24 set interfaces ge-1/0/3 unit 0 family iso set interfaces ge-1/0/3 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.255.179.98/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis level 1 disable set protocols isis interface all set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0
R3
set interfaces ge-2/0/1 unit 0 family inet address 20.31.4.2/24 set interfaces ge-2/0/1 unit 0 family iso set interfaces ge-2/0/1 unit 0 family mpls set interfaces ge-2/0/3 unit 0 family inet address 20.31.5.1/24 set interfaces ge-2/0/3 unit 0 family iso set interfaces ge-2/0/3 unit 0 family mpls set interfaces lo0 unit 0 family inet address 10.255.179.99/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis level 1 disable set protocols isis interface all set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0
手順
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、 設定モードでのCLIエディターの使用を参照してください。
ルーターPCCを設定するには:
各ルーターの適切なインターフェイス名、アドレス、およびその他のパラメータを変更した後、MPLSドメイン内のすべてのジュニパーネットワークスingressルーターに対してこの手順を繰り返します。
-
インターフェイスを設定します。
MPLSを有効にするには、インターフェイスが受信MPLSトラフィックを破棄しないように、インターフェイスにプロトコルファミリーを含めます。
[edit interfaces]user@PCC# set ge-1/0/1 unit 0 family inet address 20.31.4.1/24 user@PCC# set ge-1/0/1 unit 0 family iso user@PCC# set ge-1/0/1 unit 0 family mpls user@PCC# set ge-1/1/1 unit 0 family inet address 20.31.1.1/24 user@PCC# set ge-1/1/1 unit 0 family iso user@PCC# set ge-1/1/1 unit 0 family mpls user@PCC# set lo0 unit 0 family inet address 10.255.179.95/32 -
管理インターフェイスを除くルーターPCCのすべてのインターフェイスでRSVPを有効にします。
[edit protocols]user@PCC# set rsvp interface all user@PCC# set rsvp interface fxp0.0 disable -
ルーターPCCからルーターR2へのLSP(ラベルスイッチパス)を設定し、PCEによるLSPの外部制御を有効にします。
[edit protocols] user@PCC# set mpls lsp-external-controller pccd user@PCC# set mpls label-switched-path PCC-to-R2 to 10.255.179.98/32 user@PCC# set mpls label-switched-path PCC-to-R2 bandwidth 10m user@PCC# set protocols mpls label-switched-path PCC-to-R2 priority 4 4 user@PCC# set protocols mpls label-switched-path PCC-to-R2 primary to-R2-path user@PCC# set protocols mpls label-switched-path PCC-to-R2 lsp-external-controller pccd
-
ルーターPCCからルーターR2にLSPを設定します。ルーターR2はローカル制御を持ち、PCEが提供するLSPパラメーターによって上書きされます。
[edit protocols] user@PCC# set mpls path to-R2-path 20.31.1.2/30 strict user@PCC# set mpls path to-R2-path 20.31.2.2/30 strict
-
管理インターフェイスを除くルーターPCCのすべてのインターフェイスでMPLSを有効にします。
[edit protocols] user@PCC# set mpls interface all user@PCC# set mpls interface fxp0.0 disable
-
管理インターフェイスを除くルーターPCCのすべてのインターフェイスでIS-ISを設定します。
[edit protocols] user@PCC# set isis level 1 disable user@PCC# set isis interface all user@PCC# set isis interface fxp0.0 disable user@PCC# set isis interface lo0.0
-
ルーターPCCが接続するPCEを定義し、PCEのIPアドレスを設定します。
[edit protocols] user@PCC# set pcep pce pce1 destination-ipv4-address 10.209.57.166
-
TCPベースのPCEPを使用してPCEに接続するルーターPCCの宛先ポートを設定します。
[edit protocols] user@PCC# set pcep pce pce1 destination-port 4189
-
PCEタイプを設定します。
[edit protocols] user@PCC# set pcep pce pce1 pce-type active user@PCC# set pcep pce pce1 pce-type stateful
結果
設定モードから、 show interfaces および show protocols コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PCC# show interfaces
ge-1/0/1 {
unit 0 {
family inet {
address 20.31.4.1/24;
}
family iso;
family mpls;
}
}
ge-1/1/1 {
unit 0 {
family inet {
address 20.31.1.1/24;
}
family iso;
family mpls;
}
}
lo0 {
unit 0 {
family inet {
address 10.255.179.95/32;
}
}
}
user@PCC# show protocols
rsvp {
interface all;
interface fxp0.0 {
disable;
}
}
mpls {
lsp-external-controller pccd;
label-switched-path PCC-to-R2 {
to 10.255.179.98;
bandwidth 10m;
priority 4 4;
primary to-R2-path;
lsp-external-controller pccd;
}
path to-R2-path {
20.31.1.2 strict;
20.31.2.2 strict;
}
interface all;
interface fxp0.0 {
disable;
}
}
isis {
level 1 disable;
interface all;
interface fxp0.0 {
disable;
}
interface lo0.0;
}
pcep {
pce pce1 {
destination-ipv4-address 10.209.57.166;
destination-port 4189;
pce-type active stateful;
}
}
デバイスの設定が完了したら、設定モードから commit を入力します。
検証
設定が正常に機能していることを確認します。
PCEPセッションステータスの確認
目的
PCEステータスがアップしたときに、PCEとルーターPCC間のPCEPセッションステータスを確認します。
アクション
動作モードから、 show path-computation-client active-pce コマンドを実行します。
user@PCC> show path-computation-client active-pce
PCE pce1
General
IP address : 10.209.57.166
Priority : 0
PCE status : PCE_STATE_UP
Session type : PCE_TYPE_STATEFULACTIVE
PCE-mastership : main
Counters
PCReqs Total: 0 last 5min: 0 last hour: 0
PCReps Total: 0 last 5min: 0 last hour: 0
PCRpts Total: 5 last 5min: 5 last hour: 5
PCUpdates Total: 1 last 5min: 1 last hour: 1
Timers
Local Keepalive timer: 30 [s] Dead timer: 120 [s]
Remote Keepalive timer: 30 [s] Dead timer: 120 [s]
Errors
PCErr-recv
PCErr-sent
PCE-PCC-NTFS
PCC-PCE-NTFS
意味
出力には、ルーターPCCが接続されている現在アクティブなステートフルPCEに関する情報が表示されます。 PCE status 出力フィールドは、PCEとルーターPCC間のPCEPセッションの現在のステータスを示します。
pce1の場合、PCEPセッションのステータスはPCE_STATE_UPであり、PCEPセッションがPCEPピア間で確立されたことを示します。
PCRptsの統計は、LSPの現在のステータスを報告するためにルーターPCCからPCEに送信されたメッセージの数を示しています。PCUpdates統計は、ルーターPCCがPCEから受信したメッセージの数を示しています。PCUpdatesメッセージには、PCE制御LSPのPCE変更パラメーターが含まれています。
LSP制御が外部の場合のPCE制御LSPステータスの検証
目的
LSPが外部制御下にある場合、ルーターPCCからルーターR2へのPCE制御LSPの状態を確認します。
アクション
動作モードから、 show mpls lsp name PCC-to-R2 extensive コマンドを実行します。
user@PCC> show mpls lsp name PCC-to-R2 extensive
Ingress LSP: 1 sessions
10.255.179.98
From: 10.255.183.59, State: Up, ActiveRoute: 0, LSPname: PCC-to-R2
ActivePath: to-R2-path (primary)
LSPtype: Externally controlled, Penultimate hop popping
LSP Control Status: Externally controlled
LoadBalance: Random
Encoding type: Packet, Switching type: Packet, GPID: IPv4
*Primary to-R2-path State: Up
Priorities: 3 3
Bandwidth: 8Mbps
SmartOptimizeTimer: 180
No computed ERO.
Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID):
20.31.4.2 20.31.5.2
21 Mar 11 05:00:56.736 EXTCTRL LSP: Sent Path computation request and LSP status
20 Mar 11 05:00:56.736 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
19 Mar 11 05:00:56.735 Selected as active path
18 Mar 11 05:00:56.734 EXTCTRL LSP: Sent Path computation request and LSP status
17 Mar 11 05:00:56.734 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
16 Mar 11 05:00:56.734 Record Route: 20.31.4.2 20.31.5.2
15 Mar 11 05:00:56.734 Up
14 Mar 11 05:00:56.713 EXTCTRL LSP: Sent Path computation request and LSP status
13 Mar 11 05:00:56.713 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
12 Mar 11 05:00:56.712 Originate Call
11 Mar 11 05:00:56.712 EXTCTRL_LSP: Received setup parameters : 20.31.4.2 20.31.5.2
10 Mar 11 05:00:49.283 EXTCTRL LSP: Sent Path computation request and LSP status
9 Mar 11 05:00:49.283 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
8 Mar 11 05:00:20.581 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
7 Mar 11 05:00:20.581 EXTCTRL LSP: Sent Path computation request and LSP status
6 Mar 11 05:00:20.581 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
5 Mar 11 05:00:20.580 EXTCTRL_LSP: Control status became external
4 Mar 11 05:00:03.716 EXTCTRL_LSP: Control status became local
3 Mar 11 05:00:03.714 EXTCTRL LSP: Sent Path computation request and LSP status
2 Mar 11 05:00:03.714 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
1 Mar 11 05:00:00.279 EXTCTRL LSP: Awaiting external controller connection
Created: Mon Mar 11 05:00:00 2013
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
意味
出力では、 LSPtype と LSP Control Status 出力フィールドに、LSPが外部制御されていることが示されています。出力には、ルーターPCCとPCEの間で送信されたPCEPメッセージのログも表示されます。
PCEとルーターPCC間のPCEPセッションは稼働しており、ルーターPCCは以下のPCE制御LSPパラメーターを受信します。
-
ERO(パス)—20.31.4.2および20.31.5.2
-
帯域幅—8 Mbps
-
優先度—3 3(設定値と保留値)
LSP制御がローカルの場合のPCE制御LSPステータスの検証
目的
LSP制御がローカルになったら、ルーターPCCからルーターR2へのPCE制御LSPのステータスを確認します。
アクション
動作モードから、 show mpls lsp name PCC-to-R2 extensive コマンドを実行します。
user@PCC> show mpls lsp name PCC-to-R2 extensive
Ingress LSP: 1 sessions
10.255.179.98
From: 10.255.183.59, State: Up, ActiveRoute: 0, LSPname: PCC-to-R2
ActivePath: to-R2-path (primary)
LSPtype: Externally controlled, Penultimate hop popping
LSP Control Status: Locally controlled
LoadBalance: Random
Encoding type: Packet, Switching type: Packet, GPID: IPv4
*Primary to-R2-path State: Up
Priorities: 4 4 (ActualPriorities 3 3)
Bandwidth: 10Mbps (ActualBandwidth: 8Mbps)
SmartOptimizeTimer: 180
No computed ERO.
Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID):
20.31.4.2 20.31.5.2
22 Mar 11 05:02:09.618 EXTCTRL_LSP: Control status became local
21 Mar 11 05:00:56.736 EXTCTRL LSP: Sent Path computation request and LSP status
20 Mar 11 05:00:56.736 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
19 Mar 11 05:00:56.735 Selected as active path
18 Mar 11 05:00:56.734 EXTCTRL LSP: Sent Path computation request and LSP status
17 Mar 11 05:00:56.734 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
16 Mar 11 05:00:56.734 Record Route: 20.31.4.2 20.31.5.2
15 Mar 11 05:00:56.734 Up
14 Mar 11 05:00:56.713 EXTCTRL LSP: Sent Path computation request and LSP status
13 Mar 11 05:00:56.713 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
12 Mar 11 05:00:56.712 Originate Call
11 Mar 11 05:00:56.712 EXTCTRL_LSP: Received setup parameters : 20.31.4.2 20.31.5.2
10 Mar 11 05:00:49.283 EXTCTRL LSP: Sent Path computation request and LSP status
9 Mar 11 05:00:49.283 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
8 Mar 11 05:00:20.581 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
7 Mar 11 05:00:20.581 EXTCTRL LSP: Sent Path computation request and LSP status
6 Mar 11 05:00:20.581 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
5 Mar 11 05:00:20.580 EXTCTRL_LSP: Control status became external
4 Mar 11 05:00:03.716 EXTCTRL_LSP: Control status became local
3 Mar 11 05:00:03.714 EXTCTRL LSP: Sent Path computation request and LSP status
2 Mar 11 05:00:03.714 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
1 Mar 11 05:00:00.279 EXTCTRL LSP: Awaiting external controller connection
Created: Mon Mar 11 05:00:00 2013
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
意味
出力では、 LSP Control Status 出力フィールドは、LSPがローカル制御下にあることを示しています。PCE制御のLSPはローカル制御下にありますが、ルーターPCCは、次にLSPに信号を送る機会があるまで、PCEから提供されたパラメーターを使用し続けます。
これで、CLIを使用して設定されたLSPパラメーターと、使用中の実際の値としてLSPを確立するために使用されたPCE提供のパラメーターが表示されます。
-
帯域幅—10Mbps(実際の帯域幅:8Mbps)
-
優先度 - 4 4(実績優先度 3 3)
LSPに再シグナリングするトリガーが発生すると、ルーターPCCはローカル設定パラメーターを使用してPCE制御LSPを確立します。
user@PCC> show mpls lsp name PCC-to-R2 extensive externally-controlled
Ingress LSP: 1 sessions
10.255.179.98
From: 10.255.183.59, State: Up, ActiveRoute: 0, LSPname: PCC-to-R2
ActivePath: to-R2-path (primary)
LSPtype: Externally controlled, Penultimate hop popping
LSP Control Status: Locally controlled
LoadBalance: Random
Encoding type: Packet, Switching type: Packet, GPID: IPv4
*Primary to-R2-path State: Up
Priorities: 4 4
Bandwidth: 10Mbps
SmartOptimizeTimer: 180
Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 30)
20.31.1.2 S 20.31.2.2 S 20.31.8.2 S
Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID):
20.31.1.2 20.31.2.2 20.31.8.2
28 Mar 11 05:02:51.787 Record Route: 20.31.1.2 20.31.2.2 20.31.8.2
27 Mar 11 05:02:51.787 Up
26 Mar 11 05:02:51.697 EXTCTRL_LSP: Applying local parameters with this signalling attempt
25 Mar 11 05:02:51.697 Originate Call
24 Mar 11 05:02:51.696 Clear Call
23 Mar 11 05:02:51.696 CSPF: computation result accepted 20.31.1.2 20.31.2.2 20.31.8.2
22 Mar 11 05:02:09.618 EXTCTRL_LSP: Control status became local
21 Mar 11 05:00:56.736 EXTCTRL LSP: Sent Path computation request and LSP status
20 Mar 11 05:00:56.736 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
19 Mar 11 05:00:56.735 Selected as active path
18 Mar 11 05:00:56.734 EXTCTRL LSP: Sent Path computation request and LSP status
17 Mar 11 05:00:56.734 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
16 Mar 11 05:00:56.734 Record Route: 20.31.4.2 20.31.5.2
15 Mar 11 05:00:56.734 Up
14 Mar 11 05:00:56.713 EXTCTRL LSP: Sent Path computation request and LSP status
13 Mar 11 05:00:56.713 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
12 Mar 11 05:00:56.712 Originate Call
11 Mar 11 05:00:56.712 EXTCTRL_LSP: Received setup parameters : 20.31.4.2 20.31.5.2
10 Mar 11 05:00:49.283 EXTCTRL LSP: Sent Path computation request and LSP status
9 Mar 11 05:00:49.283 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
8 Mar 11 05:00:20.581 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
7 Mar 11 05:00:20.581 EXTCTRL LSP: Sent Path computation request and LSP status
6 Mar 11 05:00:20.581 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
5 Mar 11 05:00:20.580 EXTCTRL_LSP: Control status became external
4 Mar 11 05:00:03.716 EXTCTRL_LSP: Control status became local
3 Mar 11 05:00:03.714 EXTCTRL LSP: Sent Path computation request and LSP status
2 Mar 11 05:00:03.714 EXTCTRL_LSP: Computation request/lsp status contains: bandwidth 10000000 priority - setup 4 hold 4 hops: 20.31.1.2 20.31.2.2
1 Mar 11 05:00:00.279 EXTCTRL LSP: Awaiting external controller connection
Created: Mon Mar 11 05:00:00 2013
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
Computed EROは、20.31.1.2、20.31.2.2、20.31.8.2です。PCE制御LSPは、ローカル設定パラメーターを使用して確立されます。
例:PCE開始ポイントツーポイントLSPをサポートしたMPLS RSVP-TEのパス計算要素プロトコルの設定
この例では、Path Computation Element(PCE)が開始するトラフィック制御ポイントツーポイントのラベルスイッチパス(LSP)をサポートする機能を使用して、Path Computation Client(PCC)を設定する方法を示します。
要件
この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。
-
ACXシリーズ、M Series、MXシリーズ、またはT Seriesルーターの組み合わせが可能な3台のルーター。
-
ingressルーター(PCC)から 2 つの外部ステートフル PCE への TCP 接続。
-
PCCで実行されているJunos OSリリース16.1以降。
始める前に:
-
デバイスインターフェイスを設定します。
-
MPLS と RSVP-TE(RSVP トラフィック エンジニアリング)を設定します。
-
OSPFまたはその他のIGPプロトコルを設定します。
概要
Junos OSリリース16.1以降、PCEP機能が拡張され、ステートフルPCEがPCCを介してトラフィックエンジニアリングLSPを開始およびプロビジョニングできるようになります。以前は、LSPはPCCで設定され、PCCは外部LSPの制御をPCEに委任していました。LSP 状態の所有権は PCC によって維持されました。PCE開始LSPの導入により、PCEは、PCCにローカルに設定されたLSPを必要とせずに、トラフィック制御ポイントツーポイントLSPを動的に開始およびプロビジョニングすることができます。PCEからPCCreateメッセージを受信すると、PCCはPCE開始LSPを作成し、自動的にLSPをPCEに委任します。
PCE開始ポイントツーポイントLSPのサポートをPCCに設定する場合は、以下の点に留意してください。
-
Junos OSリリース13.3は、ステートフルPCEのみをサポートします。
-
Junos OSリリース13.3では、PCCは常にPCEPセッションを開始します。リモートPCEによって開始されたPCEPセッションは、PCCによって受け入れられません。
-
LSP保護やメークビフォアブレークなどの既存のLSP機能は、PCE開始LSPで動作します。
-
PCE開始LSPは、グレースフルルーティングエンジンスイッチオーバー(GRES)をサポートしていません。
-
論理システム下のPCE開始LSPはサポートされていません。
-
PCE開始LSPをポイントツーマルチポイントLSPにすることはできません。
-
双方向LSPはサポートされていません。
-
番号なしリンクのRSVP-TEはサポートされていません。PCE開始LSPは、番号付きリンクのみをサポートします。
-
セグメントルーティングLSPを開始するPCEは、色なしセグメントルーティングLSPに関連付けられたバインディングセグメントID(SID)ラベルを使用して、PCE開始セグメントルーティングLSPパスをプロビジョニングできます。
Junos OSリリース18.2R1以降、イングレスデバイス上で静的に設定された色なしセグメントルーティングLSPは、PCEPセッションを介してPCEに報告されます。これらの色のないセグメントルーティングLSPには、バインディングSIDラベルが関連付けられている場合があります。この機能により、PCEはラベルスタックでこのバインディングSIDラベルを使用して、PCE開始セグメントルーティングLSPパスをプロビジョニングできます。
トポロジー
この例では、PCCは2つの外部ステートフルPCE(PCE1とPCE2)に接続するingressルーターです。
新しい需要が発生すると、アクティブなステートフルPCEは、要件を満たすためにLSPを動的に開始します。PCCはPCE開始LSPをサポートする機能を備えて設定されているため、PCCのパス計算は以下のように実行されます。
-
PCEは、PCCreateメッセージをPCCに送信して、LSPを開始およびプロビジョニングします。PCCは、PCEから受信したパラメーターを使用してPCE開始LSPを設定し、PCE開始LSPを開始したPCEに自動的に委任します。
この例では、PCE1は、PCC上でPCE開始LSPを開始およびプロビジョニングするアクティブなステートフルPCEです。PCE開始LSPパラメーターを受信すると、PCCはLSPを設定し、PCE開始LSPをPCE1に自動的に委任します。
-
PCCとPCE1間のPCEPセッションが終了すると、PCCはPCE1が開始するLSPに対して、ディルゲーションクリーンアップタイムアウトとLSPクリーンアップタイマーの2つのタイマーを開始します。この間、PCE1またはPCE2はPCE開始LSPの制御を取得できます。
-
LSPクリーンアップタイマーの有効期限が切れる前にPCE2がPCE開始LSPの制御権を取得した場合、PCCはPCE開始LSPをPCE2に委任し、LSPクリーンアップタイマーと委任クリーンアップタイムアウトが停止します。
-
委任クリーンアップタイムアウトが終了し、PCE1もPCE2もPCE開始LSPの制御権を取得していない場合、PCCはLSPクリーンアップタイマーが終了するまで、非委任PCE開始LSPのローカル制御を行います。
-
LSPクリーンアップタイマーの終了後、PCCはPCE1によってプロビジョニングされたPCE開始LSPを削除します。
設定
CLIクイックコンフィグレーション
この例を簡単に設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、コマンドを [edit] 階層レベルのCLIにコピー&ペーストしてください。
PCC
set interfaces ge-0/1/1 unit 0 family inet address 10.0.102.9/24 set interfaces ge-0/1/1 unit 0 family iso set interfaces ge-0/1/1 unit 0 family mpls set interfaces ge-0/1/3 unit 0 family inet address 10.0.112.14/24 set interfaces ge-0/1/3 unit 0 family iso set interfaces ge-0/1/3 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.168.12.1/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls lsp-external-controller ppcd set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface all set protocols ospf area 0.0.0.0 interface fxp0.0 disable set protocols pcep pce-group PCEGROUP pce-type active set protocols pcep pce-group PCEGROUP pce-type stateful set protocols pcep pce-group PCEGROUP lsp-provisioning set protocols pcep pce-group PCEGROUP lsp-cleanup-timer 30 set protocols pcep pce PCE1 destination-ipv4-address 192.168.69.58 set protocols pcep pce PCE1 destination-port 4189 set protocols pcep pce PCE1 pce-group PCEGROUP set protocols pcep pce PCE2 destination-ipv4-address 192.168.70.65 set protocols pcep pce PCE2 destination-port 4189 set protocols pcep pce PCE2 pce-group PCEGROUP
R1
set interfaces ge-3/1/1 unit 0 family inet address 10.0.102.10/24 set interfaces ge-3/1/1 unit 0 family iso set interfaces ge-3/1/1 unit 0 family mpls set interfaces ge-3/1/2 unit 0 family inet address 10.0.101.9/24 set interfaces ge-3/1/2 unit 0 family iso set interfaces ge-3/1/2 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.168.10.1/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface all set protocols ospf area 0.0.0.0 interface fxp0.0 disable
R2
set interfaces ge-0/1/1 unit 0 family inet address 10.0.101.10/24 set interfaces ge-0/1/1 unit 0 family iso set interfaces ge-0/1/1 unit 0 family mpls set interfaces ge-0/1/3 unit 0 family inet address 10.0.112.13/24 set interfaces ge-0/1/3 unit 0 family iso set interfaces ge-0/1/3 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.168.11.1/32 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface all set protocols ospf area 0.0.0.0 interface fxp0.0 disable
手順
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、 設定モードでのCLIエディターの使用を参照してください。
PCCルーターを設定するには:
各ルーターの適切なインターフェイス名、アドレス、およびその他のパラメータを変更した後、MPLSドメイン内のすべてのジュニパーネットワークスingressルーターに対してこの手順を繰り返します。
-
インターフェイスを設定します。
MPLSを有効にするには、インターフェイスが受信MPLSトラフィックを破棄しないように、インターフェイスにプロトコルファミリーを含めます。
[edit interfaces]user@PCC# set ge-0/1/1 unit 0 family inet address 10.0.102.9/24 user@PCC# set ge-0/1/1 unit 0 family iso user@PCC# set ge-0/1/1 unit 0 family mpls user@PCC# set ge-0/1/3 unit 0 family inet address 10.0.112.14/24 user@PCC# set ge-0/1/3 unit 0 family iso user@PCC# set ge-0/1/3 unit 0 family mpls user@PCC# set lo0 unit 0 family inet address 192.168.12.1/32 -
管理インターフェイスを除くPCCのすべてのインターフェイスでRSVPを有効にします。
[edit protocols]user@PCC# set rsvp interface all user@PCC# set rsvp interface fxp0.0 disable -
PCEによるLSPの外部制御を有効にします。
[edit protocols] user@PCC# set mpls lsp-external-controller pccd
-
管理インターフェイスを除くPCCのすべてのインターフェイスでMPLSを有効にします。
[edit protocols] user@PCC# set mpls interface all user@PCC# set mpls interface fxp0.0 disable
-
管理インターフェイスを除くPCCのすべてのインターフェイスでOSPFを設定します。
[edit protocols] user@PCC# set ospf traffic-engineering user@PCC# set ospf area 0.0.0.0 interface all user@PCC# set ospf area 0.0.0.0 interface fxp0.0 disable user@PCC# set ospf interface lo0.0
-
PCEグループを定義し、PCEグループに対してPCE開始LSPのサポートを有効にします。
[edit protocols] user@PCC# set protocols pcep pce-group PCEGROUP pce-type active user@PCC# set protocols pcep pce-group PCEGROUP pce-type stateful user@PCC# set protocols pcep pce-group PCEGROUP lsp-provisioning user@PCC# set protocols pcep pce-group PCEGROUP lsp-cleanup-timer 30
-
PCCに接続するPCEを定義します。
[edit protocols] user@PCC# set pcep pce PCE1 destination-ipv4-address 192.168.69.58 user@PCC# set pcep pce PCE1 destination-port 4189 user@PCC# set pcep pce PCE1 pce-group PCEGROUP user@PCC# set pcep pce PCE2 destination-ipv4-address 192.168.70.65 user@PCC# set pcep pce PCE2 destination-port 4189 user@PCC# set pcep pce PCE2 pce-group PCEGROUP
結果
設定モードから、 show interfaces および show protocols コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PCC# show interfaces
ge-0/1/1 {
unit 0 {
family inet {
address 10.0.102.9/24;
}
family iso;
family mpls;
}
}
ge-0/1/3 {
unit 0 {
family inet {
address 10.0.112.14/24;
}
family iso;
family mpls;
}
}
lo0 {
unit 0 {
family inet {
address 192.168.12.1/32;
}
}
}
user@PCC# show protocols
rsvp {
interface all;
}
interface fxp0.0 {
disable;
}
}
mpls {
lsp-external-controller pccd;
interface all;
interface fxp0.0 {
disable;
}
}
ospf {
traffic-engineering;
area 0.0.0.0 {
interface all;
interface fxp0.0 {
disable;
}
}
}
pce-group PCEGROUP {
pce-type active stateful;
lsp-provisioning;
lsp-cleanup-timer 30;
}
pce PCE1 {
destination-ipv4-address 192.168.69.58;
destination-port 4189;
pce-group PCEGROUP;
}
pce PCE2 {
destination-ipv4-address 192.168.70.65;
destination-port 4189;
pce-group PCEGROUP;
}
デバイスの設定が完了したら、設定モードから commit を入力します。
検証
設定が正常に機能していることを確認します。
PCCステータスの確認
目的
PCCと接続されたPCE間のPCEPセッションステータスとLSPサマリーを確認します。
アクション
動作モードから、 show path-computation-client status コマンドを実行します。
user@PCC# show path-computation-client status Session Type Provisioning Status PCE1 Stateful Active On Up PCE2 Stateful Active On Up LSP Summary Total number of LSPs : 1 Static LSPs : 0 Externally controlled LSPs : 0 Externally provisioned LSPs : 1/16000 (current/limit) Orphaned LSPs : 0 PCE1 (main) Delegated : 1 Externally provisioned : 1 PCE2 Delegated : 0 Externally provisioned : 0
意味
出力には、アクティブなステートフルPCEとPCC間のPCEPセッションのステータスが表示されます。また、PCC上のさまざまなタイプのLSPに関する情報と、接続されたPCEによってプロビジョニングされ、それらに委任されたLSPの数も表示されます。
PCE1はメインのアクティブなPCEであり、PCCによって自動的に委任されたPCE開始LSPが1つあります。
PCE1ステータスの確認
目的
メインのアクティブなステートフルPCEのステータスを確認します。
アクション
動作モードから、 show path-computation-client active-pce detail コマンドを実行します。
user@PCC# show path-computation-client active-pce PCE PCE1 -------------------------------------------- General IP address : 192.168.69.58 Priority : 0 PCE status : PCE_STATE_UP Session type : PCE_TYPE_STATEFULACTIVE LSP provisioning allowed : On LSP cleanup timer : 30 [s] PCE-mastership : main Max unknown messages : 5 Keepalives received : 0 Keepalives sent : 0 Dead timer : 0 [s] Elapsed as main current : 1 [s] Elapsed as main total : 446380 [s] Unknown msgs/min rate : 0 Session failures : 2198 Corrupted messages : 0 Delegation timeout set : 30 Delegation timeout in : 0 [s] Delegation failures : 0 Connection down : 167092 [s] Counters PCReqs Total: 0 last 5min: 0 last hour: 0 PCReps Total: 0 last 5min: 0 last hour: 0 PCRpts Total: 5 last 5min: 5 last hour: 5 PCUpdates Total: 0 last 5min: 0 last hour: 0 PCCreates Total: 1 last 5min: 1 last hour: 1 Timers Local Keepalive timer: 30 [s] Dead timer: 120 [s] LSP cleanup timer: 30 [s] Remote Keepalive timer: 0 [s] Dead timer: 0 [s] LSP cleanup timer: - [s] Errors PCErr-recv PCErr-sent PCE-PCC-NTFS PCC-PCE-NTFS
意味
出力には、PCCが接続されている現在アクティブなステートフルPCEに関する情報が表示されます。 PCE status 出力フィールドは、PCEとPCC間のPCEPセッションの現在のステータスを示します。
PCE1の場合、PCEPセッションのステータスは PCE_STATE_UPであり、PCEPセッションがPCCで確立されたことを示します。
LSPが外部でプロビジョニングされた場合のPCE開始LSPステータスの検証
目的
PCE開始LSPのステータスを確認します。
アクション
動作モードから、 show mpls lsp externally-provisioned detail コマンドを実行します。
user@PCC# show mpls lsp externally-provisioned detail Ingress LSP: 1 sessions 10.0.101.10 From: 10.0.102.9, State: Up, ActiveRoute: 0, LSPname: lsp15 ActivePath: path1 (primary) Link protection desired LSPtype: Externally Provisioned, Penultimate hop popping LSP Control Status: Externally controlled LoadBalance: Random Encoding type: Packet, Switching type: Packet, GPID: IPv4 *Primary path1 State: Up Priorities: 7 0 Bandwidth: 8Mbps Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 3) 10.0.102.10 S 10.0.101.9 S Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID): 10.0.102.10 S 10.0.101.9 S
意味
出力では、 LSPtype 出力フィールドにLSPが外部でプロビジョニングされていることが示されています。
PCCとPCE1間のPCEPセッションはアップしており、PCCは以下のPCE開始LSPパラメーターを受信します。
-
ERO(パス)—10.0.102.10および10.0.101.9
-
帯域幅—8 Mbps
-
優先度-7 0(設定値と保留値)
PCE開始ポイントツーポイントLSPをサポートしたMPLS RSVP-TEのパス計算要素プロトコルの設定
一元化された外部パスコンピューティングエンティティから動的に作成されたラベルスイッチパス(LSP)をサポートする機能を備えたパス計算クライアント(PCC)を設定することができます。ステートフルパス計算要素(PCE)を使用して外部パス計算を実行し、需要が増加した場合に動的LSPを生成できます。
PCCは、PCEが提供するLSPパラメーター、またはPCEがLSPをプロビジョニングしていない場合は、事前に設定されたLSPテンプレートのパラメーターを使用してPCE開始ポイントツーポイントLSPを作成し、PCEが開始するポイントツーポイントLSPを各PCEに自動的に委任します。その結果、PCE開始LSPの場合、PCCでローカルに設定されたLSPは必要ありません。
CLI制御LSP、PCE制御LSP、PCE開始LSPは、PCC上で相互に共存できます。
始める前に:
-
デバイスインターフェイスを設定します。
-
MPLS と RSVP-TE を設定します。
-
OSPFまたはその他のIGPプロトコルを設定します。
PCE開始のポイントツーポイントLSPをサポートするようにPCCを設定するには、以下のタスクを完了します。
出力例
[edit]
user@PCC# edit protocols pcep
[edit protocols pcep]
user@PCC# set message-rate-limit 50
[edit protocols pcep]
user@PCC# set max-provisioned-lsps 16000
[edit protocols pcep]
user@PCC# edit pce PCE
[edit protocols pcep pce PCE]
user@PCC# set delegation-cleanup-timeout 20
[edit protocols pcep pce PCE]
user@PCC# set destination-ipv4-address 192.168.69.58
[edit protocols pcep pce PCE]
user@PCC# set destination-port 4189
[edit protocols pcep pce PCE]
user@PCC# set lsp-cleanup-timer 50
[edit protocols pcep pce PCE]
user@PCC# set lsp-provisioning
[edit protocols pcep pce PCE]
user@PCC# set max-unknown-messages 5
[edit protocols pcep pce PCE]
user@PCC# set max-unknown-requests 5
[edit protocols pcep pce PCE]
user@PCC# set request-timer 50
[edit protocols pcep pce PCE]
user@PCC# up
[edit protocols pcep]
user@PCC# show
message-rate-limit 50;
max-provisioned-lsps 16000;
pce PCE {
destination-ipv4-address 192.168.69.58;
destination-port 4189;
lsp-provisioning;
lsp-cleanup-timer 50;
request-timer 50;
max-unknown-requests 5;
max-unknown-messages 5;
delegation-cleanup-timeout 20;
}
[edit protocols pcep]
user@PCC# commit
commit complete
例:PCE制御のポイントツーマルチポイントLSPをサポートするMPLS RSVP-TEのパス計算要素プロトコルの設定
この例では、ポイントツーマルチポイントのトラフィックエンジニアリングラベルスイッチパス(TE LSP)をパス計算要素(PCE)に報告する機能を備えたパス計算クライアント(PCC)を設定する方法を示します。
要件
この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。
-
ACXシリーズ、M Series、MXシリーズ、またはT Seriesルーターの組み合わせが可能な3台のルーター。
-
VRR(仮想ルートリフレクタ)機能で設定された仮想マシン1台。
-
VRR から外部ステートフル PCE への TCP 接続。
-
PCCで実行されているJunos OSリリース16.1以降。
始める前に:
-
デバイスインターフェイスを設定します。
-
MPLS と RSVP-TE を設定します。
-
OSPFまたはその他のIGPプロトコルを設定します。
概要
PCEとPCCの間でPCEPセッションが確立されると、PCCはLSP状態同期のためにシステム内のすべてのLSPをPCEに報告します。これには、PCC制御、PCE委任、およびPCE開始のポイントツーポイントLSPが含まれます。 Junos OSリリース15.1F6および16.1R1以降、この機能はポイントツーマルチポイントLSPも報告するように拡張されています。
デフォルトでは、ポイントツーマルチポイント LSP の PCE 制御は PCC でサポートされていません。この機能を追加するには、[edit protocols pcep pce pce-name]または[edit protocols pcep pce-group group-id]階層レベルでp2mp-lsp-report-capabilityステートメントを含めます。
トポロジー
この例では、PCCがingressルーター、ルーターR1がトランジットルーター、ルーターR2がegressルーターとなっています。PCCは、PCEに接続されたVRR(仮想ルートリフレクタ)に接続されています。PCC、ルーター R1、ルーター R2 の間には、多数のポイントツーマルチポイント インターフェイスがあります。
ポイントツーマルチポイント LSP のレポートは、次のように実行されます。
-
ルーターPCCがポイントツーマルチポイントレポート機能をサポートしずにポイントツーポイントおよびポイントツーマルチポイントLSPで設定されている場合、ポイントツーポイントLSPのみが接続されたPCEに報告されます。デフォルトでは、PCCはポイントツーマルチポイントのLSPレポート機能をサポートしていません。
-
ルーターPCCにポイントツーマルチポイントLSPレポート機能が設定されている場合、PCCはまずレポートメッセージを通じてこの機能をPCEにアドバタイズします。
-
デフォルトでは、PCEはポイントツーマルチポイントLSP機能をサポートしています。PCEは、ポイントツーマルチポイントLSP機能に関するPCCのアドバタイズメントを受信すると、その機能をPCCにアドバタイズします。
-
PCEからポイントツーマルチポイント機能のアドバタイズメントを受信すると、PCCは更新メッセージを使用してポイントツーマルチポイントLSPのすべてのブランチをPCEに報告します。
-
すべてのLSPがPCEに報告されると、PCEとPCCの間でLSP状態が同期されます。
設定
CLIクイックコンフィグレーション
この例をすばやく設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更してから、コマンドを [edit] 階層レベルのCLIにコピー&ペーストします。
PCC
set interfaces ge-0/0/0 unit 0 family inet address 1.2.4.1/30 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 1.2.3.1/30 set interfaces ge-0/0/1 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 1.2.2.1/30 set interfaces ge-0/0/2 unit 0 family mpls set interfaces ge-0/0/3 unit 0 family inet address 1.2.5.1/30 set interfaces ge-0/0/3 unit 0 family mpls set interfaces ge-0/0/4 unit 0 family inet address 1.4.0.1/30 set interfaces ge-0/0/4 unit 0 family mpls set interfaces ge-0/0/5 unit 0 family inet address 1.2.1.1/30 set interfaces ge-0/0/5 unit 0 family mpls set interfaces ge-0/0/6 unit 0 family inet address 1.2.0.1/30 set interfaces ge-0/0/6 unit 0 family mpls set routing-options autonomous-system 100 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls lsp-external-controller pccd pce-controlled-lsp pcc_delegated_no_cspf_* label-switched-path-template lsp_template_no_cspf set protocols mpls lsp-external-controller pccd pce-controlled-lsp pce_initiated_no_ero_no_cspf_* label-switched-path-template lsp_template_no_cspf set protocols mpls lsp-external-controller pccd pce-controlled-lsp pce_initiated_loose_ero_no_cspf_* label-switched-path-template lsp_template_no_cspf set protocols mpls traffic-engineering database import policy TE set protocols mpls admin-groups violet 1 set protocols mpls admin-groups indigo 2 set protocols mpls admin-groups blue 3 set protocols mpls admin-groups green 4 set protocols mpls admin-groups yellow 5 set protocols mpls admin-groups orange 6 set protocols mpls label-switched-path lsp_template_no_cspf template set protocols mpls label-switched-path lsp_template_no_cspf no-cspf set protocols mpls label-switched-path lsp1-pcc to 128.102.177.16 set protocols mpls label-switched-path lsp2-pcc to 128.102.177.16 set protocols mpls label-switched-path lsp2-pcc lsp-external-controller pccd set protocols mpls path loose-path 1.2.3.2 loose set protocols mpls path strict-path 1.2.3.2 strict set protocols mpls path strict-path 2.3.3.2 strict set protocols mpls path path-B set protocols mpls path path-C set protocols mpls interface all set protocols mpls interface ge-0/0/6.0 admin-group violet set protocols mpls interface ge-0/0/5.0 admin-group indigo set protocols mpls interface ge-0/0/2.0 admin-group blue set protocols mpls interface ge-0/0/1.0 admin-group green set protocols mpls interface ge-0/0/0.0 admin-group yellow set protocols mpls interface ge-0/0/3.0 admin-group orange set protocols mpls interface fxp0.0 disable set protocols bgp group northstar type internal set protocols bgp group northstar local-address 128.102.180.228 set protocols bgp group northstar family traffic-engineering unicast set protocols bgp group northstar export TE set protocols bgp group northstar neighbor 128.102.180.215 set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface lo0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/6.0 set protocols ospf area 0.0.0.0 interface ge-0/0/5.0 set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 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/3.0 set protocols ospf area 0.0.0.0 interface ge-0/0/4.0 interface-type p2p set protocols pcep pce pce1 local-address 10.102.180.228 set protocols pcep pce pce1 destination-ipv4-address 10.102.180.246 set protocols pcep pce pce1 destination-port 4189 set protocols pcep pce pce1 pce-type active set protocols pcep pce pce1 pce-type stateful set protocols pcep pce pce1 lsp-provisioning set protocols pcep pce pce1 lsp-cleanup-timer 0 set protocols pcep pce pce1 delegation-cleanup-timeout 60 set protocols pcep pce pce1 p2mp-lsp-report-capability set policy-options policy-statement TE term 1 from family traffic-engineering set policy-options policy-statement TE term 1 then accept
R1
set interfaces ge-0/0/0 unit 0 family inet address 2.3.4.1/30 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 1.2.0.2/30 set interfaces ge-0/0/1 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 1.2.4.2/30 set interfaces ge-0/0/2 unit 0 family mpls set interfaces ge-0/0/3 unit 0 family inet address 1.2.2.2/30 set interfaces ge-0/0/3 unit 0 family mpls set interfaces ge-0/0/4 unit 0 family inet address 2.3.1.1/30 set interfaces ge-0/0/4 unit 0 family mpls set interfaces ge-0/0/5 unit 0 family inet address 1.2.3.2/30 set interfaces ge-0/0/5 unit 0 family mpls set interfaces ge-0/0/6 unit 0 family inet address 1.2.5.2/30 set interfaces ge-0/0/6 unit 0 family mpls set interfaces ge-0/0/7 unit 0 family inet address 1.2.1.2/30 set interfaces ge-0/0/7 unit 0 family mpls set interfaces ge-0/0/8 unit 0 family inet address 2.3.5.1/30 set interfaces ge-0/0/8 unit 0 family mpls set interfaces ge-0/0/9 unit 0 family inet address 2.3.2.1/30 set interfaces ge-0/0/9 unit 0 family mpls set interfaces ge-0/1/0 unit 0 family inet address 2.3.3.1/30 set interfaces ge-0/1/0 unit 0 family mpls set interfaces ge-0/1/1 unit 0 family inet address 2.3.0.1/30 set interfaces ge-0/1/1 unit 0 family mpls set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls admin-groups violet 1 set protocols mpls admin-groups indigo 2 set protocols mpls admin-groups blue 3 set protocols mpls admin-groups green 4 set protocols mpls admin-groups yellow 5 set protocols mpls admin-groups orange 6 set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols mpls interface ge-0/0/1.0 admin-group violet set protocols mpls interface ge-0/0/7.0 admin-group indigo set protocols mpls interface ge-0/0/3.0 admin-group blue set protocols mpls interface ge-0/0/5.0 admin-group green set protocols mpls interface ge-0/0/2.0 admin-group yellow set protocols mpls interface ge-0/0/6.0 admin-group orange set protocols mpls interface ge-0/1/1.0 admin-group violet set protocols mpls interface ge-0/0/4.0 admin-group indigo set protocols mpls interface ge-0/0/9.0 admin-group blue set protocols mpls interface ge-0/1/0.0 admin-group green set protocols mpls interface ge-0/0/0.0 admin-group yellow set protocols mpls interface ge-0/0/8.0 admin-group orange set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface lo0.0 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface ge-0/0/7.0 set protocols ospf area 0.0.0.0 interface ge-0/0/3.0 set protocols ospf area 0.0.0.0 interface ge-0/0/5.0 set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 set protocols ospf area 0.0.0.0 interface ge-0/0/6.0 set protocols ospf area 0.0.0.0 interface ge-0/1/1.0
R2
set interfaces ge-0/0/0 unit 0 family inet address 2.3.0.2/30 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 2.3.1.2/30 set interfaces ge-0/0/1 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 2.3.5.2/30 set interfaces ge-0/0/2 unit 0 family mpls set interfaces ge-0/0/3 unit 0 family inet address 2.3.4.2/30 set interfaces ge-0/0/3 unit 0 family mpls set interfaces ge-0/0/4 unit 0 family inet address 2.3.2.2/30 set interfaces ge-0/0/4 unit 0 family mpls set interfaces ge-0/0/5 unit 0 family inet address 2.3.3.2/30 set interfaces ge-0/0/5 unit 0 family mpls set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls admin-groups violet 1 set protocols mpls admin-groups indigo 2 set protocols mpls admin-groups blue 3 set protocols mpls admin-groups green 4 set protocols mpls admin-groups yellow 5 set protocols mpls admin-groups orange 6 set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols mpls interface ge-0/0/0.0 admin-group violet set protocols mpls interface ge-0/0/1.0 admin-group indigo set protocols mpls interface ge-0/0/4.0 admin-group blue set protocols mpls interface ge-0/0/5.0 admin-group green set protocols mpls interface ge-0/0/3.0 admin-group yellow set protocols mpls interface ge-0/0/2.0 admin-group orange set protocols ospf traffic-engineering 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/1.0 set protocols ospf area 0.0.0.0 interface ge-0/0/4.0 set protocols ospf area 0.0.0.0 interface ge-0/0/5.0 set protocols ospf area 0.0.0.0 interface ge-0/0/3.0 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
R3
set interfaces em0 unit 0 family inet address 10.102.180.215/19 set interfaces em1 unit 0 family inet address 4.5.0.1/30 set interfaces em2 unit 0 family inet address 1.4.0.2/30 set interfaces em2 unit 0 family mpls set routing-options router-id 128.102.180.215 set routing-options autonomous-system 100 set protocols topology-export set protocols rsvp interface all set protocols mpls lsp-external-controller pccd set protocols mpls traffic-engineering database import igp-topology set protocols mpls traffic-engineering database import policy TE set protocols mpls interface all set protocols bgp group northstar type internal set protocols bgp group northstar local-address 128.102.180.215 set protocols bgp group northstar family traffic-engineering unicast set protocols bgp group northstar neighbor 128.102.180.228 set protocols ospf area 0.0.0.0 interface lo0.0 set protocols ospf area 0.0.0.0 interface em2.0 interface-type p2p set policy-options policy-statement TE from family traffic-engineering set policy-options policy-statement TE then accept
手順
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、 設定モードでのCLIエディターの使用を参照してください。
PCCルーターを設定するには:
-
ルーターPCCのインターフェイスを設定します。MPLSを有効にするには、インターフェイスが受信MPLSトラフィックを破棄しないように、インターフェイスにプロトコルファミリーを含めます。
[edit interfaces] user@PCC# set ge-0/0/0 unit 0 family inet address 1.2.4.1/30 user@PCC# set ge-0/0/0 unit 0 family mpls user@PCC# set ge-0/0/1 unit 0 family inet address 1.2.3.1/30 user@PCC# set ge-0/0/1 unit 0 family mpls user@PCC# set ge-0/0/2 unit 0 family inet address 1.2.2.1/30 user@PCC# set ge-0/0/2 unit 0 family mpls user@PCC# set ge-0/0/3 unit 0 family inet address 1.2.5.1/30 user@PCC# set ge-0/0/3 unit 0 family mpls user@PCC# set ge-0/0/4 unit 0 family inet address 1.4.0.1/30 user@PCC# set ge-0/0/4 unit 0 family mpls user@PCC# set ge-0/0/5 unit 0 family inet address 1.2.1.1/30 user@PCC# set ge-0/0/5 unit 0 family mpls user@PCC# set ge-0/0/6 unit 0 family inet address 1.2.0.1/30 user@PCC# set ge-0/0/6 unit 0 family mpls
-
ルーターPCCの自律システム番号を設定します。
[edit routing-options] user@PCC# set autonomous-system 100
-
管理インターフェイスを除くルーターPCCのすべてのインターフェイスでRSVPを有効にします。
[edit protocols] user@PCC# set rsvp interface all user@PCC# set rsvp interface fxp0.0 disable
-
管理インターフェイスを除くルーターPCCのすべてのインターフェイスでMPLSを有効にします。
[edit protocols] user@PCC# set mpls interface all user@PCC# set mpls interface fxp0.0 disable
-
動的LSPを設定し、LSPの自動パス計算を無効にします。
[edit protocols] user@PCC# set mpls label-switched-path lsp_template_no_cspf template user@PCC# set mpls label-switched-path lsp_template_no_cspf no-cspf
-
ポイントツーマルチポイントLSPを設定し、LSPの外部パスコンピューティングエンティティを定義します。
[edit protocols] user@PCC# set mpls label-switched-path lsp1-pcc to 128.102.177.16 user@PCC# set mpls label-switched-path lsp2-pcc to 128.102.177.16 user@PCC# set mpls label-switched-path lsp2-pcc lsp-external-controller pccd
-
MPLS LSP の外部パス計算を有効にし、外部でプロビジョニングされた LSP にテンプレートを割り当てます。
[edit protocols] user@PCC# set mpls lsp-external-controller pccd pce-controlled-lsp pcc_delegated_no_cspf_* label-switched-path-template lsp_template_no_cspf user@PCC# set mpls lsp-external-controller pccd pce-controlled-lsp pce_initiated_no_ero_no_cspf_* label-switched-path-template lsp_template_no_cspf user@PCC# set mpls lsp-external-controller pccd pce-controlled-lsp pce_initiated_loose_ero_no_cspf_* label-switched-path-template lsp_template_no_cspf
-
ローカル制御を持ち、PCEが提供するLSPパラメーターによって上書きされるLSPを設定します。
[edit protocols] user@PCC# set mpls path loose-path 1.2.3.2 loose user@PCC# set mpls path strict-path 1.2.3.2 strict user@PCC# set mpls path strict-path 2.3.3.2 strict user@PCC# set mpls path path-B user@PCC# set mpls path path-C
-
制約付きパスLSP計算用のMPLS管理グループポリシーを設定します。
[edit protocols] user@PCC# set mpls admin-groups violet 1 user@PCC# set mpls admin-groups indigo 2 user@PCC# set mpls admin-groups blue 3 user@PCC# set mpls admin-groups green 4 user@PCC# set mpls admin-groups yellow 5 user@PCC# set mpls admin-groups orange 6
-
設定した管理グループポリシーをルーターPCCインターフェイスに割り当てます。
[edit protocols] user@PCC# set mpls interface ge-0/0/6.0 admin-group violet user@PCC# set mpls interface ge-0/0/5.0 admin-group indigo user@PCC# set mpls interface ge-0/0/2.0 admin-group blue user@PCC# set mpls interface ge-0/0/1.0 admin-group green user@PCC# set mpls interface ge-0/0/0.0 admin-group yellow user@PCC# set mpls interface ge-0/0/3.0 admin-group orange
-
トラフィック制御データベース(TED)インポートポリシーを設定します。
[edit protocols] user@PCC# set mpls traffic-engineering database import policy TE
-
BGP内部グループを設定します。
[edit protocols] user@PCC# set bgp group northstar type internal user@PCC# set bgp group northstar local-address 128.102.180.228 user@PCC# set bgp group northstar neighbor 128.102.180.215
-
BGPのトラフィックエンジニアリングを設定し、エクスポートポリシーを割り当てます。
[edit protocols] user@PCC# set bgp group northstar family traffic-engineering unicast user@PCC# set bgp group northstar export TE
-
ルーターPCCのすべてのポイントツーマルチポイントインターフェイスでOSPFエリア0を設定します。
[edit protocols] user@PCC# set ospf area 0.0.0.0 interface lo0.0 user@PCC# set ospf area 0.0.0.0 interface ge-0/0/6.0 user@PCC# set ospf area 0.0.0.0 interface ge-0/0/5.0 user@PCC# set ospf area 0.0.0.0 interface ge-0/0/2.0 user@PCC# set ospf area 0.0.0.0 interface ge-0/0/1.0 user@PCC# set ospf area 0.0.0.0 interface ge-0/0/0.0 user@PCC# set ospf area 0.0.0.0 interface ge-0/0/3.0
-
ルーターPCCのポイントツーポイントインターフェイスでOSPFエリア0を設定します。
[edit protocols] user@PCC# set ospf area 0.0.0.0 interface ge-0/0/4.0 interface-type p2p
-
OSPFのトラフィックエンジニアリングを有効にします。
[edit protocols] user@PCC# set ospf traffic-engineering
-
ルーターPCCが接続するPCEを定義し、PCEパラメーターを設定します。
[edit protocols] user@PCC# set pcep pce pce1 local-address 10.102.180.228 user@PCC# set pcep pce pce1 destination-ipv4-address 10.102.180.246 user@PCC# set pcep pce pce1 destination-port 4189 user@PCC# set pcep pce pce1 pce-type active user@PCC# set pcep pce pce1 pce-type stateful user@PCC# set pcep pce pce1 lsp-provisioning user@PCC# set pcep pce pce1 lsp-cleanup-timer 0 user@PCC# set pcep pce pce1 delegation-cleanup-timeout 60
-
ルーターPCCを設定して、外部パスコンピューティングのポイントツーマルチポイントLSP機能を有効にします。
[edit protocols] set pcep pce pce1 p2mp-lsp-report-capability
-
トラフィックエンジニアリングポリシーを設定します。
[edit policy-options] user@PCC# set policy-statement TE term 1 from family traffic-engineering user@PCC# set policy-statement TE term 1 then accept
結果
設定モードから、 show interfaces および show protocols コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PCC# show interfaces
ge-0/0/0 {
unit 0 {
family inet {
address 1.2.4.1/30;
}
family mpls;
}
}
ge-0/0/1 {
unit 0 {
family inet {
address 1.2.3.1/30;
}
family mpls;
}
}
ge-0/0/2 {
unit 0 {
family inet {
address 1.2.2.1/30;
}
family mpls;
}
}
ge-0/0/3 {
unit 0 {
family inet {
address 1.2.5.1/30;
}
family mpls;
}
}
ge-0/0/4 {
unit 0 {
family inet {
address 1.4.0.1/30;
}
family mpls;
}
}
ge-0/0/5 {
unit 0 {
family inet {
address 1.2.1.1/30;
}
family mpls;
}
}
ge-0/0/6 {
unit 0 {
family inet {
address 1.2.0.1/30;
}
family mpls;
}
}
user@PCC# show protocols
rsvp {
interface all;
interface fxp0.0 {
disable;
}
}
mpls {
lsp-external-controller pccd {
pce-controlled-lsp pcc_delegated_no_cspf_* {
label-switched-path-template {
lsp_template_no_cspf;
}
}
pce-controlled-lsp pce_initiated_no_ero_no_cspf_* {
label-switched-path-template {
lsp_template_no_cspf;
}
}
pce-controlled-lsp pce_initiated_loose_ero_no_cspf_* {
label-switched-path-template {
lsp_template_no_cspf;
}
}
}
traffic-engineering {
database {
import {
policy TE;
}
}
}
admin-groups {
violet 1;
indigo 2;
blue 3;
green 4;
yellow 5;
orange 6;
}
label-switched-path lsp_template_no_cspf {
template;
no-cspf;
}
label-switched-path lsp1-pcc {
to 128.102.177.16;
}
label-switched-path lsp2-pcc {
to 128.102.177.16;
lsp-external-controller pccd;
}
path loose-path {
1.2.3.2 loose;
}
path strict-path {
1.2.3.2 strict;
2.3.3.2 strict;
}
path path-B;
path path-C;
interface all;
interface ge-0/0/6.0 {
admin-group violet;
}
interface ge-0/0/5.0 {
admin-group indigo;
}
interface ge-0/0/2.0 {
admin-group blue;
}
interface ge-0/0/1.0 {
admin-group green;
}
interface ge-0/0/0.0 {
admin-group yellow;
}
interface ge-0/0/3.0 {
admin-group orange;
}
interface fxp0.0 {
disable;
}
}
bgp {
group northstar {
type internal;
local-address 128.102.180.228;
family traffic-engineering {
unicast;
}
export TE;
neighbor 128.102.180.215;
}
}
ospf {
traffic-engineering;
area 0.0.0.0 {
interface lo0.0;
interface ge-0/0/6.0;
interface ge-0/0/5.0;
interface ge-0/0/2.0;
interface ge-0/0/1.0;
interface ge-0/0/0.0;
interface ge-0/0/3.0;
interface ge-0/0/4.0 {
interface-type p2p;
}
}
}
pcep {
pce pce1 {
local-address 10.102.180.228;
destination-ipv4-address 10.102.180.246;
destination-port 4189;
pce-type active stateful;
lsp-provisioning;
lsp-cleanup-timer 0;
delegation-cleanup-timeout 60;
p2mp-lsp-report-capability;
}
}
検証
設定が正常に機能していることを確認します。
PCCでのLSP設定の確認
目的
ポイントツーマルチポイント LSP の LSP タイプと実行状態を確認します。
アクション
動作モードから、 show mpls lsp extensive コマンドを実行します。
user@PCC> show mpls lsp extensive
Ingress LSP: 2 sessions
128.102.177.16
From: 128.102.180.228, State: Up, ActiveRoute: 0, LSPname: lsp1-pcc
ActivePath: (primary)
LSPtype: Static Configured, Penultimate hop popping
LoadBalance: Random
Encoding type: Packet, Switching type: Packet, GPID: IPv4
*Primary State: Up
Priorities: 7 0
SmartOptimizeTimer: 180
Computed ERO (S [L] denotes strict [loose] hops): (CSPF metric: 2)
1.2.1.2 S 2.3.0.2 S
Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID):
1.2.1.2 2.3.0.2
6 Jul 12 14:44:10.620 Selected as active path
5 Jul 12 14:44:10.617 Record Route: 1.2.1.2 2.3.0.2
4 Jul 12 14:44:10.615 Up
3 Jul 12 14:44:10.175 Originate Call
2 Jul 12 14:44:10.174 CSPF: computation result accepted 1.2.1.2 2.3.0.2
1 Jul 12 14:43:41.442 CSPF failed: no route toward 128.102.177.16[2 times]
Created: Tue Jul 12 14:42:43 2016
128.102.177.16
From: 128.102.180.228, State: Up, ActiveRoute: 0, LSPname: lsp2-pcc
ActivePath: (primary)
LSPtype: Externally controlled - static configured, Penultimate hop popping
LSP Control Status: Externally controlled
LoadBalance: Random
Encoding type: Packet, Switching type: Packet, GPID: IPv4
*Primary State: Up
Priorities: 7 0
External Path CSPF Status: external
SmartOptimizeTimer: 180
Received RRO (ProtectionFlag 1=Available 2=InUse 4=B/W 8=Node 10=SoftPreempt 20=Node-ID):
1.2.4.2 2.3.0.2
50 Jul 12 14:50:14.699 EXTCTRL LSP: Sent Path computation request and LSP status
49 Jul 12 14:50:14.698 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
48 Jul 12 14:49:27.859 EXTCTRL LSP: Sent Path computation request and LSP status
47 Jul 12 14:49:27.859 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
46 Jul 12 14:49:27.858 EXTCTRL LSP: Sent Path computation request and LSP status
45 Jul 12 14:49:27.858 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
44 Jul 12 14:49:27.858 EXTCTRL_LSP: Control status became external
43 Jul 12 14:49:03.746 EXTCTRL_LSP: Control status became local
42 Jul 12 14:46:52.367 EXTCTRL LSP: Sent Path computation request and LSP status
41 Jul 12 14:46:52.367 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
40 Jul 12 14:46:52.367 EXTCTRL LSP: Sent Path computation request and LSP status
39 Jul 12 14:46:52.366 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
38 Jul 12 14:46:52.366 EXTCTRL_LSP: Control status became external
37 Jul 12 14:46:41.584 Selected as active path
36 Jul 12 14:46:41.565 Record Route: 1.2.4.2 2.3.0.2
35 Jul 12 14:46:41.565 Up
34 Jul 12 14:46:41.374 EXTCTRL_LSP: Applying local parameters with this signalling attempt
33 Jul 12 14:46:41.374 Originate Call
32 Jul 12 14:46:41.374 CSPF: computation result accepted 1.2.4.2 2.3.0.2
31 Jul 12 14:46:28.254 EXTCTRL_LSP: Control status became local
30 Jul 12 14:46:12.494 EXTCTRL LSP: Sent Path computation request and LSP status
29 Jul 12 14:46:12.494 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
28 Jul 12 14:45:43.164 EXTCTRL LSP: Sent Path computation request and LSP status
27 Jul 12 14:45:43.164 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
26 Jul 12 14:45:13.424 EXTCTRL LSP: Sent Path computation request and LSP status
25 Jul 12 14:45:13.423 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
24 Jul 12 14:44:44.774 EXTCTRL LSP: Sent Path computation request and LSP status
23 Jul 12 14:44:44.773 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
22 Jul 12 14:44:15.053 EXTCTRL LSP: Sent Path computation request and LSP status
21 Jul 12 14:44:15.053 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
20 Jul 12 14:43:45.705 EXTCTRL LSP: Sent Path computation request and LSP status
19 Jul 12 14:43:45.705 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
18 Jul 12 14:43:45.705 EXTCTRL LSP: Sent Path computation request and LSP status
17 Jul 12 14:43:45.705 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
16 Jul 12 14:43:45.705 EXTCTRL_LSP: Control status became external
15 Jul 12 14:43:42.398 CSPF failed: no route toward 128.102.177.16
14 Jul 12 14:43:13.009 EXTCTRL_LSP: Control status became local
13 Jul 12 14:43:13.009 EXTCTRL LSP: Sent Path computation request and LSP status
12 Jul 12 14:43:13.008 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
11 Jul 12 14:42:43.343 EXTCTRL LSP: Sent Path computation request and LSP status
10 Jul 12 14:42:43.343 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
9 Jul 12 14:42:43.343 EXTCTRL LSP: Sent Path computation request and LSP status
8 Jul 12 14:42:43.343 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
7 Jul 12 14:42:43.342 EXTCTRL LSP: Sent Path computation request and LSP status
6 Jul 12 14:42:43.342 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
5 Jul 12 14:42:43.341 EXTCTRL_LSP: Control status became external
4 Jul 12 14:42:43.337 EXTCTRL_LSP: Control status became local
3 Jul 12 14:42:43.323 EXTCTRL LSP: Sent Path computation request and LSP status
2 Jul 12 14:42:43.323 EXTCTRL_LSP: Computation request/lsp status contains: signalled bw 0 req BW 0 admin group(exclude 0 include any 0 include all 0) priority setup 7 hold 0
1 Jul 12 14:42:43.258 EXTCTRL LSP: Awaiting external controller connection
Created: Tue Jul 12 14:42:43 2016
Total 2 displayed, Up 2, Down 0
Egress LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
Transit LSP: 0 sessions
Total 0 displayed, Up 0, Down 0
意味
出力は、lsp2-pcc LSPをPCE制御LSPとして表示します。
PCCでのPCE設定の検証
目的
PCEパラメーターの設定とPCE状態を確認します。
アクション
動作モードから、 show path-computation-client active-pce コマンドを実行します。
user@PCC> show path-computation-client active-pce
PCE pce1
--------------------------------------------
General
PCE IP address : 10.102.180.246
Local IP address : 10.102.180.228
Priority : 0
PCE status : PCE_STATE_UP
Session type : PCE_TYPE_STATEFULACTIVE
LSP provisioning allowed : On
P2MP LSP report allowed : On
P2MP LSP update allowed : Off
P2MP LSP init allowed : Off
PCE-mastership : main
Counters
PCReqs Total: 0 last 5min: 0 last hour: 0
PCReps Total: 0 last 5min: 0 last hour: 0
PCRpts Total: 12 last 5min: 0 last hour: 12
PCUpdates Total: 1 last 5min: 0 last hour: 1
PCCreates Total: 0 last 5min: 0 last hour: 0
Timers
Local Keepalive timer: 30 [s] Dead timer: 120 [s] LSP cleanup timer: 0 [s]
Remote Keepalive timer: 30 [s] Dead timer: 120 [s] LSP cleanup timer: 0 [s]
Errors
PCErr-recv
PCErr-sent
Type: 1 Value: 2 Count: 1
PCE-PCC-NTFS
PCC-PCE-NTFS
意味
出力には、ルーターPCCが接続されているアクティブなPCEと、pce1 PCEパラメーターと状態が表示されます。
PCE開始ポイントツーマルチポイントLSPをサポートするMPLS RSVP-TEのパス計算要素プロトコルの理解
ポイントツーマルチポイントPCE開始LSPの導入により、PCEは、PCC上でローカルLSPを設定することなく、ポイントツーマルチポイントLSPを動的に開始およびプロビジョニングできます。これにより、PCEは、PCEP(Path Computation Element Protocol)セッション内およびセッション間でポイントツーマルチポイントのパス計算のタイミングと順序を制御し、一元的に制御および展開される動的なネットワークを作成できます。
- PCE主導のポイントツーマルチポイントLSPのメリット
- PCE開始ポイントツーマルチポイントLSPのシグナリング
- PCEPセッション障害後のPCE開始ポイントツーマルチポイントLSPの動作
- PCE開始ポイントツーマルチポイントLSP機能の設定
- PCE主導のポイントツーマルチポイントLSPでサポートされている機能とサポートされていない機能
- PCE開始ポイントツーマルチポイントLSPのMVPNへのマッピング
PCE主導のポイントツーマルチポイントLSPのメリット
ポイントツーマルチポイント LSP の動的な作成と破棄により、アプリケーションの要求に応じたポイントツーマルチポイント トラフィック制御 LSP 配置の要件を満たし、一元的に制御および展開される動的なネットワークを作成します。
PCE開始ポイントツーマルチポイントLSPのシグナリング
PCE開始ポイントツーマルチポイントLSPのシグナリングは以下のとおりです。
-
When a new branch is added (Grafting)—新しいブランチサブLSPのみがシグナリングされ、ポイントツーマルチポイントツリー全体の再シグナリングは発生しません。
新しいサブLSPのプロビジョニング前にトポロジーの変更が発生した場合、パス計算サーバー(PCS)はポイントツーマルチポイントツリー全体を再計算し、PC更新メッセージを使用してポイントツーマルチポイントLSPを更新します。
-
When a branch is deleted (Pruning)—削除されたブランチサブLSPは破棄され、ポイントツーマルチポイントツリー全体の再シグナリングは行われません。
-
When a branch sub-LSP parameter is changed—明示的なルートオブジェクト(ERO)、帯域幅、優先度などのサブLSPパラメーターの変更は、最適化またはユーザーの要求によって発生する可能性があります。サブLSPの再シグナリング要求がある場合、ポイントツーマルチポイントツリー全体が再シグナリングされ、すべてのブランチの新しいインスタンスが立ち上がると、新しいインスタンスへの切り替えが行われます。
-
When a branch sub-LSP path fails—障害が発生した支社サブLSPのエラーがPCSに報告されます。PCSから新しいEROを受信すると、障害が発生したブランチサブLSPとともにポイントツーマルチポイントツリー全体が再シグナリングされ、新しいインスタンスへの切り替えがメークビフォアブレーク(MBB)方式で行われます。
PCEPセッション障害後のPCE開始ポイントツーマルチポイントLSPの動作
PCEPセッションに障害が発生すると、PCEが開始したポイントツーマルチポイントLSPは、 state timeout タイマーが終了するまで孤立します。 state timeout タイマーが終了すると、PCEが開始したLSPがクリーンアップされます。
PCEPセッション障害後にPCEが開始するポイントツーマルチポイントLSPを制御するために、プライマリまたはセカンダリPCEは、state timeoutタイマーが終了する前にPCInitiateメッセージを送信します。
PCE開始ポイントツーマルチポイントLSP機能の設定
デフォルトでは、PCEによるポイントツーマルチポイントLSPの作成とプロビジョニングは、PCCではサポートされていません。この機能を有効にするには、[edit protocols pcep pce pce-name]または[edit protocols pcep pce-group group-id]階層レベルでp2mp-lsp-init-capabilityおよびp2mp-lsp-update-capabilityステートメントを含めます。
p2mp-lsp-init-capabilityステートメントは、PCEによるポイントツーマルチポイントRSVP-TE LSPのプロビジョニング機能を提供します。p2mp-lsp-update-capabilityステートメントは、PCEによりポイントツーマルチポイントのRSVP TE LSPパラメーターを更新する機能を提供します。
PCE主導のポイントツーマルチポイントLSPでサポートされている機能とサポートされていない機能
PCE開始ポイントツーマルチポイントLSPでは、以下の機能がサポートされています。
-
インターネットドラフトdraft-ietf-pce-stateful-pce-p2mp(2018年10月終了)、 ポイントツーマルチポイントトラフィックエンジニアリングラベルスイッチパスのステートフルPCE使用のためのパス計算要素(PCE)プロトコル拡張に部分的に準拠。
- Junos OSリリース21.1R1以降、PCE開始RSVPベースのポイントツーマルチポイントLSPのノンストップアクティブルーティング(NSR)がサポートされています。プライマリルーティングエンジンのみが、コントローラとのPCEPセッションを維持します。PCEが開始したすべてのP2MP LSPのマルチキャストフロー仕様を含む、PCEによって開始されたすべてのRSVP LSPをバックアップルーティングエンジンと同期させます。スイッチオーバー中、PCEPセッションはダウンし、バックアップのルーティングエンジンがプライマリルーティングエンジンになると再確立されます。これにより、ルーティングエンジンの切り替え時にPCEが開始したRSVP LSPを介して転送されるトラフィックのトラフィックロスが低減されます。この機能は、NSRが設定されている場合に有効になります。
PCE開始ポイントツーマルチポイントLSPでは、以下の機能はサポートされていません。
-
ポイントツーマルチポイントでローカル制御されるLSPの委任
-
LSP 制御の委任。
-
IGPルーティングドメイン内のPCE検出用の内部ゲートウェイプロトコル(IGP)拡張。
-
リクエスト/応答メッセージング
-
あるポイントツーマルチポイント ツリーから別のポイントツーマルチポイント ツリーへのブランチ サブ LSP の直接移動。
最初のポイントツーマルチポイントツリーからブランチサブLSPを削除し、デバイスからのLSPの削除を示す
PCReportメッセージが表示された後に、別のツリーに再度追加することで、同じことを実現できます。 -
IPv6 はサポートされません。
-
SERO ベースのシグナリングはサポートされていません。
-
Empty-ERO機能はサポートされていません。
-
リンク保護はサポートされていません。
PCE開始ポイントツーマルチポイントLSPのMVPNへのマッピング
単一または範囲のMVPNマルチキャストフロー(S,G)を、動的に作成されたPCE開始のポイントツーマルチポイントのラベルスイッチパス(LSP)に関連付けることができます。この機能を機能させるためには、選択したタイプのフローのみを指定できます。これには以下が含まれます。
-
MVPNルーティングインスタンスにマッピングされたRD(ルート識別子)。
-
(S,G)これは、マルチキャストパケットの送信元であり、宛先マルチキャストグループアドレスです。これは、受信トラフィックをフィルタリングしてトンネルにマッピングするために使用されます。
-
上記のフロー仕様に一致するトラフィックを送信するために使用されるポイントツーマルチポイントLSP。
詳細については、インターネットドラフトdraft-ietf-pce-pcep-flowspec-05(有効期限:2020年2月16日) PCEP Extension for Flow Specificationをご覧ください。
この機能の現在の実装では、ドラフトの次のセクションは実装されていません。
-
セクション 3.1.2 - IGPにおけるPCE機能のアドバタイズ
-
セクション 3.2 - PCReq と PCRep メッセージ
-
セクション7 - ルート分配を除くほとんどのフロー仕様 この機能の現在の実装はサポートされておらず、IPv4 マルチキャスト フロー仕様はサポートされていません。
PCE開始のポイントツーマルチポイントLSPのMVPNへのマッピングを有効にするには:
-
PCCによるフロー仕様機能(トラフィックステアリングとも呼ばれる)のサポートを示すために、
[edit protocols pcep pce pce-id]階層レベルにpce_traffic_steeringステートメントを含めます。 -
[edit routing-instances routing-instance-name provider-tunnel]階層レベルにexternal-controllerステートメントを含めます。MVPNのプロバイダトンネル設定に
external-controllerが存在するということは、このMVPNインスタンスのポイントツーマルチポイントLSPと(S,G)が外部コントローラから提供できることを示しています。これにより、外部コントローラが、MVPN の(S,G)およびポイントツーマルチポイント LSP を動的に設定できます。
PCE開始ポイントツーマルチポイントLSPをMVPNにマッピングする場合は、以下の点に注意してください。
-
特定のMVPNインスタンスに対して
external-controller pccdステートメントを有効にしない場合、PCCDプロセスは動的に(S,G)を設定しません。 -
CLIから
external-controller pccd設定を無効にすると、その特定のMVPNインスタンスについて動的に学習されたマルチキャストフロー(S,G)が削除され、外部コントローラに報告されます。 -
(S,G)がすでにCLIから設定されている場合、ローカル設定の方が優先度が高いため、PCCは(S,G)を動的に設定できません。
-
特定の(S,G)が外部コントローラから動的に学習され、同じMVPNインスタンスに同じ(S,G)を設定すると、動的に学習された(S,G)は削除され、PCCを介して外部コントローラに報告されます。
-
ルーティングプロトコルプロセスが再起動すると、PCCDプロセスはすべて(S,G)を再設定します。
-
PCCDプロセスが再起動すると、MVPNは設定されているすべてのPCCD(S,G)を外部コントローラに報告します。
-
ユーザーが特定のMVPNインスタンスに対して
external-controller pccdを有効にした場合、MVPNはPCCDプロセスに(S,G)を設定するよう要求します(存在する場合)。 -
特定のMPVNインスタンスに大幅な設定変更がある場合、MVPNはPCCDプロセスに、その特定のMVPNインスタンスのすべて(S,G)を再設定するようリクエストします。
-
PCEが開始するポイントツーマルチポイントLSPに関連するすべてのフロー仕様は、同じRDを持つ必要があります。PC 開始中に、すべてのフロー仕様に同じ RD がない場合、PC 開始メッセージはエラーとともにドロップされます。
-
ポイントツーマルチポイントLSPは、選択したタイプのフロー仕様にのみ関連付けることができます。そうでない場合、PC開始メッセージはエラーでドロップされます。
-
PC更新中に、新しいフロー仕様の追加、または既存のフロー仕様の更新により、すべてのフロー仕様のRDが同じでない場合、PCCは更新メッセージをドロップします。
-
PC 更新中に、新しいフロー仕様の追加、または既存のフロー仕様の更新により、すべてのフロー仕様が選択条件を満たさない場合、PCC は更新メッセージをドロップします。
-
PCE開始のポイントツーマルチポイントLSPとMVPNルーティングインスタンスのマッピング、および静的(ローカル設定された)ポイントツーマルチポイントLSPとMVPNインスタンスのマッピングの動作は、ユーザーレベルで同じです。
-
フロー仕様IDは、1つのポイントツーマルチポイントLSPにのみ関連付けることができます。同じRDと(S,G)を複数のポイントツーマルチポイントLSPに関連付けるには、異なるIDと同じRD&(S,G)を持つ複数のフロー仕様を追加できます。
-
PCEPにマッピングされた動的(S,G)の場合、しきい値は常にデフォルト値の 0です。
-
PCEが開始する単一のポイントツーマルチポイントLSPにマッピングされるフロー仕様の数に制限はありません。
-
この機能の現在の実装では、以下をサポートしていません。
-
ポイントツーマルチポイントLSPに関連する転送状態のレポート。
-
プロバイダトンネル動的構成
-
MVPN イングレスレプリケーショントンネルのマッピング
-
プログラマブルルーティングプロトコルプロセス(prpd)
-
MVPN マルチキャスト フロー(S,G)にマッピングされた、CLI 設定のポイントツーマルチポイント LSP のレポート。
-
関連項目
パス計算要素プロトコルのセグメントルーティングを有効にする
トラフィックステアリング用のPath Computation Element Protocol(PCEP)を使用して、セグメントルーティングまたはSource Packet Routing in Networking(SPRING)トラフィックエンジニアリング(SR-TE)を有効にすることができます。このサポートにより、セグメント ルーティングの利点は、PCE(Path Computation Element)によって外部制御される LSP(ラベルスイッチ パス)にまで拡張されます。
パス計算要素プロトコルのセグメントルーティングの概要
- PCEP向けセグメントルーティングのメリット
- トラフィックエンジニアリングのためのセグメントルーティング
- PCEP向けセグメントルーティングのJunos OS実装
- PCEPのセグメントルーティングの制限とサポートされていない機能
PCEP向けセグメントルーティングのメリット
-
外部コントローラを介してLSPを設定することで、ネットワーク上のLSPごとおよびデバイスごとの帯域幅需要をグローバルに把握し、オンラインかつリアルタイムの制約ベースのパス計算を可能にします。
セグメント ルーティングの利点は、パス計算要素(PCE)としても知られる外部コントローラによって開始される LSP にまで拡張され、MPLS ネットワークにおける外部パス計算のメリットを増大させます。
-
委任機能を備えたパス計算クライアント(PCC、イングレスMXシリーズルーター)は、PCEPセッションがダウンしたときに、PCEから委任されたセグメントルーティングLSPの制御を取り戻すことができます。そうでなければ、LSP は PCC から削除されます。したがって、パケットがサイレントに廃棄またはドロップされる状況(nullルート条件とも呼ばれる)を回避することで、LSPデータ保護を確保できます。
トラフィックエンジニアリングのためのセグメントルーティング
セグメントルーティングは、IPv4またはIPv6のデータプレーン上で動作でき、等価コストマルチパス(ECMP)をサポートします。IGP拡張機能が組み込まれているため、セグメントルーティングは、レイヤー3VPN、仮想プライベートワイヤサービス(VPWS)、仮想プライベートLANサービス(VPLS)、イーサネットVPN(EVPN)など、MPLSの豊富なマルチサービス機能と統合されます。
セグメントルーティング-トラフィックエンジニアリング(SR-TE)ソリューションには、以下のようなハイレベルのコンポーネントがあります。
-
リンク特性をアドバタイズするための IGP の使用この機能はRSVP-TEと似ています。
-
イングレスデバイスまたはPCEでのCSPF(制限付き最短パスファースト)の使用。
-
リンクのアドバタイズラベルにIGPを使用します。
SR-TEの機能:
-
イングレスデバイスは、通過したいリンクのラベルをスタックしてLSPを構築します。
-
リンク単位のIGPアドバタイズは、ラベルスタッキングと組み合わせて、イングレスデバイス上にソースルーティングLSPを作成するため、トランジットデバイスはエンドツーエンドLSPを認識しません。
-
LSPは、トランジットデバイスにLSPごとのメモリ要件を設定せずにエッジノード間で作成されます。(SR-TEにはLSPごとのシグナリングがないため、このようなLSPの作成は有効です。)
-
ネイバーごとのラベルが積み重ねられるため、大量のラベルを管理することになり、コントロールプレーンのスケーリングにつながります。
-
PCEP向けセグメントルーティングのJunos OS実装
Junos OS は、PCE 開始 LSP と PCE 委任 LSP の 2 種類の LSP に対して、PCEP のセグメント ルーティングを実装します。
PCE開始セグメントルーティングLSP
PCE開始セグメントルーティングLSPは、PCEが隣接セグメントとノードセグメントに対して作成するLSPです
PCE は、以下の機能を実行します。
-
セグメントルーティングLSPのパスを計算します。
-
PCEPセグメントルーティング拡張を使用して、パス計算クライアント(PCC)上でLSPをプロビジョニングします。
-
PCEPセグメントのルーティング拡張を解析します。
-
独自の優先値を持つトンネルルートをPCC上に作成し、他のトンネルルートと同様にIPトラフィックとサービスを解決するためにinet.3ルーティングテーブルで利用可能になります。
PCCは、以下の機能を実行します。
-
送信元の明示的ルートオブジェクト(S-ERO)の最初のネットワークアクセス識別子(NAI)に基づいて発信インターフェイスを選択します。
Junos OSは、最初のホップをストリクトホップとして含むS-EROをサポートしています。Junos OSは、ルーズホップノードセグメントID(SID)に基づくPCC上の発信インターフェイスの選択をサポートしていません。ただし、残りのホップはルーズになる可能性があります。ファーストホップを超えたS-EROについては、単にネクストホップの作成にラベルを使用する以外に、特定の処理は行われません。
-
次の場合、S-ERO を拒否します。
-
S-EROにはラベルが付いていません。
-
S-ERO は 6 ホップ以上を伝送します。
PCCは、同じメトリックを持つ同じ宛先への複数のLSPがある場合、等価コストマルチパス(ECMP)ルートを作成します。
-
-
プロビジョニング後にセグメント ルーティング LSP の変更につながるイベント(ラベルが変更または取り消しされた場合、LSP が通過するインターフェイスの 1 つがダウンした場合など)を PCE が処理するのを待ちます。
PCEPセッションがダウンすると、PCEが開始するセグメントルーティングLSPは以下を実行します。
-
300秒間起動したままになります。
-
300秒後にPCCから削除されます。
詳細については、インターネットドラフトdraft-ietf-pce-lsp-setup-type-03.txt(有効期限:2015年12月25日)、PCEPメッセージでのパス設定タイプの伝達を参照してください。draft-ietf-pce-segment-routing-06.txt(2016年2月10日有効期限)、セグメントルーティング向けPCEP延長。
PCE委任セグメントルーティングLSP
PCE委任セグメントルーティングLSPは、PCCがローカルで設定してからPCEコントローラに委任するLSPです。
Junos OSリリース20.1R1は以下をサポートします。
-
PCE 委任機能は、IPv4 宛先を持つ色なしセグメント ルーティング LSP に対してのみ有効。
-
セグメントリストの最初のセグメントのみを外部コントローラに委任および報告します。PCE委任では、複数のセグメントはサポートされていません。
PCCは、以下の方法でセグメントルーティングLSPを外部コントローラ(PCE)に委任できます。
-
Initial delegationローカルLSPはまだPCCで設定されておらず、LSPの設定時にLSPの委任が行われます。
-
Delegation of existing LSP—ローカルLSPはPCCで設定され、LSPの委任は送信元ルーティングパスが設定された後に行われます。つまり、既存のセグメントルーティングLSPで委任機能が有効になっていることになります。
セグメントルーティングLSPを委任した後、PCEは委任されたLSPを制御し、パス計算のためのLSP属性を変更することができます。PCCとPCE間のPCEPセッションがダウンすると、LSP制御がPCCに戻ります。PCEP セッションがダウンした場合、PCE から委任された LSP は、PCE が開始した LSP よりも有利になります。PCE開始LSPの場合、PCEPセッションがダウンすると、LSPはPCCから削除されます。ただし、PCE委任LSPの場合、PCEPセッションがダウンすると、PCCはPCEから委任されたLSPの制御を取り戻します。その結果、PCE委任LSPにより、セッションがダウンしたときにパケットがサイレントに破棄される(nullルート条件とも呼ばれる)状況を回避できます。
以下のタイプのセグメント ルーティング LSP は、PCE 委任機能をサポートしています。
-
Static LSPs—ラベルスタック全体が静的に設定された、静的に設定されたソースルーティングパス。
-
Auto-translated LSPs—自動的に変換される静的に設定されたソースルーティングパス。
-
Computed LSPs—分散型CSPF(Constrained Shortest Path First)で計算される、静的に設定されたソースルーティングパス。
-
Dynamic LSPs—動的トンネルモジュールを介してトリガーされ、ラストホップERO解決を持つ動的に作成されたトンネル。
セグメントルーティングLSPのソースに応じて、PCCで委任機能を設定できます。セグメントルーティングLSPの委任を有効にするには、[edit protocols source-packet-routing]階層の下の適切なレベルにlsp-external-controller pccdステートメントを含めます。
表2は 、委任機能が有効になっている対応する設定階層レベルへのLSPソースのマッピングを示しています。
PCCで委任機能を設定する前に、[edit protocols source-packet-routing]および[edit protocols mpls]階層レベルでlsp-external-controller pccdステートメントを含める必要があります。
|
セグメントルーティングLSPのソース |
設定階層 |
|---|---|
|
次の場所にあるプライマリセグメントリスト |
|
計算されたLSP(分散CSPF) |
次の場所にあるソースルーティングパスのプライマリセグメントリスト:
|
|
動的LSP |
次の場所にあるソースルーティングパステンプレートのプライマリセグメントリスト:
|
SR-TE LSPの制御ステータスは、 show spring-traffic-engineering コマンドの出力から表示できます。
表3は 、 lsp-external-controller ステートメントがソースルーティングパスに設定されている場合のPCEPの相互作用を示しています。
|
lsp-external-controller 設定階層 |
source-routing-path 委任状態 |
PCCとPCEの間のPCEP相互作用 |
|---|---|---|
|
ソースルーティングパスのプライマリセグメントリスト |
最初の委任 |
ルーティングプロトコルプロセス(rpd)が再起動したり、ルーティングエンジンのスイッチオーバーが発生したりしても、同じ動作が見られます。 |
|
ソースルーティングパスのプライマリセグメントリスト |
既存パスの委任 |
|
|
ソースルーティングパスのプライマリセグメント |
委任が設定されていないか、削除されています。 |
PCEからのセグメントリスト(利用可能な場合)は使用されなくなり、ローカル設定からの計算結果が使用されます。セグメント リストのローカル結果が利用可能な場合、対応するセグメント リストを使用して、事前対応方式でルートをプログラムします。 |
|
送信元ルーティングパスのセグメントリスト |
LSPが設定された後に委任が有効になります。 |
委任機能は、ソースルーティングパスの下にあるプライマリセグメントリストに対してトリガーされます。 |
|
送信元ルーティングパスのセグメントリスト |
委任が設定されていないか、削除されています。 |
委任機能は、ソースルーティングパスの下のプライマリセグメントリストから削除されます。 |
|
ソースルーティングパステンプレートのプライマリセグメントリスト |
LSPが設定された後に委任が有効になります。 |
|
|
ソースルーティングパステンプレートのプライマリセグメントリスト |
委任が設定されていないか、削除されています。 |
委任機能は、テンプレート設定に一致するすべてのソースルーティングパスとプライマリパスから削除されます。 |
PCEPのセグメントルーティングの制限とサポートされていない機能
PCEPのセグメントルーティングをサポートしても、システムのパフォーマンス負担が増加することはありません。ただし、以下の制限があります。
-
SR-TE LSP は、PCC でローカルに保護されていません。LSPが6ホップを超える場合、プレーンIPトラフィックを伝送する以外のサービスはLSPで提供されません。
-
グレースフルルーティングエンジンスイッチオーバー(GRES)および統合型インサービスソフトウェアアップグレード(統合型ISSU)はサポートされていません。
-
ノンストップアクティブルーティング(NSR)はサポートされていません。
-
IPv6 はサポートされません。
-
PCE委任LSPは、以下をサポートしていません。
-
カラー付きSR-TE LSP
-
IPv6 LSP
-
ソースルーティングパスのセカンダリセグメントリスト。セグメントリストのパスは1つだけ委任できます。
-
マルチセグメント標準。セグメントリストの最初のセグメントのみが委任され、コントローラに報告されます。
-
例:パス計算要素プロトコルのセグメントルーティングの設定
この例では、Path Computation Element Protocol(PCEP)に対してセグメントルーティングまたはSource Packet Routing in Networking(SPRING)トラフィックエンジニアリング(SR-TE)を設定する方法を示します。設定では、セグメントルーティングの利点と外部パスコンピューティングの利点を活用して、効率的なトラフィックエンジニアリングを実現します。
要件
この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。
-
4つのMXシリーズ5Gユニバーサルルーティングプラットフォーム(イングレスMXシリーズルーターはパス計算クライアント(PCC)です。
-
PCCから外部のステートフルPCE(Path Computation Element)へのTCP接続。
-
PCE開始LSPの実装用にPCCで実行されているJunos OSリリース17.2以降。
PCE委任機能を有効にするには、Junos OSリリース20.1R1以降のリリースを実行する必要があります。
始める前に:
-
デバイスインターフェイスを設定します。
-
MPLSを設定します。
-
IS-ISを設定します。
概要
PCEP向けセグメントルーティングのJunos OS実装には、PCE開始およびPCE委任SR-TE LSPが含まれます。
-
PCE開始LSPの実装は、Junos OSリリース17.2R1で導入され、セグメントルーティングのトラフィック制御機能がPCEによって開始されたLSPのPCEPセッションでサポートされます。PCEは、隣接セグメントとノードセグメントのLSPを作成します。トンネルルートは、PCE開始SR-TE LSPに対応するPCCのinet.3ルーティングテーブルに作成されます。
-
PCE委任LSPの実装は、Junos OSリリース20.1R1で導入され、PCC上でローカルに設定されたIPv4非カラーセグメントルーティングLSPをPCEコントローラに委任できます。次に、PCEはLSPを制御し、パス計算のためにLSP属性を変更することができます。
PCEが委任したLSPは、PCEPセッションがダウンする時点で、PCEが開始したLSPよりも有利になります。PCE開始LSPの場合、PCEPセッションがダウンすると、LSPはPCCから削除されます。ただし、PCE委任LSPの場合、PCEPセッションがダウンすると、PCCはPCEから委任されたLSPの制御を取り戻します。その結果、PCE委任LSPにより、PCEPセッションがダウンしたときにパケットがサイレントに破棄される(nullルート条件とも呼ばれる)状況を回避できます。
PCEPのセグメントルーティングを有効にするには:
PCE開始セグメントルーティングLSPの場合:
-
[edit protocols mpls]階層レベルにlsp-external-controllerステートメントを含めることで、MPLSの外部パスコンピューティングを有効にします。この設定は、RSVP-TE拡張を持つPCEPにも必要です。PCEPのセグメントルーティングが有効になっている場合、RSVP-TEでPCEPを無効にすることはできません。
-
[edit protocols spring-traffic-engineering]階層レベルにlsp-external-controller pccdステートメントを含めることで、SR-TEの外部パスコンピューティングを有効にします。 -
[edit protocols pcep pce pce-name]階層レベルにspring-capabilityステートメントを含めることで、PCEのセグメントルーティングを有効にします。 -
オプションで、
[edit protocols pcep pce pce-name]階層レベルでmax-sid-depth numberステートメントを含めることで、PCEの最大SID深さを設定します。最大SID深度は、ノードまたはノード上のリンクがサポートするSIDの数です。設定しない場合、デフォルトの最大SID値である5が適用されます。
-
オプションで、
[edit protocol spring-te]階層レベルでpreference preference-valueを含めることで、セグメントルーティングの優先値を設定します。優先度は、候補パスの中でアクティブなパスフォームとしてパスが選択される順序を示し、値が高いほど優先度が高くなります。設定しない場合、デフォルトのプリファレンス値8が適用されます。
-
オプションで、
[edit protocols spring-te]階層レベルにtraceoptionsステートメントを含めることで、トラブルシューティング目的でセグメントルーティングログを設定します。
セグメントルーティングLSPのPCE委任では、前述の手順に加えて、以下の手順を実行します。
-
ラベルパラメータでセグメントリストを定義します。これにより、PCC上でローカルにセグメントルーティングLSPが作成されます。
-
セグメントルーティングLSPソースに応じて、以下のいずれかの階層に
lsp-external-controller pccdステートメントを含めることで、PCC上でローカルに設定されたLSPの委任機能を有効にします。-
分散CSPFで計算される静的に設定されたソースルーティングパスの場合
[edit protocols source-packet-routing source-routing-path lsp-name primary path-name compute profile-name]階層レベルと[edit protocols source-packet-routing source-routing-path lsp-name primary path-name]階層レベル。 -
ラベルスタック全体が静的に設定された静的に設定されたソースルーティングパスと、自動的に変換されるソースルーティングパスの場合
[edit protocols source-packet-routing source-routing-path lsp-name primary path-name]階層レベル。 -
動的トンネルモジュールを介してトリガーされ、最終ホップERO解決(
[edit protocols source-packet-routing source-routing-path-template template-name primary primary-segment-list-name]および[edit protocols source-packet-routing source-routing-path-template template-name]階層レベル)を持つ動的に作成されたトンネルの場合。
-
トポロジー
図8 は、PCEとPCC(イングレスMXシリーズルーター)の間でPCEPセッションが実行されているサンプルネットワークトポロジーを示しています。ルーター R1、R2、および R3 は、ネットワーク内の他の MXシリーズ ルーターです。この例では、PCC上でPCEPのセグメントルーティングを設定します。また、ルーターR3へのPCC上で静的ルートを設定し、静的ルートのトラフィックをルーティングする際にSR-TEトンネルルートの使用を検証します。
設定
CLIクイックコンフィグレーション
この例をすばやく設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピーアンドペーストして、設定モードから commit を入力します。
このセクションでは、すべてのデバイス(PCCと3つのルーター)の設定を紹介しますが、ステップバイステップの手順では、PCCの設定のみを記述します。
PCC
set interfaces ge-0/0/5 unit 0 family inet address 10.100.41.1/24 set interfaces ge-0/0/5 unit 0 family iso set interfaces ge-0/0/5 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.168.100.4/32 primary set interfaces lo0 unit 0 family iso address 49.0011.0110.0000.0101.00 set interfaces lo0 unit 0 family mpls set routing-options static route 100.1.1.1/32 next-hop 192.168.100.3 set routing-options router-id 192.168.100.4 set routing-options autonomous-system 64496 set protocols rsvp interface fxp0.0 disable set protocols rsvp interface all set protocols mpls lsp-external-controller pccd set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis source-packet-routing srgb start-label 800000 set protocols isis source-packet-routing srgb index-range 4000 set protocols isis source-packet-routing node-segment ipv4-index 101 set protocols isis source-packet-routing node-segment ipv6-index 11 set protocols isis level 1 disable set protocols isis level 2 wide-metrics-only set protocols isis interface all point-to-point set protocols isis interface all level 2 metric 10 set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0 passive set protocols source-packet-routing segment-list static_seg_list_1 hop1 label 800102 set protocols source-packet-routing segment-list static_seg_list_1 hop2 label 800103 set protocols source-packet-routing source-routing-path static_srte_lsp_1 to 192.168.100.3 set protocols source-packet-routing source-routing-path static_srte_lsp_1 primary static_seg_list_1 lsp-external-controller pccd set protocols spring-traffic-engineering lsp-external-controller pccd set protocols source-packet-routing source-routing-path static1 lsp-external-controller pccd set protocols pcep pce pce1 local-address 192.168.100.4 set protocols pcep pce pce1 destination-ipv4-address 10.102.180.232 set protocols pcep pce pce1 destination-port 4189 set protocols pcep pce pce1 pce-type active set protocols pcep pce pce1 pce-type stateful set protocols pcep pce pce1 lsp-provisioning set protocols pcep pce pce1 spring-capability
ルーターR1
set interfaces ge-0/0/5 unit 0 family inet address 10.100.41.2/24 set interfaces ge-0/0/5 unit 0 family iso set interfaces ge-0/0/5 unit 0 family mpls set interfaces ge-0/1/2 unit 0 family inet address 10.100.12.1/24 set interfaces ge-0/1/2 unit 0 family iso set interfaces ge-0/1/2 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.168.100.1/32 primary set interfaces lo0 unit 0 family iso address 49.0011.0110.0000.0102.00 set interfaces lo0 unit 0 family mpls set routing-options router-id 192.168.100.1 set routing-options autonomous-system 64496 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis source-packet-routing srgb start-label 800000 set protocols isis source-packet-routing srgb index-range 4000 set protocols isis source-packet-routing node-segment ipv4-index 102 set protocols isis level 1 disable set protocols isis level 2 wide-metrics-only set protocols isis interface all point-to-point set protocols isis interface all level 2 metric 10 set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0 passive
ルーターR2
set interfaces ge-0/1/2 unit 0 family inet address 10.100.12.2/24 set interfaces ge-0/1/2 unit 0 family iso set interfaces ge-0/1/2 unit 0 family mpls set interfaces ge-0/1/8 unit 0 family inet address 10.100.23.1/24 set interfaces ge-0/1/8 unit 0 family iso set interfaces ge-0/1/8 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.168.100.2/32 set interfaces lo0 unit 0 family iso address 49.0011.0110.0000.0105.00 set interfaces lo0 unit 0 family mpls set routing-options router-id 192.168.100.2 set routing-options autonomous-system 64496 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis source-packet-routing srgb start-label 800000 set protocols isis source-packet-routing srgb index-range 4000 set protocols isis source-packet-routing node-segment ipv4-index 105 set protocols isis level 1 disable set protocols isis level 2 wide-metrics-only set protocols isis interface all point-to-point set protocols isis interface all level 2 metric 10 set protocols isis interface all level 1 disable set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0 passive
ルーターR3
set interfaces ge-0/1/8 unit 0 family inet address 10.100.23.2/24 set interfaces ge-0/1/8 unit 0 family iso set interfaces ge-0/1/8 unit 0 family mpls set interfaces lo0 unit 0 family inet address 192.168.100.3/32 primary set interfaces lo0 unit 0 family iso address 49.0011.0110.0000.0103.00 set interfaces lo0 unit 0 family mpls set routing-options static route 100.1.1.1/32 receive set routing-options router-id 192.168.100.3 set routing-options autonomous-system 64496 set protocols rsvp interface all set protocols rsvp interface fxp0.0 disable set protocols mpls interface all set protocols mpls interface fxp0.0 disable set protocols isis source-packet-routing srgb start-label 800000 set protocols isis source-packet-routing srgb index-range 4000 set protocols isis source-packet-routing node-segment ipv4-index 103 set protocols isis level 1 disable set protocols isis level 2 wide-metrics-only set protocols isis interface all point-to-point set protocols isis interface all level 2 metric 10 set protocols isis interface fxp0.0 disable set protocols isis interface lo0.0 passive
手順
ステップバイステップの手順
この例では、PCCのみを設定します。
以下の手順では、設定階層内のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『CLIユーザーガイド』の「設定モードでのCLIエディターの使用」を参照してください。
PCCを設定するには:
-
PCCのインターフェイスを設定します。
[edit interfaces] user@PCC# set ge-0/0/5 unit 0 family inet address 10.100.41.1/24 user@PCC# set ge-0/0/5 unit 0 family iso user@PCC# set ge-0/0/5 unit 0 family mpls user@PCC# set lo0 unit 0 family inet address 192.168.100.4/32 primary user@PCC# set lo0 unit 0 family iso address 49.0011.0110.0000.0101.00 user@PCC# set lo0 unit 0 family mpls
-
ルーターIDを設定し、PCCに自律システム番号を割り当てます。
[edit routing-options] user@PCC# set router-id 192.168.100.4 user@PCC# set autonomous-system 64496
-
PCCからルーターR3へのスタティックルートを設定します。
静的ルートは検証目的でのみ作成されており、機能には影響しません。
[edit routing-options] user@PCC# set static route 100.1.1.1/32 next-hop 192.168.100.3
-
管理インターフェイスを除くPCCのすべてのインターフェイスでRSVPを設定します。
[edit protocols] user@PCC# set rsvp interface fxp0.0 disable user@PCC# set rsvp interface all
-
管理インターフェイスを除くPCCのすべてのインターフェイスでMPLSを設定します。
[edit protocols] user@PCC# set mpls interface all user@PCC# set mpls interface fxp0.0 disable
-
MPLSの外部パスコンピューティング機能を有効にします。
[edit protocols] user@PCC# set mpls lsp-external-controller pccd
-
管理インターフェイスとループバック インターフェイスを除く PCC のすべてのインターフェイスで IS-IS レベル 2 を設定します。
[edit protocols] user@PCC# set isis level 1 disable user@PCC# set isis level 2 wide-metrics-only user@PCC# set isis interface all point-to-point user@PCC# set isis interface all level 2 metric 10 user@PCC# set isis interface fxp0.0 disable user@PCC# set isis interface lo0.0 passive
-
セグメントルーティングのセグメントルーティングのSRGB(セグメントルーティンググローバルブロック)属性を設定します。
[edit protocols] user@PCC# set isis source-packet-routing srgb start-label 800000 user@PCC# set isis source-packet-routing srgb index-range 4000 user@PCC# set isis source-packet-routing node-segment ipv4-index 101 user@PCC# set isis source-packet-routing node-segment ipv6-index 11
-
SR-TEの外部パスコンピューティング機能を有効にします。
[edit protocols] user@PCC# set spring-traffic-engineering lsp-external-controller pccd
-
PCEパラメーターを設定し、PCEとセグメントルーティング機能によるLSPのプロビジョニングを有効にします。
[edit protocols] user@PCC# set pcep pce pce1 local-address 192.168.100.4 user@PCC# set pcep pce pce1 destination-ipv4-address 10.102.180.232 user@PCC# set pcep pce pce1 destination-port 4189 user@PCC# set pcep pce pce1 pce-type active user@PCC# set pcep pce pce1 pce-type stateful
-
PCEによるセグメントルーティングLSPのプロビジョニングを有効にします。
[edit protocols] user@PCC# set pcep pce pce1 lsp-provisioning
-
PCEのセグメントルーティング機能を有効にします。
[edit protocols] user@PCC# set pcep pce pce1 spring-capability
-
静的セグメントリスト
static_seg_list_1パラメーターを定義します。[edit protocols] user@PCC# set source-packet-routing segment-list static_seg_list_1 hop1 label 800102 user@PCC# set source-packet-routing segment-list static_seg_list_1 hop2 label 800103
-
PCEの委任用に、PCCからルーターR3へのスタティックセグメントルーティングLSPを設定します。
[edit protocols] user@PCC# set source-packet-routing source-routing-path static_srte_lsp_1 to 192.168.100.3
-
static_srte_lsp_1送信元ルーティングパスの委任機能を有効にします。[edit protocols] user@PCC# set source-packet-routing source-routing-path static_srte_lsp_1 primary static_seg_list_1 lsp-external-controller pccd
ステップ13、14、および15を完了することで、PCCがセグメントルーティングLSPをPCEに委任できるようにします。
-
設定をコミットします。
結果
設定モードから、 show interfaces、 show routing-options、 show protocols コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PCC# show interfaces
ge-0/0/5 {
unit 0 {
family inet {
address 10.100.41.1/24;
}
family iso;
family mpls;
}
}
lo0 {
unit 0 {
family inet {
address 192.168.100.4/32 {
primary;
}
}
family iso {
address 49.0011.0110.0000.0101.00;
}
family mpls;
}
}
user@PCC# show routing-options
static {
route 100.1.1.1/32 next-hop 192.168.100.3;
}
router-id 192.168.100.4;
autonomous-system 64496;
user@PCC# show protocols
rsvp {
interface fxp0.0 {
disable;
}
interface all;
}
mpls {
lsp-external-controller pccd;
interface all;
interface fxp0.0 {
disable;
}
}
isis {
source-packet-routing {
srgb start-label 800000 index-range 4000;
node-segment {
ipv4-index 101;
ipv6-index 11;
}
}
level 1 disable;
level 2 wide-metrics-only;
interface all {
point-to-point;
level 2 metric 10;
}
interface fxp0.0 {
disable;
}
interface lo0.0 {
passive;
}
}
spring-traffic-engineering {
lsp-external-controller pccd;
}
source-packet-routing {
segment-list static_seg_list_1 {
hop1 label 800102
hop1 label 800102
}
source-routing-path static_srte_lsp_1 {
to 192.168.100.3;
primary {
static_seg_list_1 {
lsp-external-controller pccd;
}
}
}
}
pcep {
pce pce1 {
local-address 192.168.100.4;
destination-ipv4-address 10.102.180.232;
destination-port 4189;
pce-type active stateful;
lsp-provisioning;
spring-capability;
}
}
デバイス(PCC)の設定が完了したら、設定モードから commit を入力します。
検証
設定が正常に機能していることを確認します。
- IS-ISの隣接関係とラベルの検証
- トラフィック制御データベースの検証
- SR-TE LSPの検証
- トンネルルート作成の検証
- 転送テーブルエントリーの検証
- 静的ルート転送のためのトンネルルートの使用の検証
IS-ISの隣接関係とラベルの検証
目的
PCC上のIS-IS隣接関係を確認します。SRGBラベル範囲、隣接関係とノードセグメントの値、SPRING機能出力フィールドをメモします。
アクション
動作モードから、 show isis adjacency extensive、 show isis database extensive、 show isis overview コマンドを実行します。
user@PCC> show isis adjacency extensive R1 Interface: ge-0/0/5.0, Level: 2, State: Up, Expires in 25 secs Priority: 0, Up/Down transitions: 1, Last transition: 00:37:15 ago Circuit type: 2, Speaks: IP, IPv6 Topologies: Unicast Restart capable: Yes, Adjacency advertisement: Advertise IP addresses: 10.100.41.2 Level 2 IPv4 Adj-SID: 16 Transition log: When State Event Down reason Wed Apr 5 02:42:48 Up Seenself PCE Interface: gre.0, Level: 2, State: Up, Expires in 25 secs Priority: 0, Up/Down transitions: 1, Last transition: 00:27:00 ago Circuit type: 2, Speaks: IP, IPv6 Topologies: Unicast Restart capable: Yes, Adjacency advertisement: Advertise IP addresses: 11.105.199.2 Level 2 Transition log: When State Event Down reason Wed Apr 5 02:53:03 Up Seenself
user@PCC> show isis database extensive
IS-IS level 1 link-state database:
IS-IS level 2 link-state database:
PCC.00-00 Sequence: 0x2a6, Checksum: 0x1a4f, Lifetime: 1150 secs
IPV4 Index: 101
Node Segment Blocks Advertised:
Start Index : 0, Size : 4000, Label-Range: [ 800000, 803999 ]
IS neighbor: R1.00 Metric: 10
Two-way fragment: R1.00-00, Two-way first fragment: R1.00-00
IS neighbor: PCE.00 Metric: 16777215
IP prefix: 192.168.100.4/32 Metric: 0 Internal Up
IP prefix: 11.101.102.0/30 Metric: 10 Internal Up
IP prefix: 11.105.199.0/30 Metric: 16777215 Internal Up
Header: LSP ID: PCC.00-00, Length: 243 bytes
Allocated length: 1492 bytes, Router ID: 192.168.100.4
Remaining lifetime: 1150 secs, Level: 2, Interface: 0
Estimated free bytes: 1084, Actual free bytes: 1249
Aging timer expires in: 1150 secs
Protocols: IP, IPv6
Packet: LSP ID: PCC.00-00, Length: 243 bytes, Lifetime : 1198 secs
Checksum: 0x1a4f, Sequence: 0x2a6, Attributes: 0x3 L1 L2
NLPID: 0x83, Fixed length: 27 bytes, Version: 1, Sysid length: 0 bytes
Packet type: 20, Packet version: 1, Max area: 0
TLVs:
Area address: 49.0011 (3)
LSP Buffer Size: 1492
Speaks: IP
Speaks: IPV6
IP router id: 192.168.100.4
IP address: 192.168.100.4
Hostname: PCC
IS extended neighbor: R1.00, Metric: default 10
IP address: 10.100.41.1
Neighbor's IP address: 10.100.41.2
Local interface index: 334, Remote interface index: 333
Current reservable bandwidth:
Priority 0 : 10Mbps
Priority 1 : 10Mbps
Priority 2 : 10Mbps
Priority 3 : 10Mbps
Priority 4 : 10Mbps
Priority 5 : 10Mbps
Priority 6 : 10Mbps
Priority 7 : 10Mbps
Maximum reservable bandwidth: 10Mbps
Maximum bandwidth: 10Mbps
Administrative groups: 0 none
P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0), Weight:0, Label: 16
IS extended neighbor: PCE.00, Metric: default 16777215
IP address: 11.105.199.1
Neighbor's IP address: 11.105.199.2
Local interface index: 329, Remote interface index: 329
IP extended prefix: 11.101.102.0/30 metric 10 up
IP extended prefix: 11.105.199.0/30 metric 16777215 up
IP extended prefix: 192.168.100.4/32 metric 0 up
8 bytes of subtlvs
Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 101
Router Capability: Router ID 192.168.100.4, Flags: 0x00
SPRING Capability - Flags: 0xc0(I:1,V:1), Range: 4000, SID-Label: 800000
SPRING Algorithm - Algo: 0
No queued transmissions
R1.00-00 Sequence: 0x297, Checksum: 0x1615, Lifetime: 839 secs
IPV4 Index: 102
Node Segment Blocks Advertised:
Start Index : 0, Size : 4000, Label-Range: [ 800000, 803999 ]
IS neighbor: PCC.00 Metric: 10
Two-way fragment: PCC.00-00, Two-way first fragment: PCC.00-00
IS neighbor: R2.00 Metric: 10
Two-way fragment: R2.00-00, Two-way first fragment: R2.00-00
IP prefix: 192.168.100.1/32 Metric: 0 Internal Up
IP prefix: 11.101.102.0/30 Metric: 10 Internal Up
IP prefix: 11.102.105.0/30 Metric: 10 Internal Up
Header: LSP ID: R1.00-00, Length: 302 bytes
Allocated length: 302 bytes, Router ID: 192.168.100.1
Remaining lifetime: 839 secs, Level: 2, Interface: 334
Estimated free bytes: 0, Actual free bytes: 0
Aging timer expires in: 839 secs
Protocols: IP, IPv6
Packet: LSP ID: R1.00-00, Length: 302 bytes, Lifetime : 1196 secs
Checksum: 0x1615, Sequence: 0x297, Attributes: 0x3 L1 L2
NLPID: 0x83, Fixed length: 27 bytes, Version: 1, Sysid length: 0 bytes
Packet type: 20, Packet version: 1, Max area: 0
TLVs:
Area address: 49.0011 (3)
LSP Buffer Size: 1492
Speaks: IP
Speaks: IPV6
IP router id: 192.168.100.1
IP address: 192.168.100.1
Hostname: R1
IP extended prefix: 192.168.100.1/32 metric 0 up
8 bytes of subtlvs
Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 102
IP extended prefix: 11.101.102.0/30 metric 10 up
IP extended prefix: 11.102.105.0/30 metric 10 up
Router Capability: Router ID 192.168.100.1, Flags: 0x00
SPRING Capability - Flags: 0xc0(I:1,V:1), Range: 4000, SID-Label: 800000
SPRING Algorithm - Algo: 0
IS extended neighbor: R2.00, Metric: default 10
IP address: 10.100.12.1
Neighbor's IP address: 10.100.12.2
Local interface index: 334, Remote interface index: 333
Current reservable bandwidth:
Priority 0 : 10Mbps
Priority 1 : 10Mbps
Priority 2 : 10Mbps
Priority 3 : 10Mbps
Priority 4 : 10Mbps
Priority 5 : 10Mbps
Priority 6 : 10Mbps
Priority 7 : 10Mbps
Maximum reservable bandwidth: 10Mbps
Maximum bandwidth: 10Mbps
Administrative groups: 0 none
P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0), Weight:0, Label: 17
IS extended neighbor: PCC.00, Metric: default 10
IP address: 10.100.41.2
Neighbor's IP address: 10.100.41.1
Local interface index: 333, Remote interface index: 334
Current reservable bandwidth:
Priority 0 : 10Mbps
Priority 1 : 10Mbps
Priority 2 : 10Mbps
Priority 3 : 10Mbps
Priority 4 : 10Mbps
Priority 5 : 10Mbps
Priority 6 : 10Mbps
Priority 7 : 10Mbps
Maximum reservable bandwidth: 10Mbps
Maximum bandwidth: 10Mbps
Administrative groups: 0 none
P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0), Weight:0, Label: 16
No queued transmissions
R3.00-00 Sequence: 0x95, Checksum: 0xd459, Lifetime: 895 secs
IPV4 Index: 103
Node Segment Blocks Advertised:
Start Index : 0, Size : 4000, Label-Range: [ 800000, 803999 ]
IS neighbor: R2.00 Metric: 10
Two-way fragment: R2.00-00, Two-way first fragment: R2.00-00
IP prefix: 192.168.100.3/32 Metric: 0 Internal Up
IP prefix: 11.102.1.0/24 Metric: 10 Internal Up
IP prefix: 11.103.107.0/30 Metric: 10 Internal Up
Header: LSP ID: R3.00-00, Length: 209 bytes
Allocated length: 284 bytes, Router ID: 192.168.100.3
Remaining lifetime: 895 secs, Level: 2, Interface: 334
Estimated free bytes: 75, Actual free bytes: 75
Aging timer expires in: 895 secs
Protocols: IP, IPv6
Packet: LSP ID: R3.00-00, Length: 209 bytes, Lifetime : 1192 secs
Checksum: 0xd459, Sequence: 0x95, Attributes: 0x3 L1 L2
NLPID: 0x83, Fixed length: 27 bytes, Version: 1, Sysid length: 0 bytes
Packet type: 20, Packet version: 1, Max area: 0
TLVs:
Area address: 49.0011 (3)
LSP Buffer Size: 1492
Speaks: IP
Speaks: IPV6
IP router id: 192.168.100.3
IP address: 192.168.100.3
Hostname: R3
IS extended neighbor: R2.00, Metric: default 10
IP address: 10.100.23.2
Neighbor's IP address: 10.100.23.1
Local interface index: 336, Remote interface index: 334
Current reservable bandwidth:
Priority 0 : 10Mbps
Priority 1 : 10Mbps
Priority 2 : 10Mbps
Priority 3 : 10Mbps
Priority 4 : 10Mbps
Priority 5 : 10Mbps
Priority 6 : 10Mbps
Priority 7 : 10Mbps
Maximum reservable bandwidth: 10Mbps
Maximum bandwidth: 10Mbps
Administrative groups: 0 none
P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0), Weight:0, Label: 16
IP extended prefix: 192.168.100.3/32 metric 0 up
8 bytes of subtlvs
Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 103
IP extended prefix: 11.103.107.0/30 metric 10 up
IP extended prefix: 11.102.1.0/24 metric 10 up
Router Capability: Router ID 192.168.100.3, Flags: 0x00
SPRING Capability - Flags: 0xc0(I:1,V:1), Range: 4000, SID-Label: 800000
SPRING Algorithm - Algo: 0
No queued transmissions
R2.00-00 Sequence: 0x2aa, Checksum: 0xf8f4, Lifetime: 1067 secs
IPV4 Index: 105
Node Segment Blocks Advertised:
Start Index : 0, Size : 4000, Label-Range: [ 800000, 803999 ]
IS neighbor: R1.00 Metric: 10
Two-way fragment: R1.00-00, Two-way first fragment: R1.00-00
IS neighbor: R3.00 Metric: 10
Two-way fragment: R3.00-00, Two-way first fragment: R3.00-00
IP prefix: 192.168.100.2/32 Metric: 0 Internal Up
IP prefix: 11.102.105.0/30 Metric: 10 Internal Up
IP prefix: 11.103.107.0/30 Metric: 10 Internal Up
Header: LSP ID: R2.00-00, Length: 302 bytes
Allocated length: 302 bytes, Router ID: 192.168.100.2
Remaining lifetime: 1067 secs, Level: 2, Interface: 334
Estimated free bytes: 0, Actual free bytes: 0
Aging timer expires in: 1067 secs
Protocols: IP, IPv6
Packet: LSP ID: R2.00-00, Length: 302 bytes, Lifetime : 1194 secs
Checksum: 0xf8f4, Sequence: 0x2aa, Attributes: 0x3 L1 L2
NLPID: 0x83, Fixed length: 27 bytes, Version: 1, Sysid length: 0 bytes
Packet type: 20, Packet version: 1, Max area: 0
TLVs:
Area address: 49.0011 (3)
LSP Buffer Size: 1492
Speaks: IP
Speaks: IPV6
IP router id: 192.168.100.2
IP address: 192.168.100.2
Hostname: R2
IP extended prefix: 192.168.100.2/32 metric 0 up
8 bytes of subtlvs
Node SID, Flags: 0x40(R:0,N:1,P:0,E:0,V:0,L:0), Algo: SPF(0), Value: 105
IP extended prefix: 11.102.105.0/30 metric 10 up
IP extended prefix: 11.103.107.0/30 metric 10 up
Router Capability: Router ID 192.168.100.2, Flags: 0x00
SPRING Capability - Flags: 0xc0(I:1,V:1), Range: 4000, SID-Label: 800000
SPRING Algorithm - Algo: 0
IS extended neighbor: R3.00, Metric: default 10
IP address: 10.100.23.1
Neighbor's IP address: 10.100.23.2
Local interface index: 334, Remote interface index: 336
Current reservable bandwidth:
Priority 0 : 10Mbps
Priority 1 : 10Mbps
Priority 2 : 10Mbps
Priority 3 : 10Mbps
Priority 4 : 10Mbps
Priority 5 : 10Mbps
Priority 6 : 10Mbps
Priority 7 : 10Mbps
Maximum reservable bandwidth: 10Mbps
Maximum bandwidth: 10Mbps
Administrative groups: 0 none
P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0), Weight:0, Label: 16
IS extended neighbor: R1.00, Metric: default 10
IP address: 10.100.12.2
Neighbor's IP address: 10.100.12.1
Local interface index: 333, Remote interface index: 334
Current reservable bandwidth:
Priority 0 : 10Mbps
Priority 1 : 10Mbps
Priority 2 : 10Mbps
Priority 3 : 10Mbps
Priority 4 : 10Mbps
Priority 5 : 10Mbps
Priority 6 : 10Mbps
Priority 7 : 10Mbps
Maximum reservable bandwidth: 10Mbps
Maximum bandwidth: 10Mbps
Administrative groups: 0 none
P2P IPV4 Adj-SID - Flags:0x30(F:0,B:0,V:1,L:1,S:0), Weight:0, Label: 17
No queued transmissions
PCE.00-00 Sequence: 0x277, Checksum: 0x64a5, Lifetime: 533 secs
IS neighbor: PCC.00 Metric: 16777215
IP prefix: 11.0.0.199/32 Metric: 0 Internal Up
IP prefix: 11.105.199.0/30 Metric: 16777215 Internal Up
Header: LSP ID: PCE.00-00, Length: 120 bytes
Allocated length: 284 bytes, Router ID: 11.0.0.199
Remaining lifetime: 533 secs, Level: 2, Interface: 329
Estimated free bytes: 164, Actual free bytes: 164
Aging timer expires in: 533 secs
Protocols: IP, IPv6
Packet: LSP ID: PCE.00-00, Length: 120 bytes, Lifetime : 1196 secs
Checksum: 0x64a5, Sequence: 0x277, Attributes: 0x3 L1 L2
NLPID: 0x83, Fixed length: 27 bytes, Version: 1, Sysid length: 0 bytes
Packet type: 20, Packet version: 1, Max area: 0
TLVs:
Area address: 11.0007 (3)
LSP Buffer Size: 1492
Speaks: IP
Speaks: IPV6
IP router id: 11.0.0.199
IP address: 11.0.0.199
Hostname: PCE
Router Capability: Router ID 11.0.0.199, Flags: 0x00
IP extended prefix: 11.105.199.0/30 metric 16777215 up
IP extended prefix: 11.0.0.199/32 metric 0 up
IS extended neighbor: PCC.00, Metric: default 16777215
IP address: 11.105.199.2
Neighbor's IP address: 11.105.199.1
Local interface index: 329, Remote interface index: 329
No queued transmissions
user@PCC> show isis overview
Instance: master
Router ID: 192.168.100.4
Hostname: PCC
Sysid: 0110.0000.0101
Areaid: 49.0011
Adjacency holddown: enabled
Maximum Areas: 3
LSP life time: 1200
Attached bit evaluation: enabled
SPF delay: 200 msec, SPF holddown: 5000 msec, SPF rapid runs: 3
IPv4 is enabled, IPv6 is enabled, SPRING based MPLS is enabled
Traffic engineering: enabled
Restart: Disabled
Helper mode: Enabled
Layer2-map: Disabled
Source Packet Routing (SPRING): Enabled
SRGB Config Range:
SRGB Start-Label : 800000, SRGB Index-Range : 4000
SRGB Block Allocation: Success
SRGB Start Index : 800000, SRGB Size : 4000, Label-Range: [ 800000, 803999 ]
Node Segments: Enabled
Ipv4 Index : 101, Ipv6 Index : 11
Level 1
Internal route preference: 15
External route preference: 160
Prefix export count: 0
Wide metrics are enabled, Narrow metrics are enabled
Source Packet Routing is enabled
Level 2
Internal route preference: 18
External route preference: 165
Prefix export count: 0
Wide metrics are enabled
Source Packet Routing is enabled
意味
PCCとPCE間のIS-IS隣接関係、およびPCCとルーターR1の間の隣接関係は稼働しており、稼働しています。出力には、隣接するセグメントとノードセグメントのラベル割り当ても表示されます。
トラフィック制御データベースの検証
目的
PCC上のトラフィック制御データベースのエントリーを検証します。
アクション
動作モードから、 show ted database extensive コマンドを実行します。
user@PCC# show ted database extensive
TED database: 5 ISIS nodes 5 INET nodes
NodeID: PCC.00(192.168.100.4)
Type: Rtr, Age: 403 secs, LinkIn: 1, LinkOut: 1
Protocol: IS-IS(2)
192.168.100.4
To: R1.00(192.168.100.1), Local: 10.100.41.1, Remote: 10.100.41.2
Local interface index: 334, Remote interface index: 333
Color: 0 none
Metric: 10
IGP metric: 10
Static BW: 10Mbps
Reservable BW: 10Mbps
Available BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
Interface Switching Capability Descriptor(1):
Switching type: Packet
Encoding type: Packet
Maximum LSP BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
P2P Adjacency-SID:
IPV4, SID: 16, Flags: 0x30, Weight: 0
Prefixes:
192.168.100.4/32
Metric: 0, Flags: 0x00
Prefix-SID:
SID: 101, Flags: 0x40, Algo: 0
SPRING-Capabilities:
SRGB block [Start: 800000, Range: 4000, Flags: 0xc0]
SPRING-Algorithms:
Algo: 0
NodeID: R1.00(192.168.100.1)
Type: Rtr, Age: 712 secs, LinkIn: 2, LinkOut: 2
Protocol: IS-IS(2)
192.168.100.1
To: PCC.00(192.168.100.4), Local: 10.100.41.2, Remote: 10.100.41.1
Local interface index: 333, Remote interface index: 334
Color: 0 none
Metric: 10
IGP metric: 10
Static BW: 10Mbps
Reservable BW: 10Mbps
Available BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
Interface Switching Capability Descriptor(1):
Switching type: Packet
Encoding type: Packet
Maximum LSP BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
P2P Adjacency-SID:
IPV4, SID: 16, Flags: 0x30, Weight: 0
To: R2.00(192.168.100.2), Local: 10.100.12.1, Remote: 10.100.12.2
Local interface index: 334, Remote interface index: 333
Color: 0 none
Metric: 10
IGP metric: 10
Static BW: 10Mbps
Reservable BW: 10Mbps
Available BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
Interface Switching Capability Descriptor(1):
Switching type: Packet
Encoding type: Packet
Maximum LSP BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
P2P Adjacency-SID:
IPV4, SID: 17, Flags: 0x30, Weight: 0
Prefixes:
192.168.100.1/32
Metric: 0, Flags: 0x00
Prefix-SID:
SID: 102, Flags: 0x40, Algo: 0
SPRING-Capabilities:
SRGB block [Start: 800000, Range: 4000, Flags: 0xc0]
SPRING-Algorithms:
Algo: 0
NodeID: R3.00(192.168.100.3)
Type: Rtr, Age: 435 secs, LinkIn: 1, LinkOut: 1
Protocol: IS-IS(2)
192.168.100.3
To: R2.00(192.168.100.2), Local: 10.100.23.2, Remote: 10.100.23.1
Local interface index: 336, Remote interface index: 334
Color: 0 none
Metric: 10
IGP metric: 10
Static BW: 10Mbps
Reservable BW: 10Mbps
Available BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
Interface Switching Capability Descriptor(1):
Switching type: Packet
Encoding type: Packet
Maximum LSP BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
P2P Adjacency-SID:
IPV4, SID: 16, Flags: 0x30, Weight: 0
Prefixes:
192.168.100.3/32
Metric: 0, Flags: 0x00
Prefix-SID:
SID: 103, Flags: 0x40, Algo: 0
SPRING-Capabilities:
SRGB block [Start: 800000, Range: 4000, Flags: 0xc0]
SPRING-Algorithms:
Algo: 0
NodeID: R2.00(192.168.100.2)
Type: Rtr, Age: 456 secs, LinkIn: 2, LinkOut: 2
Protocol: IS-IS(2)
192.168.100.2
To: R1.00(192.168.100.1), Local: 10.100.12.2, Remote: 10.100.12.1
Local interface index: 333, Remote interface index: 334
Color: 0 none
Metric: 10
IGP metric: 10
Static BW: 10Mbps
Reservable BW: 10Mbps
Available BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
Interface Switching Capability Descriptor(1):
Switching type: Packet
Encoding type: Packet
Maximum LSP BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
P2P Adjacency-SID:
IPV4, SID: 17, Flags: 0x30, Weight: 0
To: R3.00(192.168.100.3), Local: 10.100.23.1, Remote: 10.100.23.2
Local interface index: 334, Remote interface index: 336
Color: 0 none
Metric: 10
IGP metric: 10
Static BW: 10Mbps
Reservable BW: 10Mbps
Available BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
Interface Switching Capability Descriptor(1):
Switching type: Packet
Encoding type: Packet
Maximum LSP BW [priority] bps:
[0] 10Mbps [1] 10Mbps [2] 10Mbps [3] 10Mbps
[4] 10Mbps [5] 10Mbps [6] 10Mbps [7] 10Mbps
P2P Adjacency-SID:
IPV4, SID: 16, Flags: 0x30, Weight: 0
Prefixes:
192.168.100.2/32
Metric: 0, Flags: 0x00
Prefix-SID:
SID: 105, Flags: 0x40, Algo: 0
SPRING-Capabilities:
SRGB block [Start: 800000, Range: 4000, Flags: 0xc0]
SPRING-Algorithms:
Algo: 0
NodeID: PCE.00(11.0.0.199)
Type: Rtr, Age: 267 secs, LinkIn: 0, LinkOut: 0
Protocol: IS-IS(2)
11.0.0.199
意味
トラフィック制御データベースには、PCEがPCCの外部パスコンピューティングに使用するルーターR1、R2、およびR3からアドバタイズされたエントリが含まれています。
SR-TE LSPの検証
目的
PCCでのSR-TE LSPの作成を確認します。
アクション
動作モードから、 show path-computation-client lsp、 show spring-traffic-engineering lsp detail、 show route protocol spring-te コマンドを実行します。
user@PCC> show path-computation-client lsp Name Status PLSP-Id LSP-Type Controller Path-Setup-Type Template adj_sid_lsp (Up) 3 ext-provised pce1 spring-te node_sid_lsp (Up) 5 ext-provised pce1 spring-te
user@PCC> show spring-traffic-engineering lsp detail
Name: adj_sid_lsp
To: 192.168.100.3
State: Up, Outgoing interface: ge-0/0/5.0
Delegation info:
Control-status: Externally controlled
Routing-status: Externally routed
SR-ERO hop count: 3
Hop 1 (Strict):
NAI: IPv4 Adjacency ID, 10.100.41.1 -> 10.100.41.2
SID type: 20-bit label, Value: 16
Hop 2 (Strict):
NAI: IPv4 Adjacency ID, 10.100.12.1 -> 10.100.12.2
SID type: 20-bit label, Value: 17
Hop 3 (Strict):
NAI: IPv4 Adjacency ID, 10.100.23.1 -> 10.100.23.2
SID type: 20-bit label, Value: 16
Name: node_sid_lsp
To: 192.168.100.3
State: Up, Outgoing interface: ge-0/0/5.0
Delegation info:
Control-status: Externally controlled
Routing-status: Externally routed
SR-ERO hop count: 3
Hop 1 (Strict):
NAI: IPv4 Adjacency ID, 10.100.41.1 -> 10.100.41.2
SID type: 20-bit label, Value: 16
Hop 2 (Strict):
NAI: IPv4 Node ID, Node address: 192.168.100.1
SID type: 20-bit label, Value: 800105
Hop 3 (Strict):
NAI: IPv4 Node ID, Node address: 192.168.100.2
SID type: 20-bit label, Value: 800103
Name: static_srte_lsp_1
Tunnel-source: Static configuration
To: 192.168.100.3
State: Up
Path: static_seg_list_1
Outgoing interface: NA
Delegation info:
Control-status: Externally controlled
Routing-status: Externally routed
Auto-translate status: Disabled Auto-translate result: N/A
BFD status: Up BFD name: V4-srte_bfd_session-4
SR-ERO hop count: 2
Hop 1 (Strict):
NAI: IPv4 Adjacency ID, 13.1.1.2 -> 36.12.16.1
SID type: None
Hop 2 (Strict):
NAI: IPv4 Node ID, Node address: 192.168.100.3
SID type: 20-bit label, Value: 804000
Total displayed LSPs: 3 (Up: 3, Down: 0)
user@PCC> show route protocol spring-te
inet.0: 17 destinations, 17 routes (17 active, 0 holddown, 0 hidden)
inet.3: 3 destinations, 4 routes (3 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
192.168.100.3/32 *[SPRING-TE/8] 00:23:32, metric 0
to 10.100.41.2 via ge-0/0/5.0, Push 16, Push 17(top)
> to 10.100.41.2 via ge-0/0/5.0, Push 800103, Push 800105(top)
iso.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
mpls.0: 12 destinations, 12 routes (12 active, 0 holddown, 0 hidden)
inet6.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
意味
出力は、2つのSR-TE LSP(adj_sid_lsp と node_sid_lsp)が、それぞれ隣接セグメントとノードセグメントに対してPCEによって作成されたことを示しています。
セグメント ルーティング LSP static_srte_lsp_1、委任機能で有効にします。 Delegation info フィールドには、PCEが委任したLSPの制御およびルーティングステータスが表示されます。 Externally controlled は、PCEがLSPを制御できることを示します。 Externally routed は、PCEが送信元ルーティングパスのEROを提供したことを示します。
トンネルルート作成の検証
目的
PCCのinet.3ルーティングテーブルに含まれているSR-TE LSP用に作成されたトンネルルートを確認します。
アクション
操作モードから、 show route table inet.3 extensive コマンドを実行します。
user@PCC> show route table inet.3 extensive
inet.3: 3 destinations, 4 routes (3 active, 0 holddown, 0 hidden)
192.168.100.1/32 (1 entry, 1 announced)
*L-ISIS Preference: 14
Level: 2
Next hop type: Router, Next hop index: 581
Address: 0xb7a23b0
Next-hop reference count: 13
Next hop: 10.100.41.2 via ge-0/0/5.0, selected
Session Id: 0x172
State: Active Int
Local AS: 64496
Age: 45:51 Metric: 10
Validation State: unverified
ORR Generation-ID: 0
Task: IS-IS
Announcement bits (2): 0-Resolve tree 1 2-Resolve tree 3
AS path: I
192.168.100.3/32 (2 entries, 1 announced)
*SPRING-TE Preference: 8
Next hop type: Router, Next hop index: 0
Address: 0xb61c190
Next-hop reference count: 7
Next hop: 10.100.41.2 via ge-0/0/5.0 weight 0x1
Label operation: Push 16, Push 17(top)
Label TTL action: prop-ttl, prop-ttl(top)
Load balance label: Label 16: None; Label 17: None;
Label element ptr: 0xb7a2a60
Label parent element ptr: 0x0
Label element references: 5
Label element child references: 0
Label element lsp id: 0
Session Id: 0x0
Next hop: 10.100.41.2 via ge-0/0/5.0 weight 0x1, selected
Label operation: Push 800103, Push 800105(top)
Label TTL action: prop-ttl, prop-ttl(top)
Load balance label: Label 800103: None; Label 800105: None;
Label element ptr: 0xb7a2c40
Label parent element ptr: 0x0
Label element references: 2
Label element child references: 0
Label element lsp id: 0
Session Id: 0x0
State: Active Int
Local AS: 64496
Age: 9:44 Metric: 0
Validation State: unverified
Task: SPRING-TE
Announcement bits (2): 0-Resolve tree 1 2-Resolve tree 3
AS path: I
L-ISIS Preference: 14
Level: 2
Next hop type: Router, Next hop index: 0
Address: 0xb7a28f0
Next-hop reference count: 1
Next hop: 10.100.41.2 via ge-0/0/5.0, selected
Label operation: Push 800103
Label TTL action: prop-ttl
Load balance label: Label 800103: None;
Label element ptr: 0xb7a2880
Label parent element ptr: 0x0
Label element references: 1
Label element child references: 0
Label element lsp id: 0
Session Id: 0x0
State: Int
Inactive reason: Route Preference
Local AS: 64496
Age: 45:40 Metric: 30
Validation State: unverified
ORR Generation-ID: 0
Task: IS-IS
AS path: I
192.168.100.2/32 (1 entry, 1 announced)
*L-ISIS Preference: 14
Level: 2
Next hop type: Router, Next hop index: 0
Address: 0xb7a29b0
Next-hop reference count: 1
Next hop: 10.100.41.2 via ge-0/0/5.0, selected
Label operation: Push 800105
Label TTL action: prop-ttl
Load balance label: Label 800105: None;
Label element ptr: 0xb7a2940
Label parent element ptr: 0x0
Label element references: 1
Label element child references: 0
Label element lsp id: 0
Session Id: 0x0
State: Active Int
Local AS: 64496
Age: 45:40 Metric: 20
Validation State: unverified
ORR Generation-ID: 0
Task: IS-IS
Announcement bits (2): 0-Resolve tree 1 2-Resolve tree 3
AS path: I
意味
プロトコルラベルとしてSR-TEを使用して、PCE制御LSP宛先用のトンネルルートが作成されています。
転送テーブルエントリーの検証
目的
ルーターR3へのSR-TE LSP宛先がPCCの転送テーブルにインストールされていることを確認します。
アクション
操作モードから、 show route forwarding-table destination ip-address extensive コマンドを実行します。
user@PCC> show route forwarding-table destination 192.168.100.3 extensive
Routing table: default.inet [Index 0]
Internet:
Enabled protocols: Bridging,
Destination: 192.168.100.3/32
Route type: user
Route reference: 0 Route interface-index: 0
Multicast RPF nh index: 0
P2mpidx: 0
Flags: sent to PFE, rt nh decoupled
Nexthop: 10.100.41.2
Next-hop type: unicast Index: 581 Reference: 14
Next-hop interface: ge-0/0/5.0
Routing table: __pfe_private__.inet [Index 3]
Internet:
Enabled protocols: Bridging,
Destination: default
Route type: permanent
Route reference: 0 Route interface-index: 0
Multicast RPF nh index: 0
P2mpidx: 0
Flags: sent to PFE
Next-hop type: discard Index: 517 Reference: 2
Routing table: __juniper_services__.inet [Index 5]
Internet:
Enabled protocols: Bridging,
Destination: default
Route type: permanent
Route reference: 0 Route interface-index: 0
Multicast RPF nh index: 0
P2mpidx: 0
Flags: sent to PFE
Next-hop type: discard Index: 530 Reference: 2
Routing table: __master.anon__.inet [Index 6]
Internet:
Enabled protocols: Bridging, Dual VLAN,
Destination: default
Route type: permanent
Route reference: 0 Route interface-index: 0
Multicast RPF nh index: 0
P2mpidx: 0
Flags: sent to PFE
Next-hop type: reject Index: 545 Reference: 1
意味
ルーターR3へのSR-TE LSP宛先IPアドレスが転送エントリとしてインストールされます。
静的ルート転送のためのトンネルルートの使用の検証
目的
静的ルートが、SR-TE LSP用に作成されたトンネルルートを利用していることを確認します。
アクション
動作モードから、 show route ip-address および show route forwarding-table destination ip-address コマンドを実行します。
user@PCC> show route 100.1.1.1
inet.0: 17 destinations, 17 routes (17 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
100.1.1.1/32 *[Static/5] 00:33:36, metric2 0
> to 10.100.41.2 via ge-0/0/5.0, Push 16, Push 17(top)
to 10.100.41.2 via ge-0/0/5.0, Push 800103, Push 800105(top)
user@PCC> show route forwarding-table destination 100.1.1.1
Routing table: default.inet
Internet:
Enabled protocols: Bridging,
Destination Type RtRef Next hop Type Index NhRef Netif
100.1.1.1/32 user 0 indr 1048575 2
10.100.41.2 Push 16, Push 17(top) 590 2 ge-0/0/5.0
Routing table: __pfe_private__.inet
Internet:
Enabled protocols: Bridging,
Destination Type RtRef Next hop Type Index NhRef Netif
default perm 0 dscd 517 2
Routing table: __juniper_services__.inet
Internet:
Enabled protocols: Bridging,
Destination Type RtRef Next hop Type Index NhRef Netif
default perm 0 dscd 530 2
Routing table: __master.anon__.inet
Internet:
Enabled protocols: Bridging, Dual VLAN,
Destination Type RtRef Next hop Type Index NhRef Netif
default perm 0 rjct 545 1
意味
出力からは、ルーターR3への静的ルートが、SR-TE LSP用に作成されたトンネルルートを使用していることがわかります。
静的セグメントルーティングラベルスイッチパス
セグメントルーティングアーキテクチャにより、コアネットワーク内のingressデバイスが、明示的なパスを介してトラフィックを誘導できます。セグメントリストを使用してこれらのパスを設定し、受信トラフィックがたどるべきパスを定義できます。受信トラフィックはラベル付きトラフィックまたはIPトラフィックである可能性があり、イングレスデバイスでの転送操作はラベル交換または宛先ベースのルックアップのいずれかになります。
MPLSネットワークにおける静的セグメントルーティングLSP
送信元パケットルーティングまたはセグメントルーティングとは、コアネットワーク内のingressデバイスが、ネットワーク内の中間ノードに頼らずに、実際のパスを決定することなく、ネットワーク内の特定のノードやリンクを経由してトラフィックを誘導できるようにするコントロールプレーンアーキテクチャのことです。セグメントリストを使用してこれらのパスを設定し、受信トラフィックがたどるべきパスを定義できます。受信トラフィックはラベル付きトラフィックまたはIPトラフィックである可能性があり、イングレスデバイスでの転送操作はラベル交換または宛先ベースのルックアップのいずれかになります。
- セグメントルーティングLSPの概要
- セグメントルーティングLSPを使用するメリット
- カラー付き静的セグメントルーティングLSP
- 色なし静的セグメントルーティングLSP
- 静的セグメントルーティングLSPプロビジョニング
- 静的セグメントルーティングLSPの制限
- VPNサービスのカラーベースマッピング
- PCE開始セグメントセグメントルーティングLSP用トンネルテンプレート
セグメントルーティングLSPの概要
セグメントルーティングは、ソースルーティングパラダイムを活用します。デバイスは、セグメントと呼ばれる順序付き命令リストを介してパケットを誘導します。セグメントは、トポロジーまたはサービスベースのあらゆる指示を表すことができます。セグメントは、セグメントルーティングノードまたはセグメントルーティングドメイン内のグローバルノードに対してローカルセマンティックを持つことができます。セグメントルーティングは、セグメントルーティングドメインへのイングレスデバイスでのみフローごとの状態を維持しながら、あらゆるトポロジーパスとサービスチェーンを通るフローを強制します。セグメントルーティングは、転送プレーンを変更することなく、MPLSアーキテクチャに直接適用できます。セグメントは、MPLSラベルとしてエンコードされます。セグメントの順序付きリストは、ラベルのスタックとしてエンコードされます。処理するセグメントはスタックの一番上にあります。セグメントが完了すると、関連するラベルがスタックからポップされます。
セグメントルーティングLSPは、本質的に動的または静的のいずれかです。
|
Dynamic segment routing LSPs—セグメントルーティングLSPが外部コントローラによって作成され、PCEP(Path Computation Element Protocol)拡張を介してイングレスデバイスにダウンロードされるか、BGPセグメントルーティング拡張を介してBGPセグメントルーティングポリシーからダウンロードされると、LSPは動的にプロビジョニングされます。動的セグメントルーティングLSPのセグメントリストは、PCEP明示的ルートオブジェクト(ERO)、またはLSPのBGPセグメントルーティングポリシーに含まれています。 |
|
Static segment routing LSPs—ローカル設定によりセグメントルーティングLSPがイングレスデバイス上に作成された場合、LSPは静的にプロビジョニングされます。 静的セグメントルーティングLSPは、 次に例を示します。 [edit protocols]
source-packet-routing {
source-routing-path lsp_name {
to destination_address;
color color_value;
binding-sid binding-label;
primary segment_list_1_name weight weight;
...
primary segment_list_n_name weight weight;
secondary segment_list_n_name;
sr-preference sr_preference_value;
}
}
ここでは、各プライマリステートメントとセカンダリステートメントがセグメントリストを参照しています。 [edit protocols]
source-packet-routing {
segment-list segment_list_name {
hop_1_name label sid_label;
...
hop_n_name label sid_label;
}
}
|
セグメントルーティングLSPを使用するメリット
-
静的セグメントルーティングは、トランジットルーター上のLSPごとの転送状態に依存しません。したがって、コアのLSP転送状態ごとのプロビジョニングと維持の必要性がなくなります。
-
MPLSネットワークにより高いスケーラビリティを提供します。
カラー付き静的セグメントルーティングLSP
colorステートメントで設定された静的セグメントルーティングLSPは、カラー付きLSPと呼ばれます。
色付き静的セグメントルーティングLSPについて
BGPセグメントルーティングポリシーと同様に、色付きLSPのイングレスルートは、 inetcolor.0 または inet6color.0 ルーティングテーブルにインストールされ、IPトラフィックをマッピングするためのキーとして destination-ip-address, color されます。
静的な色付きのセグメントルーティングLSPは、 mpls.0 ルーティングテーブルにルートがインストールされているバインディングSIDを持つ場合があります。このバインディングSIDラベルは、ラベル付きトラフィックをセグメントルーティングLSPにマッピングするために使用されます。ルートのゲートウェイは、プライマリ パスとセカンダリ パスの下にあるセグメント リスト設定から派生します。
色付きセグメントセグメントルーティングLSPのセグメントリスト
色付きの静的セグメントルーティングLSPは、LSPを解決するファーストホップラベルモードのサポートをすでに提供しています。ただし、ファーストホップIPモードは、カラー付きセグメントルーティングLSPではサポートされていません。コミットチェック機能が導入され、色付きルートに寄与するすべてのセグメントリストに、すべてのホップに対して最小限のラベルが存在することを確認します。この要件が満たされない場合、コミットはブロックされます。
色なし静的セグメントルーティングLSP
colorステートメントなしで設定された静的セグメントルーティングLSPは、色なしLSPです。PCEPセグメントルーティングトンネルと同様に、イングレスルートはinet.3またはinet6.3ルーティングテーブルにインストールされます。
Junos OSは、イングレスルーターで色なしの静的セグメントルーティングLSPをサポートします。1つのソースルーティングパスと1つ以上のセグメントリストを設定することで、色なしの静的セグメントルーティングLSPをプロビジョニングできます。これらのセグメントリストは、複数の色なしセグメントルーティングLSPで使用できます。
非カラーセグメントルーティングLSPを理解する
色なしセグメントルーティングLSPは、一意の名前と宛先IPアドレスを持ちます。宛先へのイングレスルートは、デフォルトのプリファレンス値8とメトリック1のinet.3ルーティングテーブルにインストールされます。このルートでは、色なしサービスを宛先に関連するセグメントルーティングLSPにマッピングできます。色なしセグメントルーティングLSPがイングレスルートを必要としない場合は、イングレスルートを無効にすることができます。色なしセグメントルーティングLSPは、バインディングSIDラベルを使用してセグメントルーティングLSPステッチを実現します。このラベルは、階層的に他のセグメントルーティングLSPを構築するためにさらに使用できるセグメントとしてセグメントルーティングLSPをモデル化するために使用できます。バインディングSIDラベルのトランジットは、デフォルトで、優先度は8、メトリックは1です。
ingressデバイス上で静的に設定された色なしセグメントルーティングLSPは、Path Computation Element Protocol(PCEP)セッションを通じてPath Computation Element(PCE)に報告されます。これらの色のないセグメントルーティングLSPには、バインディングサービス識別子(SID)ラベルが関連付けられている場合があります。この機能により、PCEはラベルスタックでこのバインディングSIDラベルを使用して、PCE開始セグメントルーティングLSPパスをプロビジョニングできます。
色なしセグメントルーティングLSPは、最大8つのプライマリパスを持つことができます。複数の動作可能なプライマリ パスがある場合、パケット転送エンジン(PFE)は、パスに設定された重みなどのロードバランシング要因に基づいて、パス上にトラフィックを分散します。これは、どのパスにも重みが設定されていない場合は等コストマルチパス(ECMP)であり、少なくとも1つのパスにゼロ以外の重みが設定されている場合は重み付けECMPです。いずれの場合も、一方または一部のパスに障害が発生した場合、PFEは残りのパスのトラフィックのバランスを再調整し、自動的にパス保護を実現します。色なしセグメントルーティングLSPは、専用パス保護のためのセカンダリパスを持つことができます。プライマリパスに障害が発生すると、PFEは残りの機能するプライマリパスへのトラフィックのバランスを再調整します。それ以外の場合、PFEはトラフィックをバックアップパスにスイッチするため、パス保護が実現します。色なしセグメントルーティングLSPは、そのingressおよびbinding-SIDルートのメトリックを [edit protocols source-packet-routing source-routing-path lsp-name] で指定できます。複数の色なしセグメントルーティングLSPは、イングレスルートのネクストホップに寄与する同じ宛先アドレスを持っています。
複数の色なしセグメントルーティングLSPは、イングレスルートのネクストホップに寄与する同じ宛先アドレスを持っています。各セグメント ルーティング LSP の各パス(プライマリまたはセカンダリ)は、パスが機能しており、セグメント ルーティング LSP がこれらすべてのセグメント ルーティング LSP の中で最も優先される場合、ゲートウェイ候補と見なされます。ただし、ネクストホップが保持できるゲートウェイの最大数は、RPD マルチパス制限(デフォルトでは 128)を超えることはできません。余分なパスが剪定され、最初にセカンダリパス、次にプライマリパスがプルーニングされます。特定のセグメントリストは、これらのセグメントルーティングLSPによってプライマリまたはセカンダリパスとして複数回参照される場合があります。この場合、複数のゲートウェイがあり、それぞれに固有のセグメントルーティングLSPトンネルIDがあります。これらのゲートウェイは、同じ発信ラベルスタックとインターフェイスを備えていますが、別個です。色なしセグメントルーティングLSPと色付きセグメントルーティングLSPも同じ宛先アドレスを持つ場合があります。ただし、色付きセグメントルーティングLSPの宛先アドレスは宛先アドレスとカラーの両方で構築されるため、イングレスルートでは異なる宛先アドレスに対応しています。
静的な色なしセグメントルーティングLSPとPCEPで作成したセグメントルーティングLSPが共存し、同じingressルートに寄与する同じtoアドレスを持つ場合、同じ優先度を持つ場合。それ以外の場合、最適な優先度を持つセグメントルーティングLSPがルートにインストールされます。
色なしセグメントセグメントルーティングLSPのセグメントリスト
セグメントリストは、ホップのリストで構成されています。これらのホップは、SIDラベルまたはIPアドレスに基づいています。セグメントリスト内のSIDラベルの数は、セグメントリストの最大制限を超えてはなりません。LSPトンネルへの最大セグメントリストバインディングが8から128に増加し、システムあたり最大1000トンネルになります。静的セグメントルーティングLSPごとに最大128個のプライマリパスがサポートされます。セグメントリストの最大制限は、 [edit protocols source-packet-routing] 階層レベルで設定できます。
色なしの静的LSPの最初のホップは、IPアドレスに加えて、SIDラベルもサポートします。ファーストホップラベルのサポートにより、MPLS高速再ルート(FRR)と重み付け等コストマルチパスが有効になり、色付き静的LSPと同様に、静的無色セグメントルーティングLSPを解決できます。
ファーストホップラベルモードを有効にするには、セグメントリストに対してグローバルまたは個別に inherit-label-nexthops ステートメントを含める必要があり、セグメントリストの最初のホップにはIPアドレスとラベルの両方を含める必要があります。最初のホップにIPアドレスのみが含まれている場合、 inherit-label-nexthops ステートメントは効果がありません。
以下の階層のいずれかで inherit-label-nexthops を設定できます。 inherit-label-nexthops ステートメントは、セグメントリストの最初のホップにIPアドレスとラベルの両方が含まれている場合にのみ有効になります。
-
Segment list level-
[edit protocols source-packet-routing segment-list segment-list-name]階層レベル。 -
Globally-
[edit protocols source-packet-routing]階層レベル。
inherit-label-nexthopsステートメントがグローバルに設定されている場合、セグメントリストレベルの設定よりも優先され、inherit-label-nexthops設定がすべてのセグメントリストに適用されます。inherit-label-nexthopsステートメントがグローバルに設定されていない場合、最初のホップにラベルとIPアドレスの両方が存在し、inherit-label-nexthopsステートメントで設定されたセグメントリストのみがSIDラベルを使用して解決されます。
動的で色なしの静的LSP、すなわちPCEP駆動のセグメントルーティングLSPの場合、セグメントレベルの設定が適用されないため、 inherit-label-nexthops ステートメントをグローバルに有効にする必要があります。
表4は 、ファーストホップ仕様に基づくセグメントルーティングLSP解決のモードを示しています。
|
ファーストホップの仕様 |
LSP解決のモード |
|---|---|
|
IPアドレスのみ 次に例を示します。 segment-list path-1 {
hop-1 ip-address 172.16.12.2;
hop-2 label 1000012;
hop-3 label 1000013;
hop-4 label 1000014;
}
|
セグメントリストはIPアドレスを使用して解決されます。 |
|
SIDのみ 次に例を示します。 segment-list path-2 {
hop-1 label 1000011;
hop-2 label 1000012;
hop-3 label 1000013;
hop-4 label 1000014;
}
|
セグメントリストは、SIDラベルを使用して解決されます。 |
|
IPアドレスとSID( 次に例を示します。 segment-list path-3 {
hop1 {
label 801006;
ip-address 172.16.1.2;
}
hop-2 label 1000012;
hop-3 label 1000013;
hop-4 label 1000014;
}
|
デフォルトでは、セグメントリストはIPアドレスを使用して解決されます。 |
|
IPアドレスとSID( 次に例を示します。 segment-list path-3 {
inherit-label-nexthops;
hop1 {
label 801006;
ip-address 172.16.1.2;
}
hop-2 label 1000012;
hop-3 label 1000013;
hop-4 label 1000014;
}
|
セグメントリストは、SIDラベルを使用して解決されます。 |
show route ip-address protocol spring-te active-path table inet.3コマンドを使用すると、inet.3 ルーティングテーブルに複数のセグメントリストがインストールされている、色なしセグメントルーティングのトラフィックエンジニアリングLSPを表示できます。
次に例を示します。
user@host> show route 10.7.7.7 protocol spring-te active-path table inet.3
inet.3: 42 destinations, 59 routes (41 active, 0 holddown, 1 hidden)
+ = Active Route, - = Last Active, * = Both
10.7.7.7/32 *[SPRING-TE/8] 00:01:25, metric 1, metric2 0
> to 10.11.1.2 via et-0/0/0.1, Push 801007
to 10.21.1.2 via et-0/0/2.1, Push 801007
to 10.102.1.2 via et-0/0/0.2, Push 801007, Push 801002(top)
to 10.21.1.2 via et-0/0/2.2, Push 801007, Push 801005(top)
to 10.103.1.2 via et-0/0/0.3, Push 801007, Push 801003(top)
to 10.203.1.2 via et-0/0/2.3, Push 801007, Push 801006(top)
to 10.104.1.2 via et-0/0/0.4, Push 801007, Push 801003, Push 801002(top)
to 10.204.1.2 via et-0/0/2.4, Push 801007, Push 801006, Push 801005(top)
静的セグメントルーティングLSPのセグメントリストの最初のホップタイプは、次の場合にコミットを失敗させる可能性があります。
-
トンネルのセグメントリストが異なれば、ファーストホップ解決タイプも異なります。これは、色付きと色なしの両方の静的セグメントルーティングLSPに適用されます。ただし、これはPCEP駆動型LSPには適用されません。パスの計算時に、ファーストホップ解決タイプの不一致に対してシステムログメッセージが生成されます。
次に例を示します。
segment-list path-1 { hop-1 ip-address 172.16.12.2; hop-2 label 1000012; hop-3 label 1000013; hop-4 label 1000014; } segment-list path-2 { hop-1 label 1000011; hop-2 label 1000012; hop-3 label 1000013; hop-4 label 1000014; } source-routing-path lsp1 { to 172.16.10.1; primary { path-1; path-2; } }パス 1 が IP アドレス モードで、パス 2 がラベル モードであるため、トンネル lsp1 のコミットは失敗します。
-
バインディングSIDは、セグメントリストタイプがSIDラベルである色なしの静的LSPに対して有効です。
次に例を示します。
segment-list path-3 { hop-1 label 1000011; hop-2 label 1000012; hop-3 label 1000013; hop-4 label 1000014; } source-routing-path lsp1 { to 172.16.10.1; binding-sid 333; primary { path-3; } }
静的セグメントルーティングLSPプロビジョニング
セグメントプロビジョニングは、ルーターごとに実行されます。ルーター上の特定のセグメントに対して、SID(一意のサービス識別子)ラベルが、目的のラベルプールから割り当てられます。隣接SIDラベルの場合は動的ラベルプールから、またはプレフィックスSIDまたはノードSIDの場合はSRGB(セグメントルーティンググローバルブロック)からです。隣接SIDラベルは、デフォルトの動作である動的に割り当てることも、ローカルの静的ラベルプール(SRLB)から割り当てることもできます。次に、SIDラベルのルートがmpls.0テーブルにインストールされます。
Junos OSは、[edit protocols mpls static-label-switched-path static-label-switched-path]階層レベルでsegmentステートメントを設定することで、LSPの静的なセグメントルーティングを可能にします。静的セグメントLSPは、Junos OS静的ラベルプールに属する一意のSIDラベルによって識別されます。[edit protocols mpls label-range]階層レベルでstatic-label-range static-label-rangeステートメントを設定することで、Junos OS静的ラベルプールを設定できます。
静的セグメントルーティングLSPの制限
-
現在、Junos OSには、セグメントリストの深さラベルの最大数を超える量をプッシュするようにネクストホップを構築できないという制限があります。そのため、最大SIDラベル数(転送ネクストホップの解決に使用されるファーストホップのSIDラベルを除く)を超えるセグメントリストは、色付きまたは色なしのセグメントルーティングLSPには使用できません。また、MPLS サービスがセグメント ルーティング LSP 上にある場合、セグメント ルーティング LSP がリンクまたはノード保護パス上にある場合、特定のセグメント ルーティング LSP に許可される実際の数は、最大値よりもさらに低い場合があります。いずれの場合も、サービスラベル、SIDラベル、リンクまたはノード保護ラベルの合計数が、セグメントリストの最大深さを超えてはなりません。階層レベルでセグメントリストの最大制限
[edit protocols source-packet-routing]設定できます。最大SIDラベル以下の複数の色なしセグメントルーティングLSPをステッチして、より長いセグメントルーティングLSPを構築することができます。これはセグメントルーティングLSPステッチと呼ばれます。これは、binding-SIDラベルを使用して実現できます。 -
セグメントルーティングLSPステッチは、実際にはパスレベルで実行されます。色なしセグメントルーティングLSPに複数のパス、つまり複数のセグメントリストがある場合、各パスをスティッチングポイントで別の色なしセグメントルーティングLSPに独立してステッチすることができます。ステッチ専用の色なしセグメントルーティングLSPは、階層レベルで
no-ingressステートメントを設定することにより、イングレスルートのインストール[edit protocols source-packet-routing source-routing-path lsp-name]無効化できます。 -
色なし静的セグメントルーティングLSPごとに、最大128のプライマリパスと1つのセカンダリパスがサポートされます。設定に違反がある場合、コミットチェックはエラーで失敗します。
-
LSPトンネルへの最大セグメントリストバインディングが8から128に増加し、システムあたり最大1000トンネルになります。静的セグメントルーティングLSPごとに最大128個のプライマリパスがサポートされます。制限として、LSPパスの最大センサーサポートは32000のみです。
-
セグメントリストの最大深さよりも多くのラベルでセグメントリストが設定されている場合、設定コミットチェックはエラーで失敗します。
VPNサービスのカラーベースマッピング
静的な色付きLSPおよびBGPセグメントルーティングトラフィックエンジニアリング(SR-TE)LSP上のトランスポートトンネルを解決するためのプロトコルネクストホップ制約として(IPv4またはIPv6アドレスに加えて)色を指定できます。これはカラーIPプロトコルのネクストホップ解決と呼ばれ、解決マップを設定してVPNサービスに適用する必要があります。この機能により、レイヤー2およびレイヤー3VPNサービスのカラーベースのトラフィックステアリングを有効にすることができます。
Junos OSは、単色に関連付けられたカラー付きのSR-TE LSPをサポートしています。VPNサービス機能の色ベースのマッピングは、静的な色付きLSPとBGP SR-TE LSPでサポートされています。
- VPNサービスのカラーリング
- VPNサービスマッピングモードの指定
- カラーIPプロトコルネクストホップ解決
- IPプロトコルネクストホップ解決へのフォールバック
- SR-TE 上の BGP ラベル付きユニキャスト カラーベース マッピング
- VPNサービスのカラーベースマッピングでサポートされている機能とサポートされていない機能
VPNサービスのカラーリング
一般に、VPN サービスには、VPN NLRI がアドバタイズされる egressルーター、または VPN NLRI が受信および処理される ingressルーターで色が割り当てられます。
さまざまなレベルでVPNサービスに色を割り当てることができます。
-
ルーティングインスタンスごと。
-
BGPグループごと。
-
BGPネイバーごと。
-
プレフィックスごと。
カラーを割り当てると、そのカラーはBGPカラー拡張コミュニティの形でVPNサービスに添付されます。
マルチカラーVPNサービスと呼ばれる、VPNサービスに複数の色を割り当てることができます。この場合、最後に接続された色はVPNサービスの色と見なされ、それ以外の色はすべて無視されます。
複数のカラーは、以下の順序で複数のポリシーを介して、エグレスデバイスおよび/またはイングレスデバイスによって割り当てられます。
-
エグレスデバイス上のBGPエクスポートポリシー。
-
イングレスデバイス上のBGPインポートポリシー。
-
イングレスデバイス上のVRFインポートポリシー。
VPNサービスのカラーリングには、次の2つのモードがあります。
Egressカラーの割り当て
このモードでは、エグレスデバイス(つまりVPN NLRIのアドバタイザー)がVPNサービスのカラーリングを行います。このモードを有効にするには、ルーティングポリシーを定義し、[edit protocols bgp]階層レベルでVPNサービスのルーティングインスタンスvrf-export、グループエクスポート、またはグループネイバーエクスポートに適用します。VPN NLRIは、指定されたカラーの拡張コミュニティを持つBGPによってアドバタイズされます。
次に例を示します。
[edit policy-options]
community red-comm {
members color:0:50;
}
[edit policy-options]
policy-statement pol-color {
term t1 {
from {
[any match conditions];
}
then {
community add red-comm;
accept;
}
}
}
[edit routing-instances]
vpn-X {
...
vrf-export pol-color ...;
}
または
BGPグループまたはBGPネイバーのエクスポートポリシーとしてルーティングポリシーを適用する場合、ポリシーがVPN NLRIに適用されるようにするには、BGP、BGPグループ、またはBGPネイバーレベルで vpn-apply-export ステートメントを含める必要があります。
[edit protocols bgp]
group PEs {
...
neighbor PE-A {
export pol-color ...;
vpn-apply-export;
}
}
ルーティングポリシーは、レイヤー3 VPNプレフィックスNLRI、レイヤー2 VPN NRLI、およびEVPN NLRIに適用されます。カラー拡張コミュニティは、すべてのVPNルートに継承され、インポートされ、1つまたは複数のingressデバイス上のターゲットVRFにインストールされます。
イングレスカラーの割り当て
このモードでは、イングレスデバイス(つまりVPN NLRIの受信側)がVPNサービスのカラーリングを行います。このモードを有効にするには、ルーティングポリシーを定義し、それを[edit protocols bgp]階層レベルでVPNサービスのルーティングインスタンスvrf-import、グループインポート、またはグループネイバーインポートに適用します。ルーティングポリシーに一致するすべてのVPNルートは、指定されたカラーの拡張コミュニティにアタッチされます。
次に例を示します。
[edit policy-options]
community red-comm {
members color:0:50;
}
[edit policy-options]
policy-statement pol-color {
term t1 {
from {
[any match conditions];
}
then {
community add red-comm;
accept;
}
}
}
[edit routing-instances]
vpn-Y {
...
vrf-import pol-color ...;
}
または
[edit protocols bgp]
group PEs {
...
neighbor PE-B {
import pol-color ...;
}
}
VPNサービスマッピングモードの指定
柔軟なVPNサービスマッピングモードを指定するには、resolution-mapステートメントを使用してポリシーを定義し、[edit protocols bgp]階層レベルでVPNサービスのルーティングインスタンスvrf-import、グループインポート、またはグループネイバーインポートでポリシーを参照する必要があります。ルーティングポリシーに一致するすべてのVPNルートは、指定された解決マップでアタッチされます。
次に例を示します。
[edit policy-options]
resolution-map map-A {
<mode-1>;
<mode-2>;
...
}
policy-statement pol-resolution {
term t1 {
from {
[any match conditions];
}
then {
resolution-map map-A;
accept;
}
}
}
VPNサービスのルーティングインスタンスにインポートポリシーを適用できます。
[edit routing-instances]
vpn-Y {
...
vrf-import pol-resolution ...;
}
インポートポリシーは、BGPグループまたはBGPネイバーに適用することもできます。
[edit protocols bgp]
group PEs {
...
neighbor PE-B {
import pol-resolution ...;
}
}
各VPNサービスマッピングモードには、解決マップで定義された一意の名前が必要です。解決マップではIPカラーのエントリーが1つだけサポートされており、VPNルートは ip-address:color形式のカラー付きIPプロトコルネクストホップを使用して解決されます。
カラーIPプロトコルネクストホップ解決
プロトコルネクストホップ解決プロセスが強化され、カラー付きIPプロトコルネクストホップ解決がサポートされます。カラー付きVPNサービスの場合、プロトコルネクストホップ解決プロセスはカラーとresolution-mapを取り、 IP-address:color形式でカラー付きIPプロトコルネクストホップを構築し、inet6color.0ルーティングテーブルでプロトコルネクストホップを解決します。
色付きLSP上で色付きレイヤー2VPN、レイヤー3VPN、またはEVPNサービスのマルチパス解決をサポートするポリシーを設定する必要があります。その後、リゾルバーのインポートポリシーとして、関連するRIBテーブルにポリシーを適用する必要があります。
次に例を示します。
[edit policy-options]
policy-statement mpath {
then multipath-resolve;
}
[edit routing-options]
resolution {
rib bgp.l3vpn.0 {
inetcolor-import mpath;
}
}
resolution {
rib bgp.l3vpn-inet6.0 {
inet6color-import mpath;
}
}
resolution {
rib bgp.l2vpn.0 {
inetcolor-import mpath;
}
}
resolution {
rib mpls.0 {
inetcolor-import mpath;
}
}
resolution {
rib bgp.evpn.0 {
inetcolor-import mpath;
}
}
IPプロトコルネクストホップ解決へのフォールバック
色付きVPNサービスに解決マップが適用されていない場合、VPNサービスはその色を無視し、IPプロトコルのネクストホップ解決にフォールバックします。逆に、色なしVPNサービスに解決マップが適用されている場合、解決マップは無視され、VPNサービスはIPプロトコルのネクストホップ解決を使用します。
フォールバックは、LDP用のRIBグループを使用してinet{6}color.0ルーティングテーブルにルートをインストールすることで、色付きSR-TE LSPからLDP LSPへのシンプルなプロセスです。カラー付き IP プロトコルのネクストホップの最長プレフィックスマッチにより、カラー付き SR-TE LSP ルートが存在しない場合、一致する IP アドレスを持つ LDP ルートが返されます。
SR-TE 上の BGP ラベル付きユニキャスト カラーベース マッピング
BGPラベル付きユニキャスト(BGP-LU)は、IPv4とIPv6の両方のアドレスファミリーについて、セグメントルーティング-トラフィックエンジニアリング(SR-TE)を介してIPv4またはIPv6ルートを解決できます。BGP-LUは、BGPコミュニティカラーのマッピングとSR-TEの resolution map の定義をサポートします。色付きプロトコル ネクスト ホップが構築され、 inetcolor.0 テーブルまたは inet6color.0 テーブル内の色付き SR-TE トンネルで解決されます。BGPでは、非カラーベースのマッピングに inet.3 テーブルと inet6.3 テーブルを使用します。これにより、ルーターにIPv4アドレスが設定されていないIPv6のみのネットワークで、IPv6ネクストホップアドレスを持つBGP-LU IPv6およびIPv4プレフィックスをアドバタイズすることができます。この機能により、現在、IS-ISアンダーレイを使用したSR-TE上でBGP IPv6 LUをサポートしています。
図9では、コントローラはSR-TEで設定されたIPv6コアネットワークに4つの色付きのトンネルを設定します。色付きの各トンネルは、定義された解決マップに応じて、宛先ルーター D に向かう異なるパスをたどります。コントローラは、ルーター Dの2001:db8::3701:2d05インターフェイスに色付きSR-TEトンネルを設定します。BGPはポリシーをインポートして、受信したプレフィックス2001:db8::3700:6/128にカラーと解像度マップを割り当てます。割り当てられたコミュニティカラーに基づいて、BGP-LUは、割り当てられた解決マップポリシーに従って、BGP IPv6 LUプレフィックスの色付きネクストホップを解決します。
BGP-LUは、以下のシナリオをサポートします。
-
色付き BGP IPv4 SR-TE 上の BGP IPv4 LU、IS-IS/OSPF IPv4 SR 拡張
-
静的カラーおよび非カラーIPv4 SR-TE上のBGP IPv4 LU、IS-IS/OSPF IPv4 SR拡張
-
カラー付き BGP IPv6 SR-TE 上の BGP IPv6 LU、IS-IS IPv6 SR 拡張
-
静的なカラーおよび非カラーのIPv6 SR-TE上のBGP IPv6 LU、IS-IS IPv6 SR拡張
-
IPv6ローカルアドレスとIPv6ネイバーアドレスを持つIPv6レイヤー3VPNサービス。
-
IS-IS IPv6 SR拡張付き、BGP IPv6 SR-TE上でのIPv6レイヤー3VPNサービス。
-
静的カラーおよび非カラー IPv6 SR-TE 上の IPv6 レイヤー 3 VPN サービス(IS-IS IPv6 SR 拡張)。
VPNサービスのカラーベースマッピングでサポートされている機能とサポートされていない機能
VPNサービスのカラーベースのマッピングでは、以下の機能がサポートされています。
-
BGPレイヤー2VPN(Kompellaレイヤー2VPN)
-
BGP EVPN
-
単一のIPカラーオプションを備えた解像度マップ。
-
色付き IPv4 および IPv6 プロトコルのネクストホップ解決。
-
ルーティング情報ベース(ルーティングテーブルとも呼ばれる)グループベースの、inetcolor.0 ルーティングテーブル内の LDP LSP へのルーティングテーブルへのフォールバック。
-
カラー付きSR-TE LSP。
-
仮想プラットフォーム。
-
64ビットJunos OS。
-
論理システム。
-
BGPラベル付きユニキャスト。
以下の機能は、VPNサービスのカラーベースのマッピングではサポートされていません。
-
RSVP、LDP、BGP-LUなどの色付きMPLS LSP、静的。
-
レイヤー 2 回線
-
FEC-129 BGP自動検出およびLDPシグナルレイヤー2VPN。
-
VPLS
-
MVPN
-
解決マップを使用した IPv4 と IPv6
PCE開始セグメントセグメントルーティングLSP用トンネルテンプレート
PCE開始セグメントルーティングLSPのトンネルテンプレートを設定して、これらのLSPに2つの追加パラメーター(BFD(双方向転送検出)とLDPトンネリング)を渡すことができます。
PCE開始セグメントルーティングLSPが作成される場合、LSPがポリシーステートメント(存在する場合)と照合され、一致する場合は、ポリシーがそのLSPに設定されたテンプレートを適用します。テンプレート設定は、LSPソース(PCEP)から提供されていない場合にのみ継承されます。例えば、メトリックです。
テンプレートを設定するには:
-
[edit protocols source-packet-routing]階層レベルでsource-routing-path-templateステートメントを含めます。BFDおよびLDPトンネリングの追加パラメーターは、こちらで設定できます。 -
[edit protocols source-packet-routing]階層レベルでsource-routing-path-template-mapステートメントを含め、PCE開始LSPをチェックすべきポリシーステートメントをリストアップします。 -
テンプレートを適用する必要があるLSPをリストするポリシーを定義します。
fromステートメントには、lspとlsp-regexの一致条件を使用して、LSP名またはLSP正規表現のいずれかを含めることができます。これらのオプションは相互に排他的であるため、特定の時点で指定できるオプションは 1 つだけです。thenステートメントには、acceptアクションとともにsr-te-templateオプションを含める必要があります。これにより、PCE開始LSPにテンプレートが適用されます。
PCE開始LSPのテンプレートを設定する際には、以下の点に注意してください。
-
テンプレート設定は、静的に設定されたセグメント ルーティング LSP、またはその他のクライアントのセグメント ルーティング LSP には適用されません。
-
PCEPが提供する設定は、テンプレート設定よりも優先されます。
-
PCEP LSPは、テンプレートセグメントリスト設定を継承しません。
例:静的セグメントルーティングラベルスイッチパスの設定
この例では、MPLSネットワークで静的セグメントルーティングラベルスイッチパス(LSP)を設定する方法を示します。この設定により、MPLSネットワークの拡張性が向上します。
要件
この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。
-
7つのMXシリーズ5Gユニバーサルルーティングプラットフォーム
-
すべてのルーターで実行されている Junos OS リリース 18.1 以降
開始する前に、必ずデバイスインターフェイスを設定してください。
概要
Junos OS、[edit protocols source-packet-routing]階層レベルでsegment-listステートメントを設定することにより、色なしの静的セグメントルーティングトンネルのingressルーターで明示的なセグメントルーティングパスのセットを設定します。階層レベルでsource-routing-pathステートメントを設定することで、セグメントルーティングトンネルを設定する[edit protocols source-packet-routing]。セグメント ルーティング トンネルには、宛先アドレスと 1 つ以上のプライマリ パス、およびセグメント リストを参照するオプションでセカンダリ パスがあります。各セグメントリストは、一連のホップで構成されています。色なしの静的セグメント ルーティング トンネルの場合、セグメント リストの最初のホップはすぐのネクストホップの IP アドレスを指定し、2 番目から N 番目のホップは、パスが通過するリンクまたはノードに対応するセグメント識別(SID)ラベルを指定します。セグメントルーティングトンネルの宛先へのルートは、inet.3テーブルにインストールされます。
トポロジー
この例では、プロバイダエッジルーターPE1およびPE5でレイヤー3VPNを設定します。すべてのルーターで MPLS プロトコルを設定します。セグメント ルーティング トンネルは、PE1 ルーター から PE5 ルーターに設定され、ルーター PE1 と PE5 ルーターにプライマリ パスが設定されます。ルーターPE1には、パス保護用のセカンダリパスも設定されています。トランジットルーターPE2からPE4は、ラベルポップと発信インターフェイスを備えた隣接SIDラベルで構成されています。
設定
CLIクイックコンフィグレーション
この例をすばやく設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピーアンドペーストして、設定モードから commit を入力します。
PE1
set interfaces ge-0/0/0 unit 0 family inet address 10.10.12.1/24 set interfaces ge-0/0/0 unit 0 family mpls maximum-labels 5 set interfaces ge-0/0/1 unit 0 family inet address 10.10.13.1/24 set interfaces ge-0/0/1 unit 0 family mpls maximum-labels 5 set interfaces ge-0/0/5 unit 0 family inet address 10.10.17.1/24 set routing-options autonomous-system 65000 set routing-options forwarding-table export load-balance-policy set routing-options forwarding-table chained-composite-next-hop ingress l3vpn set protocols mpls interface ge-0/0/0.0 set protocols mpls interface ge-0/0/1.0 set protocols mpls label-range static-label-range 1000000 1000999 set protocols bgp group pe type internal set protocols bgp group pe local-address 192.168.147.211 set protocols bgp group pe family inet-vpn unicast set protocols bgp group pe neighbor 192.168.146.181 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 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols source-packet-routing segment-list sl-15-primary hop-1 ip-address 10.10.13.3 set protocols source-packet-routing segment-list sl-15-primary hop-2 label 1000134 set protocols source-packet-routing segment-list sl-15-primary hop-3 label 1000145 set protocols source-packet-routing segment-list sl-15-backup hop-1 ip-address 10.10.12.2 set protocols source-packet-routing segment-list sl-15-backup hop-2 label 1000123 set protocols source-packet-routing segment-list sl-15-backup hop-3 label 1000134 set protocols source-packet-routing segment-list sl-15-backup hop-4 label 1000145 set protocols source-packet-routing source-routing-path lsp-15 to 192.168.146.181 set protocols source-packet-routing source-routing-path lsp-15 binding-sid 1000999 set protocols source-packet-routing source-routing-path lsp-15 primary sl-15-primary set protocols source-packet-routing source-routing-path lsp-15 secondary sl-15-backup set policy-options policy-statement VPN-A-export term a from protocol ospf set policy-options policy-statement VPN-A-export term a from protocol direct set policy-options policy-statement VPN-A-export term a then community add VPN-A set policy-options policy-statement VPN-A-export term a then accept set policy-options policy-statement VPN-A-export term b then reject set policy-options policy-statement VPN-A-import term a from protocol bgp set policy-options policy-statement VPN-A-import term a from community VPN-A set policy-options policy-statement VPN-A-import term a then accept set policy-options policy-statement VPN-A-import term b then reject set policy-options policy-statement bgp-to-ospf from protocol bgp set policy-options policy-statement bgp-to-ospf from route-filter 10.10.0.0/16 orlonger set policy-options policy-statement bgp-to-ospf then accept set policy-options policy-statement load-balance-policy then load-balance per-packet set policy-options community VPN-A members target:65000:1 set routing-instances VRF1 instance-type vrf set routing-instances VRF1 interface ge-0/0/5.0 set routing-instances VRF1 route-distinguisher 192.168.147.211:1 set routing-instances VRF1 vrf-import VPN-A-import set routing-instances VRF1 vrf-export VPN-A-export set routing-instances VRF1 vrf-table-label set routing-instances VRF1 protocols ospf export bgp-to-ospf set routing-instances VRF1 protocols ospf area 0.0.0.0 interface ge-0/0/5.0
PE2
set interfaces ge-0/0/0 unit 0 family inet address 10.10.12.2/24 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 10.10.23.2/24 set interfaces ge-0/0/1 unit 0 family mpls set protocols mpls static-label-switched-path adj-23 segment 1000123 set protocols mpls static-label-switched-path adj-23 segment next-hop 10.10.23.3 set protocols mpls static-label-switched-path adj-23 segment pop set protocols mpls static-label-switched-path adj-21 segment 1000221 set protocols mpls static-label-switched-path adj-21 segment next-hop 10.10.12.1 set protocols mpls static-label-switched-path adj-21 segment pop set protocols mpls interface ge-0/0/0.0 set protocols mpls interface ge-0/0/1.0 set protocols mpls label-range static-label-range 1000000 1000999 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/1.0
PE3
set interfaces ge-0/0/0 unit 0 family inet address 10.10.13.3/24 set interfaces ge-0/0/0 unit 0 family mpls set interfaces ge-0/0/1 unit 0 family inet address 10.10.23.3/24 set interfaces ge-0/0/1 unit 0 family mpls set interfaces ge-0/0/2 unit 0 family inet address 10.10.34.3/24 set interfaces ge-0/0/2 unit 0 family mpls set protocols mpls static-label-switched-path adj-34 segment 1000134 set protocols mpls static-label-switched-path adj-34 segment next-hop 10.10.34.4 set protocols mpls static-label-switched-path adj-34 segment pop set protocols mpls static-label-switched-path adj-32 segment 1000232 set protocols mpls static-label-switched-path adj-32 segment next-hop 10.10.23.2 set protocols mpls static-label-switched-path adj-32 segment pop set protocols mpls interface ge-0/0/1.0 set protocols mpls interface ge-0/0/2.0 set protocols mpls label-range static-label-range 1000000 1000999 set protocols ospf area 0.0.0.0 interface ge-0/0/1.0 set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0
PE4
set interfaces ge-0/0/2 unit 0 family inet address 10.10.34.4/24 set interfaces ge-0/0/2 unit 0 family mpls set interfaces ge-0/0/3 unit 0 family inet address 10.10.45.4/24 set interfaces ge-0/0/3 unit 0 family mpls set protocols mpls static-label-switched-path adj-45 segment 1000145 set protocols mpls static-label-switched-path adj-45 segment next-hop 10.10.45.5 set protocols mpls static-label-switched-path adj-45 segment pop set protocols mpls static-label-switched-path adj-43 segment 1000243 set protocols mpls static-label-switched-path adj-43 segment next-hop 10.10.34.3 set protocols mpls static-label-switched-path adj-43 segment pop set protocols mpls interface ge-0/0/2.0 set protocols mpls interface ge-0/0/3.0 set protocols mpls label-range static-label-range 1000000 1000999 set protocols ospf area 0.0.0.0 interface ge-0/0/2.0 set protocols ospf area 0.0.0.0 interface ge-0/0/3.0
PE5
set interfaces ge-0/0/3 unit 0 family inet address 10.10.45.5/24 set interfaces ge-0/0/3 unit 0 family mpls maximum-labels 5 set interfaces ge-0/0/4 unit 0 family inet address 10.10.56.5/24 set routing-options autonomous-system 65000 set protocols mpls interface ge-0/0/3.0 set protocols mpls label-range static-label-range 1000000 1000999 set protocols bgp group pe type internal set protocols bgp group pe local-address 192.168.146.181 set protocols bgp group pe family inet-vpn unicast set protocols bgp group pe neighbor 192.168.147.211 set protocols ospf area 0.0.0.0 interface ge-0/0/3.0 set protocols ospf area 0.0.0.0 interface lo0.0 set protocols bfd sbfd local-discriminator 0.0.0.32 minimum-receive-interval 1000 set protocols source-packet-routing segment-list sl-51 hop-1 ip-address 10.10.45.4 set protocols source-packet-routing segment-list sl-51 hop-2 label 1000243 set protocols source-packet-routing segment-list sl-51 hop-3 label 1000232 set protocols source-packet-routing segment-list sl-51 hop-4 label 1000221 set protocols source-packet-routing source-routing-path lsp-51 to 192.168.147.211 set protocols source-packet-routing source-routing-path lsp-51 primary sl-51 set policy-options policy-statement VPN-A-export term a from protocol ospf set policy-options policy-statement VPN-A-export term a from protocol direct set policy-options policy-statement VPN-A-export term a then community add VPN-A set policy-options policy-statement VPN-A-export term a then accept set policy-options policy-statement VPN-A-export term b then reject set policy-options policy-statement VPN-A-import term a from protocol bgp set policy-options policy-statement VPN-A-import term a from community VPN-A set policy-options policy-statement VPN-A-import term a then accept set policy-options policy-statement VPN-A-import term b then reject set policy-options policy-statement bgp-to-ospf from protocol bgp set policy-options policy-statement bgp-to-ospf from route-filter 10.10.0.0/16 orlonger set policy-options policy-statement bgp-to-ospf then accept set policy-options community VPN-A members target:65000:1 set routing-instances VRF1 instance-type vrf set routing-instances VRF1 interface ge-0/0/4.0 set routing-instances VRF1 route-distinguisher 192.168.146.181:1 set routing-instances VRF1 vrf-import VPN-A-import set routing-instances VRF1 vrf-export VPN-A-export set routing-instances VRF1 vrf-table-label set routing-instances VRF1 protocols ospf export bgp-to-ospf set routing-instances VRF1 protocols ospf area 0.0.0.0 interface ge-0/0/4.0
CE1
set interfaces ge-0/0/0 unit 0 family inet address 10.10.17.7/24 set protocols ospf area 0.0.0.0 interface ge-0/0/0.0
CE2
set interfaces ge-0/0/4 unit 0 family inet address 10.10.56.6/24 set protocols ospf area 0.0.0.0 interface ge-0/0/4.0
デバイスPE1の設定
ステップバイステップの手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『CLIユーザーガイド』の「設定モードでのCLIエディターの使用」を参照してください。
デバイスPE1を設定するには:
-
インターフェイスを設定します。
[edit interfaces] set ge-0/0/0 unit 0 family inet address 10.10.12.1/24 set ge-0/0/0 unit 0 family mpls maximum-labels 5 set ge-0/0/1 unit 0 family inet address 10.10.13.1/24 set ge-0/0/1 unit 0 family mpls maximum-labels 5 set ge-0/0/5 unit 0 family inet address 10.10.17.1/24
-
自律システム番号とオプションを設定して、パケット転送ルーティングオプションを制御します。
[edit routing-options] set autonomous-system 65000 set forwarding-table export load-balance-policy set forwarding-table chained-composite-next-hop ingress l3vpn
-
MPLSプロトコルでインターフェイスを設定し、MPLSラベル範囲を設定します。
[edit protocols mpls] set interface ge-0/0/0.0 set interface ge-0/0/1.0 set label-range static-label-range 1000000 1000999
-
ピアグループのタイプ、ローカルアドレス、アップデート内のNLRIのプロトコルファミリー、ピアグループのネイバーのIPアドレスを設定します。
[edit protocols bgp] set group pe type internal set group pe local-address 192.168.147.211 set group pe family inet-vpn unicast set group pe neighbor 192.168.146.181
-
プロトコルエリアインターフェイスを設定します。
[edit protocols ospf] set area 0.0.0.0 interface ge-0/0/0.0 set area 0.0.0.0 interface lo0.0 set area 0.0.0.0 interface ge-0/0/1.0
-
プロトコル ソース パケット ルーティング(SPRING)のソース ルーティング トラフィック制御(TE)ポリシー用に、プライマリ パスとセカンダリ パスの IPv4 アドレスとラベルを設定します。
[edit protocols source-packet-routing segment-list] set sl-15-primary hop-1 ip-address 10.10.13.3 set sl-15-primary hop-2 label 1000134 set sl-15-primary hop-3 label 1000145 set sl-15-backup hop-1 ip-address 10.10.12.2 set sl-15-backup hop-2 label 1000123 set sl-15-backup hop-3 label 1000134 set sl-15-backup hop-4 label 1000145
-
プロトコルSPRINGの宛先IPv4アドレス、バインディングSIDラベル、プライマリ、セカンダリ送信元ルーティングパスを設定します。
[edit protocols source-packet-routing source-routing-path] set lsp-15 to 192.168.146.181 set lsp-15 binding-sid 1000999 set lsp-15 primary sl-15-primary set lsp-15 secondary sl-15-backup
-
ポリシーオプションを設定します。
[edit policy-options policy-statement] set VPN-A-export term a from protocol ospf set VPN-A-export term a from protocol direct set VPN-A-export term a then community add VPN-A set VPN-A-export term a then accept set VPN-A-export term b then reject set VPN-A-import term a from protocol bgp set VPN-A-import term a from community VPN-A set VPN-A-import term a then accept set VPN-A-import term b then reject set bgp-to-ospf from protocol bgp set bgp-to-ospf from route-filter 10.10.0.0/16 orlonger set bgp-to-ospf then accept set load-balance-policy then load-balance per-packet
-
BGPコミュニティ情報を設定します。
[edit policy-options] set community VPN-A members target:65000:1
-
インスタンスタイプ、インターフェイス、ルーター識別子、VRFインポート、エクスポート、テーブルラベルを使用して、ルーティングインスタンスVRF1を設定します。プロトコルOSPFのエリアのエクスポートポリシーとインターフェイスを設定します。
[edit routing-instances VRF1] set instance-type vrf set interface ge-0/0/5.0 set route-distinguisher 192.168.147.211:1 set vrf-import VPN-A-import set vrf-export VPN-A-export set vrf-table-label set protocols ospf export bgp-to-ospf set protocols ospf area 0.0.0.0 interface ge-0/0/5.0
結果
設定モードから、 show interfaces、 show policy-options、 show protocols、 show routing-options、 show routing-instances コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit]
user@PE1# show
interfaces {
ge-0/0/0 {
unit 0 {
family inet {
address 10.10.12.1/24;
}
family mpls {
maximum-labels 5;
}
}
}
ge-0/0/1 {
unit 0 {
family inet {
address 10.10.13.1/24;
}
family mpls {
maximum-labels 5;
}
}
}
ge-0/0/5 {
unit 0 {
family inet {
address 10.10.17.1/24;
}
}
}
}
policy-options {
policy-statement VPN-A-export {
term a {
from protocol [ ospf direct ];
then {
community add VPN-A;
accept;
}
}
term b {
then reject;
}
}
policy-statement VPN-A-import {
term a {
from {
protocol bgp;
community VPN-A;
}
then accept;
}
term b {
then reject;
}
}
policy-statement bgp-to-ospf {
from {
protocol bgp;
route-filter 10.10.0.0/16 orlonger;
}
then accept;
}
policy-statement load-balance-policy {
then {
load-balance per-packet;
}
}
community VPN-A members target:65000:1;
}
routing-instances {
VRF1 {
instance-type vrf;
protocols {
ospf {
area 0.0.0.0 {
interface ge-0/0/5.0;
}
export bgp-to-ospf;
}
}
interface ge-0/0/5.0;
route-distinguisher 192.168.147.211:1;
vrf-import VPN-A-import;
vrf-export VPN-A-export;
vrf-table-label;
}
}
routing-options {
autonomous-system 65000;
forwarding-table {
export load-balance-policy;
chained-composite-next-hop {
ingress {
l3vpn;
}
}
}
}
protocols {
bgp {
group pe {
type internal;
local-address 192.168.147.211;
family inet-vpn {
unicast;
}
neighbor 192.168.146.181;
}
}
mpls {
label-range {
static-label-range 1000000 1000999;
}
interface ge-0/0/0.0;
interface ge-0/0/1.0;
}
ospf {
area 0.0.0.0 {
interface ge-0/0/0.0;
interface lo0.0;
interface ge-0/0/1.0;
}
}
source-packet-routing {
segment-list sl-15-primary {
hop-1 ip-address 10.10.13.3;
hop-2 label 1000134;
hop-3 label 1000145;
}
segment-list sl-15-backup {
hop-1 ip-address 10.10.12.2;
hop-2 label 1000123;
hop-3 label 1000134;
hop-4 label 1000145;
}
source-routing-path lsp-15 {
to 192.168.146.181;
binding-sid 1000999;
primary {
sl-15-primary;
}
secondary {
sl-15-backup;
}
}
}
}
デバイスPE2の設定
ステップバイステップの手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『CLIユーザーガイド』の「設定モードでのCLIエディターの使用」を参照してください。
-
インターフェイスを設定します。
[edit interfaces] set ge-0/0/0 unit 0 family inet address 10.10.12.2/24 set ge-0/0/0 unit 0 family mpls set ge-0/0/1 unit 0 family inet address 10.10.23.2/24 set ge-0/0/1 unit 0 family mpls
-
プロトコル MPLS の静的 LSP を設定します。
[edit protocols mpls static-label-switched-path] set adj-23 segment 1000123 set adj-23 segment next-hop 10.10.23.3 set adj-23 segment pop set adj-21 segment 1000221 set adj-21 segment next-hop 10.10.12.1 set adj-21 segment pop
-
プロトコル MPLS のインターフェイスと静的ラベル範囲を設定します。
[edit protocols mpls] set interface ge-0/0/0.0 set interface ge-0/0/1.0 set label-range static-label-range 1000000 1000999
-
プロトコル OSPF のインターフェイスを設定します。
[edit protocols ospf area 0.0.0.0] set interface ge-0/0/0.0 set interface ge-0/0/1.0
結果
ルーター PE2の設定モードから、 show interfaces および show protocols コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit]
user@PE2# show
interfaces {
ge-0/0/0 {
unit 0 {
family inet {
address 10.10.12.2/24;
}
family mpls;
}
}
ge-0/0/1 {
unit 0 {
family inet {
address 10.10.23.2/24;
}
family mpls;
}
}
}
protocols {
mpls {
label-range {
static-label-range 1000000 1000999;
}
interface ge-0/0/0.0;
interface ge-0/0/1.0;
static-label-switched-path adj-23 {
segment {
1000123;
next-hop 10.10.23.3;
pop;
}
}
static-label-switched-path adj-21 {
segment {
1000221;
next-hop 10.10.12.1;
pop;
}
}
}
ospf {
area 0.0.0.0 {
interface ge-0/0/0.0;
interface ge-0/0/1.0;
}
}
}
検証
設定が正常に機能していることを確認します。
- ルーターPE1のルーティングテーブルinet.3のルートエントリーの検証
- ルーターPE1のルーティングテーブルmpls.0のルートテーブルエントリーの検証
- ルーターPE1のSPRINGトラフィックエンジニアリングLSPの検証
- ルーターPE1のイングレスルーターでのSPRINGトラフィックエンジニアリングLSPの検証
- ルーターPE2のルーティングテーブルmpls.0のルーティングテーブルエントリーの検証
- ルーターPE2の静的MPLS LSPセグメントのステータスの検証
ルーターPE1のルーティングテーブルinet.3のルートエントリーの検証
目的
ルーターPE1のルーティングテーブルinet.3のルートエントリーを確認します。
アクション
動作モードから、 show route table inet.3 コマンドを入力します。
user@PE1> show route table inet.3
inet.3: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
192.168.146.181/32 *[SPRING-TE/8] 03:09:26, metric 1
> to 10.10.13.3 via ge-0/0/1.0, Push 1000145, Push 1000134(top)
to 10.10.12.2 via ge-0/0/0.0, Push 1000145, Push 1000134, Push 1000123(top)
意味
出力には、セグメントルーティングトンネルのイングレスルートが表示されます。
ルーターPE1のルーティングテーブルmpls.0のルートテーブルエントリーの検証
目的
ルーティングテーブルmpls.0のルートエントリーを検証します。
アクション
動作モードから、 show route table mpls.0 コマンドを入力します。
user@PE1> 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] 03:25:52, metric 1
Receive
1 *[MPLS/0] 03:25:52, metric 1
Receive
2 *[MPLS/0] 03:25:52, metric 1
Receive
13 *[MPLS/0] 03:25:52, metric 1
Receive
16 *[VPN/0] 03:25:52
> via lsi.0 (VRF1), Pop
1000999 *[SPRING-TE/8] 03:04:03, metric 1
> to 10.10.13.3 via ge-0/0/1.0, Swap 1000145, Push 1000134(top)
to 10.10.12.2 via ge-0/0/0.0, Swap 1000145, Push 1000134, Push 1000123(top)
意味
出力には、セグメント ルーティング トンネルの SID ラベルが表示されます。
ルーターPE1のSPRINGトラフィックエンジニアリングLSPの検証
目的
イングレスルーターでSPRINGトラフィックエンジニアリングLSPを検証します。
アクション
動作モードから、 show spring-traffic-engineering overview コマンドを入力します。
user@PE1> show spring-traffic-engineering overview
Overview of SPRING-TE:
Route preference: 8
Number of LSPs: 1 (Up: 1, Down: 0)
External controllers:
< Not configured >
意味
出力には、ingressルーター上のSPRINGトラフィックエンジニアリングLSPの概要が表示されます。
ルーターPE1のイングレスルーターでのSPRINGトラフィックエンジニアリングLSPの検証
目的
ingressルーターでSPRINGトラフィックエンジニアリングLSPを検証します。
アクション
動作モードから、 show spring-traffic-engineering lsp detail コマンドを入力します。
user@PE1# show spring-traffic-engineering lsp detail
Name: lsp-15
To: 192.168.146.181
State: Up
Path: sl-15-primary
Outgoing interface: ge-0/0/1.0
BFD status: N/A (Up: 0, Down: 0)
SR-ERO hop count: 3
Hop 1 (Strict):
NAI: IPv4 Adjacency ID, 0.0.0.0 -> 10.10.13.3
SID type: None
Hop 2 (Strict):
NAI: None
SID type: 20-bit label, Value: 1000134
Hop 3 (Strict):
NAI: None
SID type: 20-bit label, Value: 1000145
Path: sl-15-backup
Outgoing interface: ge-0/0/0.0
BFD status: N/A (Up: 0, Down: 0)
SR-ERO hop count: 4
Hop 1 (Strict):
NAI: IPv4 Adjacency ID, 0.0.0.0 -> 10.10.12.2
SID type: None
Hop 2 (Strict):
NAI: None
SID type: 20-bit label, Value: 1000123
Hop 3 (Strict):
NAI: None
SID type: 20-bit label, Value: 1000134
Hop 4 (Strict):
NAI: None
SID type: 20-bit label, Value: 1000145
Total displayed LSPs: 1 (Up: 1, Down: 0)
意味
出力には、ingressルーター上のSPRINGトラフィックエンジニアリングLSPの詳細が表示されます
ルーターPE2のルーティングテーブルmpls.0のルーティングテーブルエントリーの検証
目的
ルーターPE2のルーティングテーブルmpls.0のルーティングテーブルエントリーを確認します。
アクション
動作モードから、 show route table mpls.0 コマンドを入力します。
user@PE2> show route table mpls.0
mpls.0: 8 destinations, 8 routes (8 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
0 *[MPLS/0] 03:22:29, metric 1
Receive
1 *[MPLS/0] 03:22:29, metric 1
Receive
2 *[MPLS/0] 03:22:29, metric 1
Receive
13 *[MPLS/0] 03:22:29, metric 1
Receive
1000123 *[MPLS/6] 03:22:29, metric 1
> to 10.10.23.3 via ge-0/0/1.0, Pop
1000123(S=0) *[MPLS/6] 03:22:29, metric 1
> to 10.10.23.3 via ge-0/0/1.0, Pop
1000221 *[MPLS/6] 03:22:29, metric 1
> to 10.10.12.1 via ge-0/0/0.0, Pop
1000221(S=0) *[MPLS/6] 03:22:29, metric 1
> to 10.10.12.1 via ge-0/0/0.0, Pop
ルーターPE2の静的MPLS LSPセグメントのステータスの検証
目的
ルーターPE2のMPLS LSPセグメントの状態を確認します。
アクション
動作モードから、 show mpls static-lsp コマンドを入力します。
user@PE2> show mpls static-lsp
Ingress LSPs:
Total 0, displayed 0, Up 0, Down 0
Transit LSPs:
Total 0, displayed 0, Up 0, Down 0
Bypass LSPs:
Total 0, displayed 0, Up 0, Down 0
Segment LSPs:
LSPname SID-label State
adj-21 1000221 Up
adj-23 1000123 Up
Total 2, displayed 2, Up 2, Down 0
意味
出力には、ルーターPE2の静的MPLS LSPセグメントのステータスが表示されます。
セグメントルーティングLSPの分散型CSPFの有効化
セグメントルーティングLSPの分散型CSPF(Constrained Shortest Path First)機能を使用すると、設定した制約に従って、ingressデバイス上でローカルにセグメントルーティングLSPを計算できます。この機能により、設定された制約とメトリックタイプ(トラフィックエンジニアリングまたはIGP)に基づいてLSPが最適化されます。LSP は、セグメント ルーティング ラベル スタック圧縮が有効または無効になっている状態で、宛先への利用可能な ECMP パスを利用するように計算されます。
機能エクスプローラーを使用して、特定の機能のプラットフォームとリリースのサポートを確認します。
プラットフォームに関連する注意事項については、「 プラットフォーム固有のセグメントルーティングLSP動作 」セクションを参照してください。
- 分散 CSPF 計算の制約
- 分散型CSPF計算アルゴリズム
- 分散型CSPF計算データベース
- 分散 CSPF 計算制約の設定
- 分散CSPF計算
- エニーキャスト計算
- 分散CSPF計算とSR-TE機能間の相互作用
- 分散 CSPF 計算の構成例
分散 CSPF 計算の制約
セグメントルーティングLSPパスは、設定された制約がすべて満たされた場合に計算されます。
分散CSPF計算機能は、インターネットドラフト、draft-ietf-spring-segment-routing-policy-03.txt、 セグメントルーティングトラフィックエンジニアリングポリシーで指定されている制約の以下のサブセットをサポートします。
-
管理グループの包含と除外。
-
ルーズまたはストリクトホップIPアドレスを含む。
注:ルーズまたはストリクトホップ制約で指定できるのは、ルーターIDのみです。ラベルやその他のIPアドレスは、Junos OSリリース19.2R1-S1でルーズまたはストリクトホップ制約として指定することはできません。
-
セグメントリスト内のセグメントID(SID)の最大数。
-
候補セグメントルーティングパスごとのセグメントリストの最大数。
セグメントルーティングLSPの分散CSPF計算機能は、以下のタイプの制約および導入シナリオをサポートしていません。
-
ドメイン間セグメント ルーティング トラフィック エンジニアリング(SR-TE)LSP
-
番号なしインターフェイス。
-
OSPF、IS-IS、BGP-LSなどの複数のプロトコルルーティングプロトコルを同時に有効化。
-
プレフィックスまたはエニーキャストアドレスを宛先として使用した計算。
-
制約としてインターフェイスIPアドレスを含めたり、除外したりします。
分散型CSPF計算アルゴリズム
セグメントルーティングLSPの分散CSPF計算機能は、CSPFでラベルスタック圧縮アルゴリズムを使用します。
ラベルスタック圧縮が有効
圧縮されたラベルスタックは、送信元から宛先までの一連のパスを表します。通常、ノードSIDと隣接SIDで構成されます。ラベルスタック圧縮が有効になっている場合、計算の結果は、制約に準拠しながら、スタック内の最小のSID数で、宛先までのECMPを最大化する一連のパスになります。
ラベルスタック圧縮が無効
ラベルスタック圧縮を無効にしたマルチパスCSPF計算では、宛先までのセグメントリストが最大 N 個検出されます。
-
すべてのセグメントリストのコストは、宛先に到達するための最短のトラフィックエンジニアリングメトリックと同じです。
-
各セグメントリストは、隣接SIDで構成されています。
-
Nの値は、設定により候補パスに許可されるセグメントリストの最大数です。
-
同じセグメントリストは2つとありません。
-
各セグメントリストは、設定されたすべての制約を満たします。
分散型CSPF計算データベース
SR-TE計算に使用されるデータベースには、アドバタイズノードでトラフィックエンジニアリングが有効になっているかどうかに関係なく、すべてのリンク、ノード、プレフィックス、およびそれらの特性が含まれています。言い換えれば、これは、コンピューティングノードが学習したすべてのドメインのトラフィック制御データベース(TED)とIGPリンク状態データベースの結合です。そのため、CSPF を機能させるためには、[edit protocols isis traffic-engineering]階層レベルに igp-topology ステートメントを含める必要があります。
分散 CSPF 計算制約の設定
計算プロファイルを使用して、計算制約を論理的にグループ化できます。これらの計算プロファイルは、プライマリおよびセカンダリセグメントルーティングLSPを計算するためのセグメントルーティングパスによって参照されます。
コンピュートプロファイルを設定するには、[edit protocols source-packet-routing]階層レベルでcompute-profileステートメントを含めます。
サポートされている計算制約の設定には、次のものが含まれます。
-
Administrative groups
管理者 グループ は、
[edit protocols mpls]階層レベルで設定できます。Junos OS は、セグメント ルーティング トラフィック制御(SR-TE)インターフェイスに管理グループの設定を適用します。計算制約を設定するには、一連の管理グループに 3 つのカテゴリを指定します。計算制約の設定は、すべての候補セグメント ルーティング パスに共通にすることも、個々の候補パスの下に配置することもできます。
-
include-any—リスト内の設定済み管理グループの少なくとも1つを持つリンクが、通過するパスに受け入れられることを指定します。 -
include-all—リスト内のすべての設定済み管理グループを含むリンクが、通過するパスに受け入れられることを指定します。 -
exclude—リスト内に設定された管理グループを持たないリンクが、通過するパスとして許容されることを指定します。
注:管理グループは、次のいずれかの場合にのみアドバタイズされます。-
インターフェイスでRSVPを有効にします。
-
RSVPを有効にしない場合は、
edit protocols isis traffic-engineering advertisement alwaysを設定します。
-
-
Explicit path
SR-TE候補パスを計算するための制約として、計算プロファイルで一連のルーターIDを指定できます。各ホップは IPv4 アドレスである必要があり、タイプはストリクトまたはルーズにすることができます。ホップのタイプが設定されていない場合は、strictが使用されます。明示的パス制約を指定する際には、segment-list文の下に
computeオプションを含める必要があります。 -
Maximum number of segment lists (ECMP paths)
候補パスを複数の動的セグメントリストに関連付けることができます。パスはECMPパスであり、各セグメントリストはアクティブな重みを持つネクストホップゲートウェイに変換されます。これらのパスは、圧縮の有無にかかわらず、パス計算の結果です。
この属性は、compute-profile 設定ステートメントの
maximum-computed-segment-lists maximum-computed-segment-listsオプションを使用して設定できます。この設定は、特定のプライマリおよびセカンダリLSPに対して計算されるセグメントリストの最大数を決定します。 -
Maximum segment list depth
セグメントリストの最大深度計算パラメーターは、管理グループなどの他のすべての制約を満たすECMPパスのうち、セグメントリストが最大セグメントリストの深さ以下のパスのみが使用されるようにします。このパラメーターをコンピュートプロファイルの制約として設定すると、
[edit protocols source-packet-routing]階層レベルのmaximum-segment-list-depth設定がオーバーライドされます(存在する場合)。この属性は、compute-profile設定ステートメントにある
maximum-segment-list-depth maximum-segment-list-depthオプションを使用して設定できます。 -
Protected or unprotected adjacency SIDs
指定されたSIDタイプとのリンクを回避するために 、計算プロファイル の下で保護または保護されていない隣接SIDを制約として設定できます。
保護された隣接SIDは、隣接SIDに保護用のバックアップパスがあることを示すように設定されています。この設定により、ネットワークは、リンクまたはノードの障害に対して、トポロジーに依存しないループフリーの代替(TI-LFA)の高速再ルートをサポートできます。
保護されていない隣接関係は、使用可能なバックアップ パスがないことを示すため、リンクまたはノードの障害保護を確保できません。保護された SID と保護されていない SID の両方が IGP リンクに存在し、
protectedまたはunprotected制約が適用されていない場合、計算は既定で保護されていない SID を使用します。注:protectedおよびunprotected隣接SIDのアンダーレイIGPとしてOSPFを使用して、SR-TEローカル計算をサポートします。 -
Metric type
計算に使用するリンク上のメトリックのタイプを指定できます。デフォルトでは、SR-TE LSPは、計算にリンクのトラフィックエンジニアリングメトリックを使用します。リンクのトラフィック制御メトリックは、IGPプロトコルのトラフィック制御拡張によってアドバタイズされます。ただし、コンピューティングプロファイルのメトリックタイプ設定を使用して、計算にIGPメトリックを使用することもできます。
この属性は、compute-profile 設定ステートメントの
metric-type (igp | te)オプションを使用して設定できます。
分散CSPF計算
SR-TE候補パスは、設定された制約を満たすようにローカルで計算されます。ラベルスタック圧縮が無効になっている場合、マルチパスCSPF計算結果は隣接SIDスタックのセットになります。ラベルスタック圧縮が有効になっている場合、結果は一連の圧縮されたラベルスタック(隣接するSIDとノードSIDで構成)になります。
セカンダリパスが計算される場合、プライマリパスが取るリンク、ノード、およびSRLGは計算のために回避されません。プライマリパスとセカンダリパスの詳細については、 プライマリおよびセカンダリLSPの設定を参照してください。
計算結果に失敗したLSPについては、トラフィック制御データベース(TED)の変更として計算が再試行されます。
エニーキャスト計算
エニーキャストIPをSR-TEエンドポイントおよびセグメントホップ制約として設定できます。圧縮シナリオの場合は計算結果にエニーキャストSIDを含める必要がありますが、非圧縮シナリオの場合は、すべてのエグレスノードへの隣接SIDを含める必要があります。
分散CSPF計算とSR-TE機能間の相互作用
SR-TEポリシーのパスに関連付けられた重み
ルートのネクストホップに寄与する、計算されたSR-TEパスと静的SR-パスに対して重みを設定することができます。ただし、計算が有効な1つのパスでは、複数のセグメントリストになる可能性があります。これらの計算されたセグメントリストは、相互にECMPとして扱われます。これらのセグメントには、設定された各プライマリに割り当てられた重みを考慮して、階層的なECMPの重みを割り当てることができます。
BFDライブ性検出
計算されたプライマリまたはセカンダリパスに対してBFDライブ性検出を設定できます。計算されるすべてのプライマリまたはセカンダリパスは、複数のセグメントリストになる可能性があり、その結果、セグメントリストに対して設定されたBFDパラメータが計算されたすべてのセグメントリストに適用されます。すべてのアクティブなプライマリパスがダウンすると、事前にプログラムされたセカンダリパス(提供されている場合)がアクティブになります。
継承ラベルネクストホップ
計算されたプライマリパスまたはセカンダリパスに対して[edit protocols source-packet-routing segment-list segment-list-name]階層下のinherit-label-nexthops設定はデフォルトの動作であるため、明示的に有効にする必要はありません。
自動翻訳機能
セグメントリストに自動変換機能を設定でき、自動変換機能を備えたプライマリまたはセカンダリパスはこれらのセグメントリストを参照します。一方、コンピューティング機能が有効になっているプライマリまたはセカンダリは、セグメントリストを参照できません。その結果、特定のプライマリパスまたはセカンダリパスに対して、コンピューティング機能と自動変換機能の両方を有効にすることはできません。ただし、LSP にコンピューティングタイプのプライマリパスと自動変換タイプのプライマリパスを設定することができます。
分散 CSPF 計算の構成例
例1
例1では、
-
計算されていないプライマリパスは、設定されたセグメントリストを参照します。この例では、設定されたセグメントリスト static_sl1 が参照されており、このプライマリパスの名前としても機能します。
-
計算されたプライマリには名前が設定されている必要があり、この名前は設定されたセグメントリストを参照してはなりません。この例では、 compute_segment1 は設定されたセグメントリストではありません。
-
compute_profile_redコンピューティングプロファイルは、compute_segment1という名前のプライマリパスに適用されます。
-
compute_profile_redコンピューティングプロファイルには、計算の明示的パス制約を指定するために使用されるタイプ
computeのセグメントリストが含まれています。
[edit protocols source-packet-routing]
segment-list static_sl1{
hop1 label 80000
}
segment-list exp_path1 {
hop1 ip-address 10.1.1.1 loose
hop2 ip-address 10.2.2.2
compute
}
compute-profile compute_profile_red {
include-any red
segment-list exp_path1
maximum-segment-list-depth 5
}
計算されたパスネクストホップと静的ネクストホップの重みは、それぞれ2と3です。計算パスのネクストホップが comp_nh1、 comp_nh2、 comp_nh3で、静的パスのネクストホップが static_nhであると仮定すると、重みは次のように適用されます。
|
ネクストホップ |
重量 |
|---|---|
|
comp_nh1 |
2 |
|
comp_nh2 |
2 |
|
comp_nh3 |
2 |
|
static_nh |
9 |
例2
例 2 では、プライマリ パスとセカンダリ パスの両方をコンピューティング タイプにすることができ、独自のコンピューティング プロファイルを持つことができます。
[edit protocols source-packet-routing]
compute-profile compute_profile_green{
include-any green
maximum-segment-list-depth 5
}
compute-profile compute_profile_red{
include-any red
maximum-segment-list-depth 8
}
例3
例 3 では、プライマリ パスまたはセカンダリ パスの下にコンピューティングが記載されている場合、計算の制約やその他のパラメーターなしに、宛先までのパスがローカルで計算されます。
[edit protocols source-packet-routing]
source-routing-path srte_colored_policy1 {
to 10.5.5.5
color 5
binding-sid 10001
primary {
compute_segment1 {
compute
}
}
}
例:SR-TE LSP向けCoSベースの転送およびポリシーベースのルーティングの設定
色なしセグメントルーティングトラフィックエンジニアリング(SR-TE)LSPに対して、CoSベースフォワーディング(CBF)とポリシーベースルーティング(PBR、フィルターベースフォワーディングとも呼ばれます)を有効にして、明示的なSR-TEパス上で選択的なトラフィックを誘導することができ、サービスクラスまたはポリシーに基づいてトラフィックにサービスを提供するメリットが得られます。
SR-TE LSP向けCoSベース転送とポリシーベースルーティングの概要
- SR-TE LSP向けCoSベースフォワーディング(CBF)とポリシーベースルーティング(PBR)のメリット
- CBFおよびPBRをサポートするセグメントルーティングパスソース
- SR-TE LSPにCBFとPBRを設定する際の考慮事項
SR-TE LSP向けCoSベースフォワーディング(CBF)とポリシーベースルーティング(PBR)のメリット
CBF と PBR では、次のことが可能になります。
-
セグメントルーティングトラフィックエンジニアリング(SR-TE)パスの組み合わせを使用して、コア内のサービストラフィックを誘導します。
-
選択したSR-TEパス上で解決するサポートサービスを選択します。
CBFおよびPBRをサポートするセグメントルーティングパスソース
以下のセグメント ルーティング パス ソースは、CoS ベースの転送とポリシーベースのルーティングをサポートしています。
-
Static SR–TE paths—ラベルスタック全体が静的に設定された、静的に設定されたソースルーティングパス。
-
PCEP—コントローラで作成され、PCEPセグメントルーティング拡張を介してEROで、またはBGPセグメントルーティング拡張を介してBGPセグメントルーティングポリシーにingressルーターダウンロードされたソースルーティングパスを動的にプロビジョニングします。
-
Dynamic LSPs—動的トンネルモジュールを介してトリガーされ、ラストホップERO解決を持つ動的に作成されたトンネル。
-
Auto-translated paths—自動的に変換される静的に設定されたソースルーティングパス。
SR-TE LSPにCBFとPBRを設定する際の考慮事項
覚えておいてください:
-
CBFとPBRは、静的または動的に設定された色なしのSR-TE LSPでのみ有効になります。
-
SR-TE LSP の CBF 設定と PBR 設定の両方をデバイス上で共存できます。設定の順序によって、ルートが転送されるタイプが決まります。
-
PBRの場合、SR-TE LSPのファーストホップがラベルである場合、
[edit routing-options]階層レベルにresolution preserve-nexthop-hiearchyステートメントを含める必要があります。 -
CBF のルートのクラスベース転送は、転送テーブルにのみ表示され、ルートには表示されません。
-
PBRのルートのポリシーベースの転送は、ルート上で実行され、
show routeコマンド出力に表示されます。
SR-TE LSPのCoSベース転送およびポリシーベースルーティングの設定
CoSベース転送(CBF)およびポリシーベースルーティング(PBR、フィルターベース転送FBFとも呼ばれます)は、明示的なセグメントルーティングトラフィックエンジニアリング(SR-TE)ラベルスイッチパス(LSP)を使用して、選択的なトラフィックを誘導するために使用できます。ネクストホップがファーストホップラベルまたはIPアドレスとして設定されている、色なしセグメントルーティングLSPのみが、CBFとPBRをサポートしています。
始める前に
-
色なしの SR-TE LSP で CBF と PBR を有効にするには、Junos OS リリース 20.1 以降のリリースを実行している必要があります。
-
デバイスインターフェイスを設定し、デバイスがネットワークに接続されていることを確認します。
-
セグメントリストを定義し、SR-TE LSPとそれに関連するパラメーターを設定します。
SR-TE LSPを設定するには、以下を実行します。
設定したSR-TE LSPにCBFとPBRを設定できるようになりました。
CBFを設定するには、以下を実行します
-
受信IPv4パケット、転送クラス、およびオプション値を処理するための差別化されたサービスコードポイント(DSCP)分類子を定義します。
[edit class-of-service] user@host# set classifiers dscpclassifier-name forwarding-class forwarding-class-name loss-priority level code-points [ aliases ] [ 6 bit-patterns ]
次に例を示します。
[edit class-of-service] user@host# set classifiers dscp mydscp forwarding-class af11 loss-priority low code-points 001010 user@host# set classifiers dscp mydscp forwarding-class af11 loss-priority medium-high code-points 001100 user@host# set classifiers dscp mydscp forwarding-class af11 loss-priority high code-points 001110 user@host# set classifiers dscp mydscp forwarding-class af21 loss-priority low code-points 010010 user@host# set classifiers dscp mydscp forwarding-class af21 loss-priority medium-high code-points 010100 user@host# set classifiers dscp mydscp forwarding-class af21 loss-priority high code-points 010110 user@host# set classifiers dscp mydscp forwarding-class af31 loss-priority low code-points 011010 user@host# set classifiers dscp mydscp forwarding-class af31 loss-priority medium-high code-points 011100 user@host# set classifiers dscp mydscp forwarding-class af31 loss-priority high code-points 011110 user@host# set classifiers dscp mydscp forwarding-class af41 loss-priority low code-points 100010 user@host# set classifiers dscp mydscp forwarding-class af41 loss-priority medium-high code-points 100100 user@host# set classifiers dscp mydscp forwarding-class af41 loss-priority high code-points 100110
-
送信するパケットをグループ化するための転送クラス(FC)を定義し、パケットを出力キューに割り当てます。
[edit class-of-service] user@host# set forwarding-classes queue queue-numner class-name
次に例を示します。
[edit class-of-service] user@host# set forwarding-classes queue 0 af11 user@host# set forwarding-classes queue 1 af21 user@host# set forwarding-classes queue 2 af31 user@host# set forwarding-classes queue 3 af41
-
設定した分類子をデバイスインターフェイスに割り当てます。
[edit class-of-service] user@host# set interfaces interface-name unit unit classifiers dscp classifier-name
次に例を示します。
[edit class-of-service] user@host# set interfaces ge-0/0/8 unit 1 classifiers dscp mydscp user@host# set interfaces ge-0/0/8 unit 2 classifiers dscp mydscp
-
LSPネクストホップをSR-TE LSPとして、CoSベースの転送ポリシーオプションを定義します。
[edit class-of-service] user@host# set forwarding-policy next-hop-map map-name forwarding-classes class-name lsp-next-hop source-routing-path-name
次に例を示します。
[edit class-of-service] user@host# set forwarding-policy next-hop-map my_cbf forwarding-class af11 lsp-next-hop srtelsp1 user@host# set forwarding-policy next-hop-map my_cbf forwarding-class af21 lsp-next-hop srtelsp2 user@host# set forwarding-policy next-hop-map my_cbf forwarding-class af41 lsp-next-hop srtelsp3 user@host# set forwarding-policy next-hop-map my_cbf forwarding-class af31 lsp-next-hop srtelsp4
-
ネクストホップマップ内のどの転送クラスも満たさないトラフィックを破棄します。
[edit class-of-service] user@host# set forwarding-policy next-hop-map map-name forwarding-class-default discard
次に例を示します。
[edit class-of-service] user@host# set forwarding-policy next-hop-map my_cbf forwarding-class-default discard
-
ルート フィルターに一致するルートが、map-name で指定された CoS ネクストホップ マッピングの対象となることを指定するポリシー ステートメントを設定します。
[edit policy-options] user@host# set policy-statement policy-name from route-filter destination-prefix match-type <actions> user@host# set policy-statement policy-name then cos-next-hop-map map-name
次に例を示します。
[edit policy-options] user@host# set policy-statement cbf from route-filter 4.0.0.1/16 orlonger user@host# set policy-statement cbf then cos-next-hop-map my_cbf
-
ルーティングテーブルから転送テーブルにエクスポートされるルートにポリシーを適用します。これにより、SR-TE LSPのCBFが有効になります。
[edit routing-options] user@host# set forwarding-table export policy-name
次に例を示します。
[edit routing-options] user@host# set forwarding-table export cbf
-
設定をコミットします。
user@host# commit
Verify CBF Configuration
show route forwarding-table destination ip-address vpn vpn-name extensiveコマンドを使用して、CBFの設定を確認できます。
user@host> show route forwarding-table destination 4.0.0.1 vpn vpn1 extensive Routing table: vpn1.inet [Index 8] Internet: Destination: 4.0.0.1/32 Route type: user Route reference: 0 Multicast RPF nh index: 0 P2mpidx: 0 Flags: sent to PFE Next-hop type: indirect Next-hop type: indexed Route type: idx:0 Nexthop: 11.1.1.2 Next-hop type: Push 296, Push 801007, Push 801003, Push 801002(top) Index: 807 Reference: 1 Route interface-index: 0 Index: 1048579 Reference: 10001 Index: 837 Reference: 2 Load Balance Label: None Next-hop interface: ge-0/0/1.1 Route type: idx:1 Nexthop: 11.11.1.2 Next-hop type: Push 296, Push 801007, Push 801003, Push 801002(top) Index: 809
CBFの場合、ルートのクラスベース転送は、フィルタリングされたルートが show route コマンド出力に表示されるPBRとは異なり、転送テーブルでのみ表示されます。
PBRを設定するには、以下を実行します
-
プロトコルとルート フィルターに一致するルートが LSP ネクストホップの対象となるか、転送テーブルで等価コスト マルチパス(ECMP)として負荷分散されることを指定するポリシー ステートメントを設定します。
[edit policy-options] user@host# set policy-statement policy-name from protocol protocol-name user@host# set policy-statement policy-name from route-filter destination-prefix match-type <actions> user@host# set policy-statement policy-name then install-nexthop lsp lsp-name user@host# set policy-statement policy-name then load-balance per-packet
次に例を示します。
[edit policy-options] user@host# set policy-statement pbr term 1 from protocol bgp user@host# set policy-statement pbr term 1 from route-filter 4.0.0.1/32 exact user@host# set policy-statement pbr term 1 then install-nexthop lsp srtelsp1 user@host# set policy-statement pbr term 1 then load-balance per-packet user@host# set policy-statement pbr term 1 then reject
-
ルートのプロトコルネクストホップでカスタムルート解決を実行するようにデバイスを設定します。
注:SR-TE LSP のファーストホップがラベルの場合、PBR が機能するためには
resolution preserve-nexthop-hierarchyステートメントが必須です。[edit routing-options] user@host# set resolution preserve-nexthop-hierarchy
-
ルーティングテーブルから転送テーブルにエクスポートされるルートにポリシーを適用します。これにより、SR-TE LSPのPBRが有効になります。
[edit routing-options] user@host# set forwarding-table export policy-name
次に例を示します。
[edit routing-options] user@host# set forwarding-table export pbr
-
設定をコミットします。
user@host# commit
Verify PBR Configuration
show route destination-prefixコマンドを使用して、PBR設定を確認できます。
user@host> show route 4.0.0.1
vpn1.inet.0: 10003 destinations, 10003 routes (10003 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
4.0.0.1/32 *[BGP/170] 00:24:12, localpref 100, from 7.7.7.7
AS path: 10 I, validation-state: unverified
to 11.1.1.2 via ge-0/0/1.1, Push 50983, Push 801007, Push 801003, Push 801002(top)
> to 11.11.1.2 via ge-0/0/1.2, Push 50983, Push 801007, Push 801003, Push 801002(top)
to 11.12.1.2 via ge-0/0/1.3, Push 50983, Push 801007, Push 801003, Push 801002(top)
to 11.13.1.2 via ge-0/0/1.4, Push 50983, Push 801007, Push 801003, Push 801002(top)
user@host> show route 4.0.0.1 expanded-nh extensive
vpn1.inet.0: 10003 destinations, 10003 routes (10003 active, 0 holddown, 0 hidden)
4.0.0.1/32 (1 entry, 1 announced)
Installed-nexthop:
Indr (0xc7aaa54) 7.7.7.7 Push 50983 Session-ID: 0x16f
Krt_inh (0xc745a84) Index:1048579 PNH: 7.7.7.7
Chain (0xc7aa798) Index:823 Push 50983
Router (0xc417034) 11.1.1.2 Push 801007, Push 801003, Push 801002(top) via ge-0/0/1.1
出力には、宛先プレフィックス 4.0.0.1 のすべてのネクストホップが表示されます。 expanded-nh extensive オプションには、 Krt_inh 出力フィールドの下にフィルタリングされたネクストホップが表示されます。
user@host> show route 4.0.0.2
vpn1.inet.0: 10003 destinations, 10003 routes (10003 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
4.0.0.2/32 *[BGP/170] 00:30:14, localpref 100, from 7.7.7.7
AS path: 10 I, validation-state: unverified
to 11.1.1.2 via ge-0/0/1.1, Push 569, Push 801007, Push 801003, Push 801002(top)
> to 11.11.1.2 via ge-0/0/1.2, Push 569, Push 801007, Push 801003, Push 801002(top)
to 11.12.1.2 via ge-0/0/1.3, Push 569, Push 801007, Push 801003, Push 801002(top)
to 11.17.1.2 via ge-0/0/1.8, Push 569, Push 801007, Push 801003, Push 801002(top)
user@host> show route 7.7.7.7 protocol spring-te
inet.0: 10082 destinations, 10119 routes (10082 active, 0 holddown, 0 hidden)
inet.3: 25 destinations, 77 routes (25 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both
7.7.7.7/32 *[SPRING-TE/1] 00:00:32, metric 1, metric2 4
> to 11.1.1.2 via ge-0/0/1.1, Push 801007, Push 801003, Push 801002(top)
to 11.11.1.2 via ge-0/0/1.2, Push 801007, Push 801003, Push 801002(top)
to 11.12.1.2 via ge-0/0/1.3, Push 801007, Push 801003, Push 801002(top)
to 11.17.1.2 via ge-0/0/1.8, Push 801007, Push 801003, Push 801002(top)
PBRの場合、 show route コマンド出力は、ルートのポリシーベースのフィルタリングを行います。
PCEPにおけるSR-TE LSPの複数パスの有効化
draft-ietf-pce-マルチパス-06で定義されているように、PCEP SR-TE LSP(静的設定、委任、PCE開始)に複数のパス(プライマリまたはセカンダリ)を設定できます。セカンダリパス設定は1つだけサポートされ、静的に設定されたSR-TE LSPに対してのみサポートされます。draft-ietf-pce-マルチパス-06で定義されたPCEP拡張により、PCEPはPCEPエンドポイント間のLSPに対して複数のパス(マルチパス)を伝播できます。
PCEP SR-TE LSPの複数パスのメリット
-
LSP は、宛先への複数の ERO セットを持つことができます
-
個々のEROに重みを設定してロードバランシング機能を提供
-
候補パスを定義するためのSR-TEアーキテクチャドラフトに準拠
以下のPCEPマルチパス機能がサポートされています。
-
複数パスのPCEPが有効(デフォルト)の場合、PCC設定および制御された候補パスに複数のプライマリ(または1つのセカンダリ)パスを設定できます。
-
複数パスのPCEPが無効になっている場合、候補パスには1つのプライマリパスのみを設定できます。セカンダリパス設定は許可されていません。
PCEPマルチパスを有効にすると、セグメントリスト(maximum-computed-segment-lists)の最大数を1より大きくしてcompute-profileを設定できるようになります。
複数パスのPCEPが有効な場合、PCCDはPCC制御の候補パスに制約を送信しません。
PCEPマルチパス機能が有効になっている場合、非委任PCC候補パスに対してセカンダリパス設定が許可され、セカンダリパスに固有のEXPLICIT-ROUTEオブジェクト(ERO)が、EROのバックアップフラグが設定された状態でPCEに送信されます。プライマリパスのPCRptメッセージにMULTIPATH-BACKUP-TLVは含まれません。セカンダリパスには、バックアップフラグが設定されたMULTIPATH-BACKUP-TLVが含まれます。
以下のPCEPマルチパス機能がサポートされています。
-
パス属性(PATH-ATTRIB)オブジェクトのマルチパス重み TLV(MULTIPATH-WEIGHT-TLV)
-
PCC制御のSR-TE LSP専用のパス属性(PATH-ATTRIB)オブジェクトのマルチパスバックアップTLV
-
PCEP LSPオブジェクトのマルチパスキャップTLV
-
PCEPマルチパスが無効になっている場合、SR候補パス内の複数のプライマリおよびセカンダリマルチパスを制限します
-
PCC制御LSPでPCEPマルチパスが有効な場合のSR候補パスの複数のプライマリマルチパスとセカンダリパス
-
委任された LSP および PCE 開始 LSP の SR-TE コンピューティングプロファイルの 1 を超える最大計算セグメントリスト(
max-computed-segment-lists) -
SR-TE および PCCD における PCE 開始候補パスの複数の ERO
-
SRv6 LSP
-
SR MPLS(IPv4)
-
SR MPLS(IPv4)動的トンネル
-
マルチコントローラのサポート
-
PCE開始、PCC設定および制御、および委任された色付きおよび色なし候補パスの複数のEROパス
-
以前のバージョンのParagon Pathfinderとの下位互換性。下位互換性のために、[
edit protocols pcep]階層レベルでdisable-multipath-capability設定ステートメントを設定する必要があります。 -
PCE開始候補パスの検証失敗に対するエラーコードのサポート
-
候補パスごとのサブ候補パスの合計数は127に制限されています。PCE開始LSPの場合、EROパスの数が127を超えると、SR-TEはPCCDにERRORをスローし(PCCDはPCEにPCEPエラーメッセージを送信)、対応するEROパスは拒否されます。
-
以下のPCEPエラーメッセージがサポートされています。
| エラーの種類 | エラー値 | 意味 | 使用 |
|---|---|---|---|
| 19 | 20 | バックアップ パスはサポートされていません | これは、PCCがMULTIPATH-BACKUP TLVを受信した場合に発生します。 |
| 24 | 1 | 使用できないインスタンス化パラメーター | これは、PCEが候補パスごとに127を超えるサブ候補パスを追加しようとした場合に発生します。 |
制限事項
以下のPCEP制限が適用されます。
-
draft-ietf-pce-マルチパス-06に記載されている以下のTLVはサポートされていません。
-
マルチパスバックアップTLV
-
マルチパス逆方向パス TLV
-
複合候補パス
-
-
PCEPでマルチパス機能が無効になっている場合、複数のサブ候補パスを設定することはできません。ただし、マルチパス機能のない Junos デバイス(22.4R1 より前の Junos OS バージョン)では、複数のサブ候補パス設定が許可されます。PCEPマルチセグメントが有効になっている場合(デフォルト)、レポートの目的でPCC制御LSPに複数のプライマリパスが許可されます。ただし、PCEPマルチセグメントが有効な場合、委任された候補パスでは1つのプライマリパスしかサポートされません。
-
PCC設定および制御されたSR-MPLSおよびSRv6候補パス(単一または複数のプライマリ設定)については、管理グループやその他の制約はPCEに通知されません。委任された候補パスとPCEが開始した候補パスには影響はありません。
-
PCEPマルチパス機能が有効な場合、非委任候補パスに対してセカンダリパス設定が許可されます。PCEPマルチパス機能が無効になっている場合、セカンダリパス設定は許可されません。
-
候補パスに、PCE開始LSPと委任LSPを混在させることはできません。
-
PCE開始の色付き候補パスの複数のサブ候補パスはサポートされていません。
-
候補パスに複数のサブ候補パスを持つ代理フィーチャはサポートされていません。
設定
PCCDがLSPオブジェクトでマルチパス機能TLVを送信して、特定の候補パスに対して計算されたセグメントリストの最大数を通知できるようにするには、[edit protocols pcep]階層レベルにpropagate-max-segmentlist設定ステートメントを含めます。デフォルトでは、TLVはLSPオブジェクトで送信されません。
user@host# set protocols pcep propagate-max-computed-segmentlist;
すべてのPCEに対してPCEPマルチ機能セッションを無効にするには、[edit protocols pcep]階層レベルでdisable-multipath-capability設定ステートメントを含めます。
user@host# set protocols pcep disable-multipath-capability;
[edit protocols]
pcep {
disable-multipath-capability;
propagate-max-segmentlist;
}
診断には、以下のプロトコル トレース オプションを有効にできます。
-
user@host# set protocols pcep traceoptions… -
user@host# set protocols pcep pce pce1 traceoptions… -
user@host# set protocols source-packet-routing traceoptions
以下のshowコマンドを使用して、PCC内のLSPの状態を表示できます。
-
user@host> show path-computation-client lsp—パス計算クライアント(PCC)が認識しているラベルスイッチパス(LSP)の状態を表示します。 -
user@host> show path-computation-client lsp extensive—既知の各LSP(ポイントツーポイントおよびポイントツーマルチポイントLSP)に関する広範なレベルの出力を表示します。 -
user@host> show path-computation active-pce—セッション内のマルチパスのステータスを表示します。 -
user@host> show spring-traffic-engineering lsp detail—SPRINGトラフィックエンジニアリングのイングレス詳細を表示します。
PCEPセッションのトランスポート層セキュリティを有効にする
トランスポート層セキュリティ(TLS)は、ピア認証、メッセージ暗号化、および整合性をサポートします。RFC 8253で定義されているように、パス計算クライアント(PCC)でTLSを有効にして、パス計算要素(PCE)とのTCP接続を確立できます。これにより、PCEPメッセージを転送するためのセキュアなPCEPセッション(PCEPS)が作成されます。
このドキュメントでは、TLS手順の開始、TLSハンドシェイクメカニズム、ピア認証のためのTLSメソッドなど、PCEPセッションでTLSを有効にしてPCEとの対話を保護する方法について説明します。TLSを介したPCEPのセキュアなトランスポートは、PCEPSとも呼ばれます。
- PCEPセッションでTLSを有効にするメリット
- パス計算クライアント(PCC)でのTLSの有効化
- 公開鍵基盤(PKI)を使用した証明書の更新
- TLS接続の確立
- 基本的なTLSハンドシェイクメカニズムを理解する
- PCEP セッションの TLS の診断と検証
- 出力例
PCEPセッションでTLSを有効にするメリット
-
スプーフィング(PCCまたはPCEなりすまし)、スヌーピング(メッセージ傍受)、改ざん、サービス拒否などの攻撃からPCEPセッションを保護します。
-
TLSセキュリティのメリットを活用します。
パス計算クライアント(PCC)でのTLSの有効化
PCCでTLSを有効にし、PCEPSセッションを確立するには、[edit protocols pcep]階層レベルでtls-strictCLIステートメントを設定します。
tls-strict設定ステートメントを有効にすると、以下のイベントが発生します。
-
PCEPセッションフラップ。既存のTCP接続はすべて終了し、TLSを使用して再接続が行われます。
-
PCCはPCEとのTCP接続を確立します。
-
TLS手順は、PCEからPCCへ、およびPCCからPCEへのStartTLSメッセージによって開始されます。PCCからStartTLSメッセージが送信され、StartTLSWaitタイマーが開始されます。[
edit protocols pcep pce pce-id] 階層レベルでstart-tls-wait-timer secondsCLI ステートメントを設定することで、StartTLSWait タイマーを設定できます。注:StartTLSWait タイマーの推奨値は 60 秒であり、OpenWait タイマーより小さくてはなりません。デフォルトのOpenWaitタイマー値は60秒に設定されています。
-
StartTLSメッセージではなくOpenメッセージをPCCが受信した場合、Error-Typeが1(PCEPセッション確立失敗)に設定され、Error-valueが1に設定されているPCErrメッセージ(無効なOpenメッセージまたは非Openメッセージの受信)が、TCPセッションが閉じられます。
-
PCEからStartTLSメッセージを受信しない場合、StartTLSWaitタイマーが終了した後、PCCはError-Typeを25(PCEP StartTLS失敗)およびError-valueを5に設定(StartTLSWaitタイマーの有効期限が切れる前にStartTLSメッセージなし(PCErr/Openも))のPCErrメッセージを送信し、TCPセッションは閉じられます。
-
-
TLS接続のネゴシエーションと確立が行われます。
-
PCEPメッセージの交換は、RFC5440に従って開始されます。
[edit protocols pcep]階層レベルでtls-strictCLIステートメントを有効にしない場合、PCEPセッションの確立中に、OpenメッセージではなくStartTLSメッセージがPCCによって受信されると、Error-Typeが1に設定されているPCErrメッセージ(PCEPセッション確立失敗)およびError-valueが1に設定されているPCErrメッセージ(無効なOpenメッセージまたは非Openメッセージの受信)、 その後、TCPセッションは閉じられます。
PCEPSセッションを正常に確立するには、PCCとPCEの両方でTLSを有効にする必要があります。
公開鍵基盤(PKI)を使用した証明書の更新
PKIは、証明書の有効期限についてPCCに通知しません。次のCLIコマンドを使用して、証明書を手動で更新する必要があります。この方法では、証明書の有効期限を追跡する必要があります。
user@host> request security pki local-certificates re-enroll certificate id
TLS接続の確立
次の手順では、TLS 接続(TLS v1.2 を使用)を確立する方法について説明します。
-
ノード(Junos OSデバイス/pceサーバー)の証明書を生成します。以下のいずれかの方法を使用して証明書を生成できます。
-
方法1:デバイス上でキーペアとCSRを生成し、このCSRをCAに送信して証明書を取得します。証明書が発行されると、ボックスにコピーされ、インストールされます。
-
方法2 — キーペアと証明書をそのまま生成します。証明書と秘密キーの両方がデバイスにコピーされ、一緒にインストールされます。
-
-
PCC に認定機関 (CA) を読み込んで、読み込まれた CA に対して PCE サーバー証明書を検証できるようにします。
user@host# set security pki ca-profile pccd-tls ca-identity pccd-tls user@host# commit
user@host> request security pki ca-certificate load ca-profile pccd-tls filename /var/tmp/ca.crt
注:CA は、独立した CA としてフラット階層に読み込むことができます。CA が別の CA のサブ CA である場合、チェーンは PKI によって内部的に構築されます。
注:サーバー証明書はCAによって署名されている必要があります。自己署名証明書は許可されていません。
-
PCCでTLSを有効にします。
-
PCEPセッションは、TLSハンドシェイクメカニズムを使用してTLS上で確立されます。
-
PCEサーバーは、TLS経由で受信PCC接続要求についてポート4189をリッスンします。
-
PCCは、宛先ポート4189への接続要求を開始します。
-
3 ウェイ ハンドシェイクが完了すると、TLS ハンドシェイクは証明書の使用から開始され、一方向認証が行われます(PCC がサーバー証明書を認証します)。サーバーとクライアントの両方が、StartTLSメッセージを受信するStartTLSWait時間を待ちます。StartTLSWait タイマーを設定するには
start-tls-wait-timer secondsCLI ステートメントを [edit protocols pcep pce pce-id] 階層レベルで設定します。注:StartTLSWait タイマーの推奨値は 60 秒であり、OpenWait タイマーより小さくてはなりません。デフォルトのOpenWaitタイマー値は60秒に設定されています。
-
TLSハンドシェイクセッションが成功した後、PCCとPCEがTLS上でPCEPセッション確立を開始し、その間にセッションパラメーターがネゴシエートされます。
-
証明書の検証に失敗した場合、PCCはTCP接続を終了します。
-
-
PCEPメッセージは、アプリケーションデータとしてTLS接続を介して送信されます。
-
暗号化と復号化は、TLSハンドシェイクが成功した後、PCCとPCEの両方で行われます。
-
PCEPセッションが閉じられると、TLSセッションが削除されます。
進行中のPCEP over TLSセッション中に証明書の有効期限切れ、失効、または再読み込みが発生した場合、進行中のセッションは影響を受けません。
基本的なTLSハンドシェイクメカニズムを理解する
ハンドシェイクは、サーバーとクライアント間で交換される一連のメッセージです。ハンドシェイクの正確な手順は、鍵交換アルゴリズムや暗号スイートなどによって異なります。基本的なTLSハンドシェイクメカニズムの手順は次のとおりです。
-
クライアントハロー—クライアントはこのメッセージを送信してハンドシェイクを開始します。このメッセージには、TLSバージョン、サポートされている暗号化アルゴリズムまたは暗号スイートのリスト、その他のクライアントの詳細が含まれています。
-
サーバー Hello—サーバーは、サーバー Hello メッセージを送信してクライアント Hello に応答します。このメッセージには、サーバー証明書、選択した暗号化アルゴリズム、セッションID、サーバーの公開キーが含まれています。
-
認証—クライアントはバックグラウンドで、証明書を発行した設定された認証局を使用してサーバーの証明書を検証します。検証に成功すると、クライアントはサーバーが正規であることを確認し、対話を続行します。
-
オプションのクライアント証明書—サーバーがサーバーHelloメッセージでクライアントに証明書を要求した場合、クライアントはクライアント証明書を送信します(相互TLSの場合のみ)。
-
クライアントキー交換—クライアントは、サーバーの公開キー(サーバーHelloメッセージで取得)で暗号化された秘密キーを送信します。
-
秘密キーの復号化—サーバーはプライベートキーを使用して秘密キーを復号化します。
-
クライアント完了—クライアントは、共有秘密鍵で暗号化された終了メッセージを送信し、ハンドシェイク完了を通知します。
-
サーバー終了—サーバーは、共有秘密鍵で暗号化された終了メッセージを返し、ハンドシェイク完了を通知します。
-
メッセージ交換—ハンドシェイク完了後のメッセージは対称的に暗号化されます。
PCEP セッションの TLS の診断と検証
診断には、以下のtraceoptions CLIステートメントを使用します。
user@host# set protocols pcep traceoptions … user@host# set protocols pcep pce pce-id traceoptions … user@host# set protocols source-packet-routing traceoptions
以下の設定を使用してPKIログを有効にし、次から同じファイルをキャプチャします。 /var/log/<filename>
user@host# set security pki traceoptions file <filename> user@host# set security pki traceoptions flag all sss
次のコマンドを使用して、ロードされたCA証明書を確認します。
user@host> show security pki ca-certificate detail
出力例
以下に、コマンドの出力例 show path-computation-client statistics を示します。
user@host> show path-computation-client statistics
Warning: License key missing; requires 'PCEP' license
PCE ns1
--------------------------------------------
General
PCE IP address : 192.168.18.1
Local IP address : 190.168.18.101
Priority : 0
PCE status : PCE_STATE_UP
Session type : PCE_TYPE_STATEFULACTIVE
LSP provisioning allowed : On
P2MP LSP report allowed : On
P2MP LSP update allowed : On
P2MP LSP init allowed : On
Session SRv6 Capable : No
PCE-mastership : main
PCE Traffic Steering : Off
PCC TLS Enabled : Yes
PCE TLS Enabled : Yes
Session TLS Enabled : Yes
Counters
PCReqs Total: 0 last 5min: 0 last hour: 0
PCReps Total: 0 last 5min: 0 last hour: 0
PCRpts Total: 0 last 5min: 0 last hour: 0
PCUpdates Total: 0 last 5min: 0 last hour: 0
PCCreates Total: 0 last 5min: 0 last hour: 0
Timers
Local Keepalive timer: 0 [s] Dead timer: 0 [s] LSP cleanup timer: - [s]
Remote Keepalive timer: 0 [s] Dead timer: 0 [s] LSP cleanup timer: - [s]
Errors
PCErr-recv
PCErr-sent
PCE-PCC-NTFS
PCC-PCE-NTFS
Pcupdate empty ero action counters
Send-err : 0
Tear down path : 0
Routing decision : 0
Routing decision failed: 0
このサンプル出力には、次の情報が記載されています。
-
TLSはPCCで有効になっています。
-
PCEはTLS対応です。
-
TLSセッションが確立されます。これは、PCEサーバー証明書が有効であることも示しています。
-
PCEPSセッションのステータスは稼働中です。
PCEPでのパス最適化と計算されたメトリックのレポート
PCEPのメトリックオブジェクトは、いくつかの目的で使用されます。メトリックオブジェクトは、パスの最適化に使用されるメトリックタイプを示します。メトリックオブジェクトは、パスが許容可能と見なされるためには超えてはならないパスコストの限界も示します。メトリックオブジェクトは、計算されたメトリックも示します。
パス最適化(内部ゲートウェイプロトコル、トラフィックエンジニアリング、パス遅延)のためのメトリックオブジェクトと、RSVPおよびSR-TE LSPの計算されたメトリックのレポートをサポートします。
パス最適化と計算されたメトリックのレポート用のメトリックオブジェクトは、SRv6-TE LSPには適用されません。
PCEPでパス最適化と計算されたメトリックをレポートするメリット
-
PCCで設定されたパス最適化メトリックのレポートは、PCEがパス計算に使用される制約を認識するのに役立ちます。
-
計算されたメトリックをPCEに報告します。これは、LSPにさらなる最適化が必要かどうかをPCEが分析するのに役立ちます。
最適化メトリックを理解する
次のセクションでは、PCEPにおけるRSVPおよびSR-TE(SR MPLS)LSPの意図された最適化メトリックと実際の最適化メトリックについて説明します。
- ローカルで作成されたRSVP LSP
- 委任されたRSVP LSP
- PCE開始RSVP LSP
- 委任されたSR-TE LSP
- PCE主導のSR-TE LSP
- PCRptメッセージでの最適化メトリックの送信
- PCRptメッセージで計算されたメトリックを送信する
- ルートメトリックの後方非互換性
ローカルで作成されたRSVP LSP
ローカルで作成されたRSVP LSPをメトリックで最適化するには、設定されたメトリックがPCEPを通じて報告されるように、最適化メトリック(IGP、TE、パス遅延)を設定します。計算されたメトリックは、PCRptメッセージを介してPCEPで実際のメトリックとして送信されます。
委任されたRSVP LSP
委任されたRSVP LSPの最適化メトリックを報告するには、最適化メトリック(IGP、TE、パス遅延)を設定します。
目的とするメトリック:
-
LSPの委任時に最適化メトリックが設定されると、PCRptメッセージを介してPCEに情報が送信されます。
-
LSPの委任後に最適化メトリックを設定すると、LSP制御ステータスがローカル制御になったときに、変更がLSPに適用されます/PCEに通信されます。
-
PCUpd メッセージを受信したときに、メッセージに最適化メトリックが存在する場合、LSP 制御ステータスが外部制御されるまで、そのメトリックは後続の PCRpt メッセージで意図したメトリックとして使用されます。
-
PCUpd メッセージを受信したときに、最適化メトリックがメッセージに存在しない場合、後続の PCRpt メッセージには意図したメトリックが含まれません。
-
LSP 制御ステータスがローカル制御に変わると、Junos CLI から設定された最適化メトリックが PCRpt メッセージ内の意図されたメトリックになります。
実際のメトリック:
-
LSPを委任している間、PCRptメッセージには実際のメトリックは含まれません。
-
PCUpdメッセージを受信したときに、計算されたメトリックがメッセージに存在する場合、LSP制御ステータスが外部制御されるまで、メトリックは後続のPCRptメッセージで実際のメトリックとして使用されます。
-
PCUpd メッセージを受信したときに、計算されたメトリックがメッセージに存在しない場合、後続の PCRpt メッセージには実際のメトリックは含まれません。
-
LSP 制御ステータスがローカル制御に変わると、PCC によって計算されたメトリックが実際のメトリックとしてPCRptメッセージに送信されます。
PCE開始RSVP LSP
PCE開始RSVP LSPの最適化メトリックを報告するには、テンプレートで最適化メトリック(IGP、TE、パス遅延)を設定します。LSP制御ステータスがローカル制御になった時点で、テンプレートがPCE開始LSPに適用されます。
目的とするメトリック:
-
PCE開始LSPが最適化メトリックを持つテンプレートにマッピングされると、LSP制御ステータスがローカル制御に変わると、設定がLSPに適用されPCEに送信されます。
-
PCInit/PCUpd メッセージを受信したときに、最適化メトリックがメッセージに存在する場合、LSP 制御ステータスが外部で制御されるまで、メトリックは後続の PCRpt メッセージで意図したメトリックとして使用されます。
-
PCInit/PCUpd メッセージを受信したときに、最適化メトリックがメッセージに存在しない場合、後続の PCRpt メッセージには意図したメトリックが含まれません。
-
LSP 制御ステータスがローカル制御されると、テンプレートに存在する最適化メトリックが PCRpt メッセージ内の意図されたメトリックとして使用されます。
実際のメトリック:
-
PCInit/PCUpdメッセージを受信したときに、計算されたメトリックがメッセージに存在する場合、LSP制御ステータスが外部制御されるまで、メトリックは後続のPCRptメッセージで実際のメトリックとして使用されます。
-
PCInit/PCUpd メッセージを受信したときに、計算されたメトリックがメッセージに存在しない場合、後続の PCRpt メッセージには実際のメトリックは含まれません。
-
LSP 制御ステータスがローカル制御に変わると、PCC によって計算されたメトリックが実際のメトリックとしてPCRptメッセージに送信されます。
委任されたSR-TE LSP
委任されたSR-TE(SR MPLS)LSPの最適化メトリックを報告するには、最適化メトリック(IGP、TE、パス遅延)を設定します。また、委任されたSR-TE LSPの帯域幅と予約優先度を報告することもできます。
目的とするメトリック:
-
LSP の委任時に最適化メトリックが設定されると、PCRpt メッセージを介して情報が PCE に送信されます。
-
LSPの委任後に最適化メトリックを設定すると、LSP制御ステータスがローカル制御になったときに、変更がLSPに適用されます/PCEに通信されます。
-
PCUpd メッセージを受信したときに、メッセージに最適化メトリックが存在する場合、LSP 制御ステータスが外部制御されるまで、そのメトリックは後続の PCRpt メッセージで意図したメトリックとして使用されます。
-
PCUpd メッセージを受信したときに、最適化メトリックがメッセージに存在しない場合、後続の PCRpt メッセージには意図したメトリックが含まれません。
-
LSP 制御ステータスがローカル制御に変わると、Junos CLI から設定された最適化メトリックが PCRpt メッセージ内の意図されたメトリックになります。
-
コンピューティングプロファイルで設定された帯域幅と予約優先度は、LSPが委任された場合にPCRptメッセージにも報告されます。
-
PCUpd メッセージで帯域幅または優先度の値が更新された場合、PCC は受信した値を、LSP が外部制御されている間に、後続の PCRpt メッセージで意図したメトリックとして報告します。
-
帯域幅または優先度の値がPCUpdメッセージに存在しない場合、後続のPCRptメッセージは値を
0として伝送します。 -
LSP 制御ステータスがローカル制御に変わると、帯域幅と優先度が
0にリセットされます。
実際のメトリック:
-
作成後にLSPを委任する場合、LSP委任時にLSPに1 EROがある場合、IGP、TE、遅延メトリックの計算値が実際のメトリックとしてPCRptメッセージに送信されます。
-
作成後にLSPが委任された場合、LSP委任時にLSPに複数のEROがある場合、PCEPでは実際のメトリックを(EROごとではなく)LSPごとに送信する必要があるため、計算されたメトリック/実際のメトリックはPCRptメッセージに送信されません。
-
PCUpdメッセージを受信したときに、計算されたメトリックがメッセージに存在する場合、LSP制御ステータスが外部制御されるまで、メトリックは後続のPCRptメッセージで実際のメトリックとして使用されます。
-
PCUpd メッセージを受信したときに、計算されたメトリックがメッセージに存在しない場合、後続の PCRpt メッセージには実際のメトリックは含まれません。
-
LSP 制御ステータスがローカル制御に変更されると、PCC で計算された IGP、TE、遅延メトリックが実際のメトリックとしてPCRptメッセージに送信されます。
-
PCUpdメッセージで帯域幅を受信した場合、LSPが外部制御されている間、受信した値は後続のPCRptメッセージで実際の帯域幅として報告されます。存在しない場合、最後に報告された値は、制御が変更されるまで保持されます。委任時に、実際の帯域幅は
0に設定されます。LSP がローカルで制御されると、実際の帯域幅は0にリセットされます。 -
設定優先度と保留優先度の値がPCUpdメッセージで受信された場合、LSPが外部制御されたままである間、受信した値は後続のPCRptメッセージで実際のメトリックとして報告されます。存在しない場合、値は
0として報告されます。LSP がローカルで制御されるようになると、両方の優先度が0にリセットされます。
PCE主導のSR-TE LSP
PCInit/PCUpd メッセージで PCE によって送信された意図されたメトリックまたは実際のメトリックは、LSP が外部で制御されるまで、PCRpt メッセージを介して PCE に報告されます。Junos OSは、PCE開始SR-TE LSPの帯域幅と予約優先度も報告します。
目的とするメトリック:
-
PCInit/PCUpd メッセージを受信したときに、最適化メトリックがメッセージに存在する場合、LSP 制御ステータスが外部で制御されるまで、メトリックは後続の PCRpt メッセージで意図したメトリックとして使用されます。
-
PCInit/PCUpd メッセージを受信したときに、最適化メトリックがメッセージに存在しない場合、後続の PCRpt メッセージには意図したメトリックが含まれません。
-
LSP制御ステータスがローカル制御状態になると、意図したメトリックは送信されません。
-
帯域幅または予約優先度の値がPCInit/PCUpdメッセージに含まれている場合、PCCはLSPが外部制御されたままである間、後続のPCRptメッセージでそれらの値を意図したメトリックとして報告します。
-
帯域幅または予約優先度の値がPCInit/PCUpdメッセージに存在しない場合、PCCは両方の値を
0として報告します。 -
LSP がローカルで制御されると、両方の値が
0にリセットされます。
実際のメトリック:
-
PCInit/PCUpdメッセージを受信したときに、計算されたメトリックがメッセージに存在する場合、LSP制御ステータスが外部制御されるまで、メトリックは後続のPCRptメッセージで実際のメトリックとして使用されます。
-
PCInit/PCUpd メッセージを受信したときに、計算されたメトリックがメッセージに存在しない場合、後続の PCRpt メッセージには実際のメトリックは含まれません。
-
LSP 制御ステータスが「ローカル制御」に変わると、後続の PCRpt メッセージには実際のメトリックは含まれません。
-
PCInit/PCUpd メッセージに帯域幅値が存在する場合、LSP が外部制御されたままである間、PCRpt メッセージでは実際の帯域幅として報告されます。存在しない場合、既存の帯域幅はLSPがローカルで制御されるまで変更されません。その時点で
0にリセットされます。 -
設定優先度と保留優先度の値がPCInit/PCUpdメッセージに含まれている場合、PCCはLSPが外部制御されたままである間、後続のPCRptメッセージで実際のメトリックとして報告します。存在しない場合、値は
0として報告されます。LSP がローカルで制御されるようになると、両方が0にリセットされます。
PCRptメッセージでの最適化メトリックの送信
最適化メトリックは、PCRptメッセージ内の intended-attributes-list を介してPCEに送信されます。メトリック値は0に設定され、B、Cフラグは0に設定されます。メトリックタイプは、最適化するメトリックを示します。
PCRptメッセージで計算されたメトリックを送信する
計算されたメトリックは、PCRptメッセージ内の actual-attributes-list を介してPCEに送信されます。メトリック値は計算されたメトリック値であり、メトリックタイプは計算されたメトリックタイプを示します。B フラグは 0 に設定され、C フラグは 1 に設定されます。
ルートメトリックの後方非互換性
ルートメトリックはベンダーTLVを使用してサポートされているため、PCCは、NorthstarおよびParagon Pathfinderの古いリリースをサポートするジュニパーPCEによってメトリックオブジェクトで送信されたルートメトリックを処理しません。
LSP の最適化メトリックの設定
RSVP LSP と SR-TE LSP の最適化メトリック(IGP、TE、パス遅延)を設定できます。
RSVP LSP のIGP、TE、およびパス遅延の最適化メトリックを設定するには、[edit protocols mpls label-switched-path <lsp-name>] 階層レベルで metric-type <igp|te|delay|delay minimum> CLI ステートメントを含めます。
SR-TE LSPのIGP、TE、およびパス遅延最適化メトリックを設定するには、[edit protocols source-packet-routing compute-profile <compute-profile-name>]階層レベルでmetric-type <igp|te|delay|delay minimum>CLIステートメントを含めます。
出力例
show path-computation-client lspおよびshow path-computation-client lsp extensiveCLIコマンドを使用して、パス計算クライアント(PCC)が認識するラベルスイッチパス(LSP)の状態を表示できます。
以下は、 show path-computation-client lsp extensiveの出力例です。
user@host> show path-computation-client lsp extensive name sr_lsp
LSP Name : sr_lsp
PathName : -
From : 192.168.1.101
To : 192.168.1.106
Path Setup Type : spring-te
State : Up
Active Path : Yes
Link Protection : none
LSP Type : ext-provised
P2mp tree : NULL
Path cspf status : external_cspf
Controller : ns1
Template : NULL
PLSP-ID : 31
LSP-ID : 0
RSVP Error : 0x0
Requested AutoBw : 0bps
Record Route : (Label=299792)
From PCE ERO (received) : (Label=299792)
From RPD ERO (reported) : (Label=299792)
Configured ERO on PCC : Not Supported
Bandwidth:
Intended : 98.76Kbps
Actual : 0bps
Intended Metric:
Metric type Bound Optimization
IGP 0 TRUE
Actual Metric:
Metric type Computed value
IGP 50
Route Metric : 50
Mapped Flowspec (FS-Ids) : -
LSP Attributes:
Exclude-Any: 0, Include-Any: 0, Include-All: 0
Setup Priority: 0, Hold-Priority: 0
Local Protection Bit: FALSE
Last Rpt/Pcreqest received from RPD at : 22:15:32.000
Last Update sent to PCE at : 16:00:00.000
Last PcUpdate/PcCreate received from PCE at : 22:15:32.000
Last error sent to PCE at : 16:00:00.000
Last 5 reasons to send Report/Pcrequest : , , , ,
出力は、LSPがメトリックタイプIGPで最適化されていることを示しています。IGPメトリックの計算値は50です。ルートテーブルにインストールされているルートメトリックは 50 です。
PCEPにおけるマイクロSIDを持つSRv6-TEトンネル
PCEPでマイクロSIDを持つSRv6-TEトンネルをサポートすることで、これらのトンネルのレポート、委任、作成が可能になり、トラフィックエンジニアリングとネットワーク最適化が強化されます。マイクロSID設定の静的なSRv6-TEトンネルをPCEに報告して委任し、PCEを介してこれらのトンネルを開始することで、制御と管理を改善できます。主な機能には、マイクロSIDを含む静的なSRv6-TEトンネルをPCEに報告し、その管理を委任し、適切なSID構造とエンドポイントの動作チェックを使用してトンネルを作成することが含まれます。既存のCLIコマンドは、これらの機能をサポートするように拡張されており、効果的な設定と監視を容易にします。
PCEPでマイクロSIDをサポートするSRv6-TEトンネルのメリット
-
PCEがマイクロSIDでSRv6-TEトンネルを作成および管理できるようにすることで、トラフィックエンジニアリングを強化し、ネットワークパフォーマンスとリソース使用率を最適化します。
-
マイクロSID構成の静的SRv6-TEトンネルのレポートとPCEへの委任により、ネットワーク制御と可視性を向上させます。
概要
PCEPでマイクロSIDをサポートするSRv6-TEトンネルを統合することで、ネットワークのトラフィックエンジニアリング機能を大幅に強化できます。この機能により、マイクロSIDを使用したSRv6-TEトンネルのレポート、委任、作成が可能になり、PCE(Path Computation Element)を活用してネットワークの最適化と管理を向上させることができます。マイクロSID設定の静的SRv6-TEトンネルをPCEに報告する場合、SID構造やエンドポイントの動作などの包括的な詳細が含まれ、PCEがこれらのトンネルを効果的に管理できるようになります。
マイクロSIDを備えたSRv6-TEトンネルをPCEに委任することで、PCEがトンネル設定を管理し、ルーティングパスを動的に最適化できるため、トンネルを拡張できます。この委任は、作成後に発生するように設定することも、作成と委任を 1 回のコミットにまとめるように設定して、設定プロセスを合理化することもできます。さらに、PCEは、マイクロSIDでSRv6-TEトンネルを開始することができるため、適切なSID構造とエンドポイントの動作チェックが実施されていることが保証されるため、ネットワークルーティングの整合性とパフォーマンスを維持できます。
以下のshowコマンドを使用して、SRv6-TEトンネルを監視できます。
user@host> show spring-traffic-engineering lsp detail user@host> show ted spring-te-policy extensive user@host> show route table lsdist.0 protocol spring-te extensive user@host> show path-computation-client lsp extensive name <lsp-name>
これらのコマンドは、SRv6-TEトンネルのステータスと設定に関する詳細な情報を提供し、必要に応じてトラブルシューティングと最適化を行うことができます。PCEPでマイクロSIDをサポートするSRv6-TEトンネルの拡張機能を最大限に活用できます。
変更履歴テーブル
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。
external cspfに加えて、PCE制御LSPに local cspf と no cspfの2つの新しいパス計算タイプが導入されます。