例:PIM 事前対応結合ロード バランシングの設定
PIM の自動事前対応結合ロード バランシング機能について
PIM 自動事前対応(MBB)ジョイン ロード バランシング機能により、ECMP パスにインターフェイスが追加されたときに、トラフィックの中断を最小限に抑えながら、イコール コスト マルチパス(ECMP)リンク上で PIM ジョインを再配布できます。
既存の PIM ジョイン ロード バランシング機能を使用すると、ECMP リンク間でジョインを分散できます。リンク障害が発生した場合、結合は残りのECMPリンクに再分配され、トラフィックは失われます。インターフェイスを追加しても、 clear pim join-distribution
コマンドを使用して既存の結合を新しいインターフェイスに負荷分散しない限り、この結合の分散は変更されません。PIM 自動 MBB 参加ロード バランシング機能が設定されている場合、このプロセスは自動的に実行されます。
この機能は、[edit protocols pim join-load-balance]
階層レベルで automatic
ステートメントを使用して有効にできます。新しいネイバーが使用可能になった場合、ネイバーへのパス(スタンバイ パス)の作成にかかる時間は、[edit protocols pim]
階層レベルで standby-path-creation-delay seconds
ステートメントを使用して設定できます。このステートメントがない場合、スタンバイ パスはすぐに作成され、新しいネイバーがネットワークに追加されるとすぐにジョインが再配布されます。トラフィックがない状態でジョインをスタンバイ パスに移動するには、[edit protocols pim]
階層レベルで idle-standby-path-switchover-delay seconds
ステートメントを設定します。このステートメントがない場合、スタンバイ パスでトラフィックを受信するまで、ジョインは移動されません。
protocols { pim { join-load-balance { automatic; } standby-path-creation-delay seconds; idle-standby-path-switchover-delay seconds; } }
例:PIM 事前対応結合ロード バランシングの設定
この例では、PIM 事前対応(MBB)ジョイン ロード バランシング機能を設定する方法を示します。
必要条件
この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。
M Series マルチサービス エッジ ルーター(M120 および M320 のみ)、MX シリーズ 5G ユニバーサル ルーティング プラットフォーム、または T シリーズ コア ルーター(TX Matrix および TX Matrix Plus のみ)の組み合わせが可能な 3 台のルーター。
Junos OS リリース 12.2 以降。
MBB 機能を設定する前に、以下が完了していることを確認してください。
デバイスインターフェイスを設定済み。
デバイス(OSPF と OSPFv3 など)の IPv4 と IPv6 の両方のルートに対して、内部ゲートウェイ プロトコル(IGP)を設定。
任意の 2 つのルーター(ルーター R1 と R2 など)で VLAN を使用して複数の ECMP インターフェイス(論理トンネル)を設定。
概要
Junos OS には PIM 自動 MBB ジョイン ロード バランシング機能があり、PIM ジョインが等コスト マルチパス(ECMP)パス上のすべてのアップストリーム PIM ネイバーに均等に再分配されるようにします。インターフェイスが ECMP パスに追加されると、MBB はトラフィックの中断を最小限に抑えながら代替パスへのスイッチオーバーを提供します。
位相幾何学
この例では、3 台のルーターが送信元と受信側の間で直線的に接続されています。IGP プロトコルと PIM スパース モードは、3 つのルーターすべてで設定されています。送信元はルーター R0 に接続されており、ルーター R1 とルーター R2 の間に 5 つのインターフェイスが設定されています。受信機はルーター R2 に接続されており、PIM 自動 MBB 参加ロード バランシングがルーター R2 に設定されています。
図 1 に、この例で使用するトポロジを示します。
構成
CLIクイック構成
この例をすばやく設定するには、次のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、 [edit]
階層レベルのCLIにコマンドをコピーして貼り付けます。
ルーター R0(送信元)
set protocols pim interface all mode sparse set protocols pim interface all version 2 set protocols pim rp static address 10.255.12.34 set protocols pim rp static address abcd::10:255:12:34
ルーター R1(RP)
set protocols pim interface all mode sparse set protocols pim interface all version 2 set protocols pim rp local family inet address 10.255.12.34 set protocols pim rp local family inet6 address abcd::10:255:12:34
ルーターR2(受信機)
set protocols pim interface all mode sparse set protocols pim interface all version 2 set protocols pim rp static address 10.255.12.34 set protocols pim rp static address abcd::10:255:12:34 set protocols mld interface ge-0/0/3 version 1 set protocols mld interface ge-0/0/3 static group ff05::e100:1 group-count 100 set protocols pim join load-balance automatic set protocols pim standby-path-creation-delay 5 set protocols pim idle-standby-path-switchover-delay 10
PIM MBB 参加ロード バランシングの設定
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLI のナビゲーションについては、『Junos OS CLIユーザーガイド』の「 コンフィギュレーション・モードで CLI エディタを使用する」を参照してください。
セットアップ全体で PIM MBB ジョイン ロード バランシングを構成するには:
3 つのルーターすべてで PIM スパース モードを設定します。
[edit protocols pim interface all] user@host# set mode sparse user@host# set version 2
ルーター R1 を RP として設定します。
[edit protocols pim rp local] user@R1# set family inet address 10.255.12.34 user@R1# set family inet6 address abcd::10:255:12:34
非RPルータ(R0およびR2)にRPスタティックアドレスを設定します。
[edit protocols pim rp ] user@host# set static address 10.255.12.34 user@host# set static address abcd::10:255:12:34
ルーター R2 の ECMP インターフェイスのマルチキャスト リスナー検出(MLD)グループを設定します。
[edit protocols mld interface ge-0/0/3] user@R2# set version 1 user@R2# set static group ff05::e100:1 group-count 100
受信側ルーター(ルーター R2)で PIM MBB 参加ロード バランシング機能を設定します。
[edit protocols pim] user@R2# set join load-balance automatic user@R2# set standby-path-creation-delay 5 user@R2# set idle-standby-path-switchover-delay 10
業績
設定モードから、 show protocols
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@R0# show protocols ospf { area 0.0.0.0 { interface lo0.0; interface ge-0/0/3.1; interface ge-0/0/3.2; interface ge-0/0/3.3; interface ge-0/0/3.4; interface ge-0/0/3.5; } } ospf3 { area 0.0.0.0 { interface lo0.0; interface ge-0/0/3.1; interface ge-0/0/3.2; interface ge-0/0/3.3; interface ge-0/0/3.4; interface ge-0/0/3.5; } } pim { rp { static { address 10.255.12.34; address abcd::10:255:12:34; } } interface all { mode sparse; version 2; } interface fxp0.0 { disable; } interface ge-0/0/3.1; interface ge-0/0/3.2; interface ge-0/0/3.3; interface ge-0/0/3.4; interface ge-0/0/3.5; }
user@R1# show protocols ospf { area 0.0.0.0 { interface lo0.0; interface ge-0/0/3.1; interface ge-0/0/3.2; interface ge-0/0/3.3; interface ge-0/0/3.4; interface ge-0/0/3.5; } } ospf3 { area 0.0.0.0 { interface lo0.0; interface ge-0/0/3.1; interface ge-0/0/3.2; interface ge-0/0/3.3; interface ge-0/0/3.4; interface ge-0/0/3.5; } } pim { rp { local { family inet { address 10.255.12.34; } family inet6 { address abcd::10:255:12:34; } } } interface all { mode sparse; version 2; } interface fxp0.0 { disable; } interface ge-0/0/3.1; interface ge-0/0/3.2; interface ge-0/0/3.3; interface ge-0/0/3.4; interface ge-0/0/3.5; }
user@R2# show protocols mld { interface ge-0/0/3.1 { version 1; static { group ff05::e100:1 { group-count 100; } } } ospf { area 0.0.0.0 { interface lo0.0; interface ge-1/0/7.1; interface ge-1/0/7.2; interface ge-1/0/7.3; interface ge-1/0/7.4; interface ge-1/0/7.5; interface ge-0/0/3.1; } } ospf3 { area 0.0.0.0 { interface lo0.0; interface ge-1/0/7.1; interface ge-1/0/7.2; interface ge-1/0/7.3; interface ge-1/0/7.4; interface ge-1/0/7.5; interface ge-0/0/3.1; } } pim { rp { static { address 10.255.12.34; address abcd::10:255:12:34; } } interface all { mode sparse; version 2; } interface fxp0.0 { disable; } interface ge-1/0/7.1; interface ge-1/0/7.2; interface ge-1/0/7.3; interface ge-1/0/7.4; interface ge-1/0/7.5; interface ge-0/0/3.1; join-load-balance { automatic; } standby-path-creation-delay 5; idle-standby-path-switchover-delay 10; }
検証
インターフェイス設定の確認
目的
設定されたインターフェイスが機能していることを確認します。
アクション
受信者からルーター R2 に 100(S,G)ジョインを送信します。ルーターR2の運用モードから、 show pim interfaces コマンドを実行します。
user@R2> show pim interfaces Stat = Status, V = Version, NbrCnt = Neighbor Count, S = Sparse, D = Dense, B = Bidirectional, DR = Designated Router, P2P = Point-to-point link, Active = Bidirectional is active, NotCap = Not Bidirectional Capable Name Stat Mode IP V State NbrCnt JoinCnt(sg/*g) DR address ge-0/0/3.1 Up S 4 2 DR,NotCap 0 0/0 70.0.0.1 ge-1/0/7.1 Up S 4 2 DR,NotCap 1 20/0 14.0.0.2 ge-1/0/7.2 Up S 4 2 DR,NotCap 1 20/0 14.0.0.6 ge-1/0/7.3 Up S 4 2 DR,NotCap 1 20/0 14.0.0.10 ge-1/0/7.4 Up S 4 2 DR,NotCap 1 20/0 14.0.0.14 ge-1/0/7.5 Up S 4 2 DR,NotCap 1 20/0 14.0.0.18
出力には、PIM プロトコルで使用するために設定されたすべてのインターフェイスが一覧表示されます。 Stat
フィールドは、インターフェイスの現在のステータスを示します。 DR address
フィールドには、設定されたIPアドレスが一覧表示されます。すべてのインターフェイスが動作しています。インターフェイスが動作していることを出力が示さない場合は、続行する前にインターフェイスを再設定します。
意味
設定されたすべてのインターフェイスがネットワークで機能していること。
PIM の検証
目的
設定したネットワークで PIM が動作していることを確認します。
アクション
動作モードから、 show pim statistics コマンドを入力します。
user@R2> show pim statistics PIM Message type Received Sent Rx errors V2 Hello 4253 5269 0 V2 Register 0 0 0 V2 Register Stop 0 0 0 V2 Join Prune 0 1750 0 V2 Bootstrap 0 0 0 V2 Assert 0 0 0 V2 Graft 0 0 0 V2 Graft Ack 0 0 0 V2 Candidate RP 0 0 0 V2 State Refresh 0 0 0 V2 DF Election 0 0 0 V1 Query 0 0 0 V1 Register 0 0 0 V1 Register Stop 0 0 0 V1 Join Prune 0 0 0 V1 RP Reachability 0 0 0 V1 Assert 0 0 0 V1 Graft 0 0 0 V1 Graft Ack 0 0 0 AutoRP Announce 0 0 0 AutoRP Mapping 0 0 0 AutoRP Unknown type 0 Anycast Register 0 0 0 Anycast Register Stop 0 0 0 Global Statistics Hello dropped on neighbor policy 0 Unknown type 0 V1 Unknown type 0 Unknown Version 0 Neighbor unknown 0 Bad Length 0 Bad Checksum 0 Bad Receive If 0 Rx Bad Data 0 Rx Intf disabled 0 Rx V1 Require V2 0 Rx V2 Require V1 0 Rx Register not RP 0 Rx Register no route 0 Rx Register no decap if 0 Null Register Timeout 0 RP Filtered Source 0 Rx Unknown Reg Stop 0 Rx Join/Prune no state 0 Rx Join/Prune on upstream if 0 Rx Join/Prune for invalid group 0 Rx Join/Prune messages dropped 0 Rx sparse join for dense group 0 Rx Graft/Graft Ack no state 0 Rx Graft on upstream if 0 Rx CRP not BSR 0 Rx BSR when BSR 0 Anycast Register Stop 0 0 0
V2 Hello
フィールドには、送受信されたPIM Helloメッセージの数が表示されます。V2 Join Prune
フィールドには、join-prune-timeout
値に達するまでに送信されたジョイン メッセージの数が表示されます。両方の値が 0 以外の場合、PIM は機能します。
意味
PIM はネットワークで動作しています。
PIM 自動 MBB 結合ロード バランシング機能の検証
目的
PIM 自動 MBB 参加ロード バランシング機能が設定どおりに動作することを確認します。
アクション
ルーター R2 に対する MBB 機能の効果を確認するには:
インターフェイスを無効にする前に、 show pim interfaces 動作モードコマンドを実行してください。
user@R2> show pim interfaces Stat = Status, V = Version, NbrCnt = Neighbor Count, S = Sparse, D = Dense, B = Bidirectional, DR = Designated Router, P2P = Point-to-point link, Active = Bidirectional is active, NotCap = Not Bidirectional Capable Name Stat Mode IP V State NbrCnt JoinCnt(sg/*g) DR address ge-0/0/3.1 Up S 4 2 DR,NotCap 0 0/0 70.0.0.1 ge-1/0/7.1 Up S 4 2 DR,NotCap 1 20/0 14.0.0.2 ge-1/0/7.2 Up S 4 2 DR,NotCap 1 20/0 14.0.0.6 ge-1/0/7.3 Up S 4 2 DR,NotCap 1 20/0 14.0.0.10 ge-1/0/7.4 Up S 4 2 DR,NotCap 1 20/0 14.0.0.14 ge-1/0/7.5 Up S 4 2 DR,NotCap 1 20/0 14.0.0.18
JoinCnt(sg/*g)
フィールドは、100 の結合が 5 つのインターフェイスに均等に分散されていることを示しています。ge-1/0/7.5
インターフェイスを無効にします。[edit] user@R2# set interfaces ge-1/0/7.5 disable user@R2# commit
show pim interfaces コマンドを実行して、結合の負荷分散が行われているかどうかを確認します。
user@R2> show pim interfaces Stat = Status, V = Version, NbrCnt = Neighbor Count, S = Sparse, D = Dense, B = Bidirectional, DR = Designated Router, P2P = Point-to-point link, Active = Bidirectional is active, NotCap = Not Bidirectional Capable Name Stat Mode IP V State NbrCnt JoinCnt(sg/*g) DR address ge-0/0/3.1 Up S 4 2 DR,NotCap 0 0/0 70.0.0.1 ge-1/0/7.1 Up S 4 2 DR,NotCap 1 25/0 14.0.0.2 ge-1/0/7.2 Up S 4 2 DR,NotCap 1 25/0 14.0.0.6 ge-1/0/7.3 Up S 4 2 DR,NotCap 1 25/0 14.0.0.10 ge-1/0/7.4 Up S 4 2 DR,NotCap 1 25/0 14.0.0.14
JoinCnt(sg/*g)
フィールドは、100 の結合が 4 つのアクティブ インターフェイス間で均等に再分配されていることを示しています。削除したインターフェイスをルーターR2に追加します。
[edit] user@R2# delete interfaces ge-1/0/7.5 disable user@R2# commit
show pim interfacesコマンドを実行して、非アクティブなインターフェイスを有効にした後、ジョインのロード バランシングが行われているかどうかを確認します。
user@R2> show pim interfaces Stat = Status, V = Version, NbrCnt = Neighbor Count, S = Sparse, D = Dense, B = Bidirectional, DR = Designated Router, P2P = Point-to-point link, Active = Bidirectional is active, NotCap = Not Bidirectional Capable Name Stat Mode IP V State NbrCnt JoinCnt(sg/*g) DR address ge-0/0/3.1 Up S 4 2 DR,NotCap 0 0/0 70.0.0.1 ge-1/0/7.1 Up S 4 2 DR,NotCap 1 20/0 14.0.0.2 ge-1/0/7.2 Up S 4 2 DR,NotCap 1 20/0 14.0.0.6 ge-1/0/7.3 Up S 4 2 DR,NotCap 1 20/0 14.0.0.10 ge-1/0/7.4 Up S 4 2 DR,NotCap 1 20/0 14.0.0.14 ge-1/0/7.5 Up S 4 2 DR,NotCap 1 20/0 14.0.0.18
JoinCnt(sg/*g)
フィールドは、100 の結合が 5 つのインターフェイスに均等に分散されていることを示しています。手記:この出力は、手順 1 の出力のようになります。
意味
PIM 自動 MBB 参加ロード バランシング機能は、設定どおりに動作します。