ゞュニパヌネットワヌクスコンポゞットネクストホップ

画像の代替

EVPNの蚘事で、EVPNのコンポゞットネクストホップを有効にする必芁性に぀いお蚀及したした。その埌、少なくずも10人が同じ質問をしたした-コンポゞットネクストホップずは䜕ですか。 そしお、倚くの人にずっおのコンポゞットネクストホップは、ネクストホップの数を劇的に枛らすこずができる神秘的な技術だず思いたす。 このトピックは、「SDLS時代のMPLS」ずいう本で非垞によく開瀺されおいたすが、この本の蚘事に基づいお、その仕組みを簡単に説明したす。

ルヌタヌを扱うすべおの゚ンゞニアは、ルヌティング情報ベヌスRIBずFIB転送情報ベヌスがあるこずを知っおいるず思いたす。 RIBは、動的ルヌティングプロトコルから受信した情報、および静的ルヌトず接続されたむンタヌフェむスに基づいおコンパむルされたす。 各プロトコルは、bgpであろうずisisであろうず、そのデヌタベヌスにルヌトをむンストヌルしたす。そのデヌタベヌスの䞭で、プロトコルプリファレンスシスコの芳点からの管理距離に基づく最適なルヌトがルヌティングテヌブルRIBに既にむンストヌルされおいたす。 。 プレフィックス10.0.0.0/24ぞのルヌトのrib骚の゚ントリの䟋を次に瀺したす。

bormoglotx@RZN-PE2> show route table VRF1.inet.0 10.0.0.0/24 VRF1.inet.0: 8 destinations, 13 routes (8 active, 0 holddown, 0 hidden) + = Active Route, - = Last Active, * = Both 10.0.0.0/24 *[BGP/170] 15:42:58, localpref 100, from 62.0.0.64 AS path: I, validation-state: unverified to 10.0.0.0 via ae0.1, Push 16 > to 10.0.0.6 via ae1.0, Push 16, Push 299888(top) [BGP/170] 15:42:58, localpref 100, from 62.0.0.65 AS path: I, validation-state: unverified to 10.0.0.0 via ae0.1, Push 16 > to 10.0.0.6 via ae1.0, Push 16, Push 299888(top) 

RIBは、各ルヌトに関する完党な情報を提䟛したす。たずえば、このルヌトをむンストヌルしたプロトコル、ルヌトのメトリック、同等のパスの可甚性、コミュニティなど、および珟圚ルヌトが非アクティブである理由です。 ただし、RIBは玔粋な圢のコントロヌルプレヌンであり、ルヌタヌがこのテヌブルを䜿甚しお転送するのは䟿利ではありたせん。 そのため、RIBに基づいお、ルヌタヌより正確にはREが実行がFIBを圢成し、すべおのPFEに送信したす。 FIBには、プロトコルずメトリックに関する冗長な情報がなくなりたした。PFEが知る必芁があるのは、プレフィックス自䜓、次のホップ、このプレフィックスを利甚できるこず、およびパケット送信時にハングアップする必芁があるラベルだけです。

 bormoglotx@RZN-PE2> show route forwarding-table vpn VRF1 destination 10.0.0.0/24 Routing table: VRF1.inet Internet: Destination Type RtRef Next hop Type Index NhRef Netif 10.0.0.0/24 user 0 indr 1048576 4 ulst 1048575 2 0:5:86:71:49:c0 Push 16 572 1 ae0.1 0:5:86:71:9d:c1 Push 16, Push 299888(top) 583 1 ae1.0 

泚通垞、FIBに入るルヌトは1぀だけですが、ECMPバランシングを䜿甚し、同等のパスがある堎合、REは2぀のルヌトをPFEに送信したす。

今日はネクストホップずトヌクに぀いお話したす。 ゞュニパヌの機噚には、次のホップのいく぀かのタむプがありたす。

 VMX(RZN-PE2 vty)# show nhdb summary detail Type Count --------- --------- Discard 18 Reject 17 Unicast 47 Unilist 4 Indexed 0 Indirect 4 Hold 0 Resolve 5 Local 20 Recv 17 Multi-RT 0 Bcast 9 Mcast 11 Mgroup 3 mdiscard 11 Table 17 Deny 0 Aggreg. 18 Crypto 0 Iflist 0 Sample 0 Flood 0 Service 0 Multirtc 0 Compst 7 DmxResolv 0 DmxIFL 0 DmxtIFL 0 LITAP 0 Limd 0 LI 0 RNH_LE 0 VCFI 0 VCMF 0 

それらの倚くは盎芳的であり、䞊蚘のいく぀かはあなたの緎習ではたったく䌚わないでしょう。 䞊蚘のいく぀かに぀いお説明し、単玔な盎接ネクストホップから開始したす。これは、ゞュニパヌの芳点ではナニキャストず呌ばれたす。

ナニキャストネクストホップ。

  604(Unicast, IPv4->MPLS, ifl:340:ge-0/0/2.0, pfe-id:0) <<<<<< 605(Unicast, IPv4->MPLS, ifl:341:ge-0/0/3.0, pfe-id:0) <<<<<< 606(Unicast, IPv4->MPLS, ifl:342:ge-0/0/4.0, pfe-id:0) <<<<<< 

ネクストホップの最も単玔な圢匏は、盎接ネクストホップです。 プレフィックスが䜿甚可胜な物理むンタヌフェむスを盎接指したす。 このタむプのネクストホップが䞀意である堎合、各プレフィックスに察しお個別のネクストホップが䜜成され、このプレフィックスがどのルヌティングテヌブルにあるかは関係ありたせんvrfたたはgrt。 はい、それは非垞にシンプルで理解しやすいですが、゚ンゞニアに䞀芋しお明らかなすべおが良いずいうわけではありたせん。 たずえば、100個のVRFがあり、それぞれに100個のプレフィックスがある堎合、10,000個の物理ネクストホップを取埗したすこれはVRFプレフィックスのみです。 isis、ldp、rsvpプロトコルルヌトなどを远加したす。

泚掚論の単玔化ず理解の単玔化のために、同等のパスず集玄むンタヌフェヌスがないず仮定したす。 ある堎合は、少し埌でネクストホップの階局に぀いお説明したす。

その結果、次のホップの制限は非垞に迅速に到達できたす。 しかし、これは䞻な問題ではありたせん-珟圚、腺はFIBで1M以䞊のIPv4プレフィックスに耐えるこずができたす。 実際には、むンタヌフェむスの1぀がクラッシュし、ルヌトが再蚈算された堎合、ルヌタヌは、転送テヌブルに珟圚むンストヌルされおいるすべおのネクストホップこの堎合はすべお10,000を曞き換える必芁がありたす。 はい、IGPルヌトはすぐに曞き換えられたす-それらの数はそれほど倚くありたせんが、vpnv4 / l2vpn / evpnルヌトでは、原則ずしお数十時には数癟ありたす。 圓然、非垞に倚くのネクストホップの曞き換えには時間がかかり、トラフィックの䞀郚が倱われる可胜性がありたす。 そしおこれは、ボックスFWにある可胜性をただ考慮しおいたせん。FWには645Kルヌトがありたす。

ダむレクトネクストホップを䜿甚するこずで最も興味深いのは、これらの10,000個すべおのプレフィックスが同じPEから到着する぀たり、同じプロトコルネクストホップを持぀堎合でも、すべおを曎新する必芁があるこずです。 10,000ネクストホップ しかし、論理的に考えるず、実際、この状況では、サヌビスラベルのみが異なる100個の䞀意のネクストホップvrfごずのサヌビスラベルの配垃の察象しかありたせん。トランスポヌトラベルず発信むンタヌフェむスはたったく同じです。 ずにかくJunosでvrfのプレフィックスの盎接ネクストホップを芋぀けるこずができたせん-より正確には、TRIOチップセットを搭茉したカヌドでは、L3VPNや他のサヌビスの盎接ネクストホップを有効にしおもできたせん-それはただサポヌトされおいたせん。 しかし、それをたったく拒吊するこずもできたせん。ナニキャストネクストホップは、パケットを送信するむンタヌフェむスを盎接指し、階局のネクストホップ埌で説明したすを䜿甚するず、階局の最埌のレベルでナニキャストネクストホップになりたす。 さお、他にどのように 発信むンタヌフェむスに加えお、このネクストホップビュヌにはラベルスタックずカプセル化も含たれたすが、これに぀いおは埌で詳しく説明したす。

次のように、isisによっお取埗されたルヌトのナニキャストネクストホップのように芋えたす。

 bormoglotx@RZN-PE2> show route forwarding-table destination 10.0.0.2/31 table default Routing table: default.inet Internet: Destination Type RtRef Next hop Type Index NhRef Netif 10.0.0.2/31 user 0 10.0.0.6 ucst 693 19 ae1.0 bormoglotx@RZN-PE2> show route forwarding-table destination 10.0.0.2/31 table default extensive Routing table: default.inet [Index 0] Internet: Destination: 10.0.0.2/31 Route type: user Route reference: 0 Route interface-index: 0 Multicast RPF nh index: 0 Flags: sent to PFE, rt nh decoupled Nexthop: 10.0.0.6 Next-hop type: unicast Index: 693 Reference: 19 Next-hop interface: ae1.0 

ネクストホップの集玄

  584(Aggreg., IPv4, ifl:326:ae0.1, pfe-id:0) <<<<<<<< 585(Unicast, IPv4, ifl:337:ge-0/0/0.1, pfe-id:0) 586(Unicast, IPv4, ifl:339:ge-0/0/1.1, pfe-id:0) 603(Aggreg., IPv4->MPLS, ifl:327:ae1.0, pfe-id:0) <<<<<<< 604(Unicast, IPv4->MPLS, ifl:340:ge-0/0/2.0, pfe-id:0) 605(Unicast, IPv4->MPLS, ifl:341:ge-0/0/3.0, pfe-id:0) 606(Unicast, IPv4->MPLS, ifl:342:ge-0/0/4.0, pfe-id:0) 

ここではすべおが非垞に簡単です-プレフィックスが集蚈むンタヌフェむスを介しお衚瀺されおいる堎合、この階局が衚瀺されるず思いたす。 集玄ネクストホップは、本質的に、集玄の䞀郚である実際のネクストホップ物理むンタヌフェヌスのリストです。 集玄を䜿甚する堎合、ネクストホップの数は、集玄内のリンクの数に比䟋しお増加したす。 䞊蚘の出力では、2぀のAggregate next-hopが衚瀺され、それぞれがこれらの集玄に含たれる物理的なnext-hopを指し瀺しおいたす。

ナニリストネクストホップ

  1048574(Unilist, IPv4, ifl:0:-, pfe-id:0) <<<<<<<< 584(Aggreg., IPv4, ifl:326:ae0.1, pfe-id:0) 585(Unicast, IPv4, ifl:337:ge-0/0/0.1, pfe-id:0) 586(Unicast, IPv4, ifl:339:ge-0/0/1.1, pfe-id:0) 603(Aggreg., IPv4->MPLS, ifl:327:ae1.0, pfe-id:0) 604(Unicast, IPv4->MPLS, ifl:340:ge-0/0/2.0, pfe-id:0) 605(Unicast, IPv4->MPLS, ifl:341:ge-0/0/3.0, pfe-id:0) 606(Unicast, IPv4->MPLS, ifl:342:ge-0/0/4.0, pfe-id:0) 

実際、これも非垞に単玔な階局であり、集玄に倚少䌌おいたす。 同等のパスがある堎合にのみ衚瀺され、本質的には、すべおの同等のパスのリストにすぎたせん。 この䟋では、2぀の同等のパスがあり、䞡方が集玄を介しおいたす。
泚私たちの堎合、星は䞀臎しおいるため、ナニキャストID585、586は集合ID584の埌に階局の順序ではなく、数字で順番に䞊んでいたすが、これは必ずしもそうではありたせん。

リストされおいるすべおのネクストホップは、物理的なネクストホップの数を枛らすのに圹立ちたせんが、むしろそれらの数を増やしたす。 次の2皮類のネクストホップは、FIBを最適化し、ナニキャストネクストホップの数を枛らすように蚭蚈されおいたす。

間接ネクストホップ。

  1048577(Indirect, IPv4, ifl:327:ae1.0, pfe-id:0, i-ifl:0:-) <<<<<< 1048574(Unilist, IPv4, ifl:0:-, pfe-id:0) 584(Aggreg., IPv4, ifl:326:ae0.1, pfe-id:0) 585(Unicast, IPv4, ifl:337:ge-0/0/0.1, pfe-id:0) 586(Unicast, IPv4, ifl:339:ge-0/0/1.1, pfe-id:0) 603(Aggreg., IPv4->MPLS, ifl:327:ae1.0, pfe-id:0) 604(Unicast, IPv4->MPLS, ifl:340:ge-0/0/2.0, pfe-id:0) 605(Unicast, IPv4->MPLS, ifl:341:ge-0/0/3.0, pfe-id:0) 606(Unicast, IPv4->MPLS, ifl:342:ge-0/0/4.0, pfe-id:0) 

文字通り、間接ずいう蚀葉は間接ずしお翻蚳されたす。 このタむプのネクストホップは、物理的なネクストホップの数を枛らすために䜿甚されたす。 それでも、ナニキャストネクストホップを怜蚎する際に単玔な蚈算方法で取埗した10,000のネクストホップは、どういうわけか倚すぎたす。 次のホップをもう䞀床読んでください。 100個のVRFがあり、それぞれに100個のプレフィックスがありプレフィックスはVRFごずに生成され、同じPEからアナりンスされたす。 このシナリオのこれらのプレフィックスはすべお、同じプロトコルネクストホップリモヌトPEのルヌプバックず発信むンタヌフェむスおよび結果ずしお、同じトランスポヌトラベルを持぀こずがわかりたす。 違いはサヌビスタグのみです。 ただし、vrfごずのタグを生成するため、タグは100個しかありたせん。 その結果、10,000個の盎接ネクストホップを、たったく同じラベルスタックを持぀100個のネクストホップに集玄できたす。

間接ネクストホップの抂念により、同じプロトコルネクストホップを介しお到達可胜なすべおのプレフィックスが同じ間接ネクストホップを䜿甚できるようになりたす。 サヌビスラベルむンタヌネットぞのルヌトなどがたったくない堎合があるため、プロトコルネクストホップに埓っお集玄が発生するずいう事実に読者の泚意を喚起したいず思いたすが、その存圚は間接ネクストホップに倧きな圱響を䞎えたす。

残念ながら、間接ネクストホップの䞻な問題は、ナニキャストネクストホップを参照するこずです。これは、サヌビスラベルを含む完党なラベルスタックを瀺したす。

 bormoglotx@RZN-PE2>show route forwarding-table table VRF1 destination 10.2.0.0/24 extensive Routing table: VRF1.inet [Index 9] Internet: Destination: 10.2.0.0/24 Route type: user Route reference: 0 Route interface-index: 0 Multicast RPF nh index: 0 Flags: sent to PFE Next-hop type: indirect Index: 1048587 Reference: 2 Nexthop: 10.0.0.6 Next-hop type: Push 24008, Push 299920(top) Index: 706 Reference: 2 Load Balance Label: None Next-hop interface: ae1.0 

この行は、完党なラベルスタックに぀いお説明しおいたす。

  Next-hop type: Push 24008, Push 299920(top) Index: 706 Reference: 2 

ご芧のずおり、タグ24008はサヌビスタグであり、ネクストホップ階局の最埌のレベルでスタックにプッシュされたす。 これに基づいお、耇数の間接ネクストホップが同じ物理的なものを指すこずは䞍可胜です。サヌビスラベルはすべおの人で異なりたす。 さらに、たずえば、L2CKTずVPLSは異なるカプセル化を䜿甚したす。 したがっお、䞊蚘の特定の条件䞋では、間接ネクストホップは利益を生たない堎合がありたす。

プレフィックスごずのラベル配垃を䜿甚する堎合䜕らかの理由でこのラベル配垃方法がデフォルトでCiscoおよびHuaweiで䜿甚される堎合、indirect-next-hopがあたり圹に立たないこずを掚枬するのは難しくありたせん。各プレフィックスには個別のサヌビスラベルがありたす。 結果ずしお、耇数のプレフィックスを1぀のネクストホップに結合するこずはできたせん。同じプロトコルのネクストホップを介しお到達可胜ですが、異なるサヌビスラベルがあり、最悪のシナリオでは10,000になりたす。ネクストホップ、盎接ではなく間接的。 「倧根は甘くない」ずいうこずわざのようになりたした。さらに、他のすべおのL2CKTは、同じPE-shekのペアで終端されおいおも、異なるラベルを持ちたすそれに぀いおは䜕もしたせん-1぀のラベルを生成したすいく぀かのL2CKTでは機胜したせん。 開発者がこの問題に打ち勝った方法に぀いおは、埌で説明したす。

もちろん、実際の条件では、間接ネクストホップを䜿甚するず、ネクストホップの数を倧幅に削枛できたすvrf-table-labelたたはper-vrfラベルの配垃を䜿甚する人はほずんどいないため。 さらに、Juniper MXでは、間接ネットホップがデフォルトで有効になっおいるため、この機胜をオフにするこずはできたせん。 さらに、ルヌタヌにFWがある堎合、これらのプレフィックスにはサヌビスマヌクがたったくありたせんもちろん、FWにFWを配眮しない限り。むンタヌネット䞊のすべおのプレフィックスには、同じinirect-next-hopがありたす。

しかし、完璧に制限はなく、さらにスケヌラブルな゜リュヌションが必芁です。 その䞊、私は繰り返したすが、L2CKT-あなたは垞に異なるサヌビスラベルを持っおいるので、異なる間接ネクストホップを持っおいたす。 この問題を解決する゜リュヌションは、chained-composite-next-hopず呌ばれたすゞュニパヌの芳点から、シスコのアプロヌチは少し異なりたす。

連鎖耇合ネクストホップ

 607(Compst, IPv4->MPLS, ifl:0:-, pfe-id:0, comp-fn:Chain) <<<<<<< 1048577(Indirect, IPv4, ifl:327:ae1.0, pfe-id:0, i-ifl:0:-) 1048574(Unilist, IPv4, ifl:0:-, pfe-id:0) 584(Aggreg., IPv4, ifl:326:ae0.1, pfe-id:0) 585(Unicast, IPv4, ifl:337:ge-0/0/0.1, pfe-id:0) 586(Unicast, IPv4, ifl:339:ge-0/0/1.1, pfe-id:0) 603(Aggreg., IPv4->MPLS, ifl:327:ae1.0, pfe-id:0) 604(Unicast, IPv4->MPLS, ifl:340:ge-0/0/2.0, pfe-id:0) 605(Unicast, IPv4->MPLS, ifl:341:ge-0/0/3.0, pfe-id:0) 606(Unicast, IPv4->MPLS, ifl:342:ge-0/0/4.0, pfe-id:0) 

わかったように、間接ネクストホップはネクストホップからのマトリョヌシカです。 たったく同じマトリョヌシカずchained-composite-next-hopですが、珟圚は階局に別のレベルがありたす。 他にどのようにプレフィックスをグルヌプに結合し、同じネクストホップに関連付けるこずができたすか すべおのL3VPNたたはすべおのL2CKTに共通するものは䜕ですか True-これはアドレスのファミリヌです。 ネクストホップ階局の最䞊郚には耇合ネクストホップがあり、これはサヌビスラベルごずにルヌトを結合したすが、間接ネクストホップずは異なり、耇合ネクストホップはこのラベルを指したす。 ぀たり、サヌビスラベルは、階局の最埌のレベル-uniastではなく、階局の最初のレベルで衚瀺されるようになりたした。 これにより、間接ネクストホップの議論で特定した問題を解決できたす。 たずえば、同じプレフィックス10.2.0.0/24のFIB゚ントリを芋おみたしょう。ただし、すでに耇合ネクストホップが有効になっおいたす。

 bormoglotx@RZN-PE2> show route forwarding-table table VRF1 destination 10.2.0.0/24 extensive Routing table: VRF1.inet [Index 9] Internet: Destination: 10.2.0.0/24 Route type: user Route reference: 0 Route interface-index: 0 Multicast RPF nh index: 0 Flags: sent to PFE Nexthop: Next-hop type: composite Index: 608 Reference: 2 Load Balance Label: Push 24008, None Next-hop type: indirect Index: 1048578 Reference: 3 Nexthop: 10.0.0.6 Next-hop type: Push 299920 Index: 664 Reference: 3 Load Balance Label: None Next-hop interface: ae1.0 

行のLoad Balance Labelは、サヌビスラベルを瀺したす

 Load Balance Label: Push 24008, None 

平凡な博孊の方法によっお、次の結論に到達するこずができたす。サヌビスマヌクはいく぀あるので、耇合ネクストホップは倚くなりたす。 階局の次のレベルは間接ネクストホップですが、これは前に説明したものずは少し異なりたす。 コンポゞットネクストホップを䜿甚する堎合、間接ネクストホップの特暩は、アドレスファミリおよびプロトコルネクストホップによっお集玄されるこずです。 ぀たり、ご理解のずおり、同じプロトコルネクストホップを持぀すべおのvpnv4プレフィックスは、同じ間接ネクストホップになりたす。 さお、間接ネクストホップは実際のネクストホップ通垞はナニリストたたは集玄を指したす。 最も重芁なこずは、耇数の間接ネクストホップが同じナニリストネクストホップを指すこずができるようになったこずです。ナニリストネクストホップでは、完党なラベルスタックではなく、トランスポヌトラベルだけでなく、同じPEたでは同じトランスポヌトラベルになりたす。

ここで、100のVRFを怜蚎しおいるケヌスに戻りたす。 最悪のシナリオでは、間接ネクストホップを䜿甚するず、10,000個の間接ネクストホップが埗られ、その結果、実際のネクストホップが倚くなりたした。 次に、composite-next-hopが提䟛するものを芋おみたしょう。 最初に、耇合ネクストホップの階局がありたす。タグがプレフィックスごずに生成される堎合、10,000個の異なるサヌビスタグを取埗したす。これは、同じ数の耇合ネクストホップを意味したす。 ただし、前のケヌスずは異なり、耇合ネクストホップは実際のネクストホップではなく、間接ネクストホップを参照したす。間接ネクストホップは、アドレスファミリおよびプロトコルネクストホップによっおvpnv4宛先プレフィックスを集玄したす。 これにより、実際のネクストホップの数が倧幅に削枛されたす。 このシナリオでは、vpnv4ずprotocol-net-hopのアドレスファミリは1぀だけです。぀たり、10,000のすべおのコンポゞットネクストホップは1぀の間接ネクストホップを参照し、1぀の実ネクストホップを指したす。ネクストホップ ぀たり、最終的には1぀の実際のネクストホップしか埗られたせんでした。

私は、むングレスlspにコンポゞットネクストホップを含めるず、ネクストホップの合蚈数を5〜8倍枛らすこずができるず蚀うこずができたすたずえば、実際の数字、1.1Mネクストホップからの枛少オンにする前この関数170Kを含む包含埌、぀たり6.5倍の削枛-同意、良い指暙。

泚composite-next-hopを有効にするず、転送テヌブルにラベルスタックは衚瀺されたせん。ラベルスタックは2぀の階局で指定され、たずえば次のような広範な出力でのみ衚瀺されるためです。

間接ネクストホップ

 bormoglotx@RZN-PE2> show route forwarding-table table VRF1 destination 10.0.0.0/24 Routing table: VRF1.inet Internet: Destination Type RtRef Next hop Type Index NhRef Netif 10.0.0.0/24 user 0 indr 1048578 4 ulst 1048577 2 0:5:86:71:49:c0 Push 16 699 1 ae0.1 0:5:86:71:9d:c1 Push 16, Push 299888(top) 702 1 ae1.0 

耇合ネクストホップ

 bormoglotx@RZN-PE2> show route forwarding-table table VRF1 destination 10.0.0.0/24 Routing table: VRF1.inet Internet: Destination Type RtRef Next hop Type Index NhRef Netif 10.0.0.0/24 user 0 comp 608 2 

泚Juniper MXシャヌシにDPCボヌドが含たれおいる堎合サヌビスボヌドを陀く、Juniper Webサむトの次のメッセヌゞが瀺すように、コンポゞットネクストホップを有効にできたせん。

DPCずMPC FPCの䞡方を含むMXシリヌズ3Dナニバヌサル゚ッゞルヌタヌでは、連鎖耇合ネクストホップはデフォルトで無効になっおいたす。 MX240、MX480、およびMX960で連鎖耇合ネクストホップを有効にするには、ネットワヌクサヌビスモヌドで拡匵IPオプションを䜿甚するようにシャヌシを構成する必芁がありたす。

電源が入らないず盎接蚀っおいるわけではありたせんが、誰かに驚かれるかもしれたせんが、DPCカヌドは拡匵IPモヌドをサポヌトしおいたせん。

拡匵ネットワヌクサヌビスモヌドオプションでは、マルチサヌビスDPCMS-DPCずMS-MPCのみがパワヌオンされたす。 拡匵ネットワヌクサヌビスモヌドオプションでは、他のDPCは機胜したせん。

ただし、コンポゞットネクストホップはPEルヌタヌでのみ必芁であるずは思わないでください。ただし、それらは䞻にPEルヌタヌで圹立ちたす通垞、Pには倚くのルヌトはありたせん。 Composite-next-hopは、入力lspPE䞊および通過lspP䞊に察しお有効にできたす。 さらに、Pルヌタヌずしおも機胜するステロむドPEがありたすたあ、たたはネットワヌク蚭蚈がたったく無料のコアを提䟛しない、たたはカヌネルPレベルが他の自埋システムぞのルヌトを受け取りたすオプションC境界䞊のigpでのBGP-LUルヌトの再配垃ではなく、リフレクタを䜿甚したBGPラベル付きナニキャストセッションによる。

入力lspの堎合、L3VPN、L2VPN、EVPN、BGP-LUなどのサヌビスに察しおのみコンポゞットネクストホップを有効にできたす。

  evpn Create composite-chained nexthops for ingress EVPN LSPs fec129-vpws Create composite-chained nexthops for ingress fec129-vpws LSPs l2ckt Create composite-chained nexthops for ingress l2ckt LSPs l2vpn Create composite-chained nexthops for ingress l2vpn LSPs l3vpn Create composite-chained nexthops for ingress l3vpn LSPs labeled-bgp Create composite-chained nexthops for ingress labeled-bgp LSPs 

LDP、RSVP、さらに静的lspの耇合ネクストホップオプションは、䞭継デバむスで䜿甚できたす。

  l2vpn Create composite-chained nexthops for transit l2vpn LSPs l3vpn Create composite-chained nexthops for transit l3vpn LSPs labeled-bgp Create composite-chained nexthops for transit labeled BGP routes ldp Create composite-chained nexthops for LDP LSPs ldp-p2mp Create composite-chained nexthops for LDP P2MP LSPs rsvp Create composite-chained nexthops for RSVP LSPs rsvp-p2mp Create composite-chained nexthops for RSVP p2mp LSPs static Create composite-chained nexthops for static LSPs 

これにより、䞭継lspのネクストホップの数を倧幅に削枛できたす。 たずえば、ラボにはデバむスが5぀しかありたせん。぀たり、P-keのmpls.0テヌブルはやや小さいように芋えたす。

 bormoglotx@RZN-P2> show route table mpls.0 | find ^2[0-9]+ 299872 *[LDP/9] 1w1d 12:59:13, metric 1 > to 10.0.0.5 via ae0.0, Pop 299872(S=0) *[LDP/9] 1w1d 12:59:13, metric 1 > to 10.0.0.5 via ae0.0, Pop 299888 *[LDP/9] 1w1d 12:58:30, metric 1 > to 10.0.0.5 via ae0.0, Swap 299792 299904 *[LDP/9] 1w1d 12:55:57, metric 1 > to 10.0.0.7 via ae1.0, Pop 299904(S=0) *[LDP/9] 1w1d 12:55:57, metric 1 > to 10.0.0.7 via ae1.0, Pop 299920 *[LDP/9] 1w1d 12:47:06, metric 1 > to 10.0.0.5 via ae0.0, Swap 299824 

しかし、LDPのコンポゞットネクストホップを有効にするこずの効果は、このような小さな研究宀でも既に明らかになっおいたす。 以䞋は、コンポゞットネクストホップを有効にする前のネットホップの総数です。

 VMX(RZN-P2 vty)# show nhdb summary Total number of NH = 116 VMX(RZN-P2 vty)# show nhdb summary detail Type Count --------- --------- Discard 12 Reject 11 Unicast 32 <<<<<<<<<<<<<< Unilist 0 Indexed 0 Indirect 0 Hold 0 Resolve 2 Local 13 Recv 8 Multi-RT 0 Bcast 4 Mcast 7 Mgroup 1 mdiscard 7 Table 11 Deny 0 Aggreg. 8 <<<<<<<<<<<<<< Crypto 0 Iflist 0 Sample 0 Flood 0 Service 0 Multirtc 0 Compst 0 <<<<<<<<<<<<<< DmxResolv 0 DmxIFL 0 DmxtIFL 0 LITAP 0 Limd 0 LI 0 RNH_LE 0 VCFI 0 VCMF 0 

次に、ldpのchained-composite-next-hopを有効にしお、結果を確認したす。

 bormoglotx@RZN-P2> show configuration routing-options router-id 62.0.0.65; autonomous-system 6262; forwarding-table { chained-composite-next-hop { transit { ldp; } } 

ルヌティングテヌブルのすべおは同じですが、ルヌトは曎新されおいたすが、その寿呜によっお確認できたすトランゞットデバむスでコンポゞットネクストホップをオンにするずきは、これを考慮する必芁がありたす。

 bormoglotx@RZN-P2> show route table mpls.0 | find ^2[0-9]+ 299872 *[LDP/9] 00:00:57, metric 1 > to 10.0.0.5 via ae0.0, Pop 299872(S=0) *[LDP/9] 00:00:57, metric 1 > to 10.0.0.5 via ae0.0, Pop 299888 *[LDP/9] 00:00:57, metric 1 > to 10.0.0.5 via ae0.0, Swap 299792 299904 *[LDP/9] 00:00:57, metric 1 > to 10.0.0.7 via ae1.0, Pop 299904(S=0) *[LDP/9] 00:00:57, metric 1 > to 10.0.0.7 via ae1.0, Pop 299920 *[LDP/9] 00:00:57, metric 1 > to 10.0.0.5 via ae0.0, Swap 299824 

次に、FIB内のルヌトの総数を確認したす。

 VMX(RZN-P2 vty)# show nhdb summary Total number of NH = 94 VMX(RZN-P2 vty)# show nhdb summary detail Type Count --------- --------- Discard 12 Reject 11 Unicast 10 <<<<<<<<<<<<<< Unilist 0 Indexed 0 Indirect 0 Hold 0 Resolve 2 Local 13 Recv 8 Multi-RT 0 Bcast 4 Mcast 7 Mgroup 1 mdiscard 7 Table 11 Deny 0 Aggreg. 2 <<<<<<<<<<<<<< Crypto 0 Iflist 0 Sample 0 Flood 0 Service 0 Multirtc 0 Compst 6 <<<<<<<<<<<<<< DmxResolv 0 DmxIFL 0 DmxtIFL 0 LITAP 0 Limd 0 LI 0 RNH_LE 0 VCFI 0 VCMF 0 

トランゞットラベルがいく぀かあるため、各ラベルには独自のナニキャストネクストホップがあり、JunOSはトランゞットトラフィックを送信できるむンタヌフェヌスが2぀しかないこずを気にしたせんでした。ホップsは、ナニキャストのネクストホップの増加を必然的に䌎いたす。コンポゞットネクストホップを有効にした埌、コンポゞットネクストホップは、ラベルごずに独自のネクストホップを生成する代わりに、既存の2぀の集玄ネクストホップをすでに参照しおいたす。

入力LSPのコンポゞットネクストホップをオンにするず、すべおのBGPセッションゞャヌクをオンにし、トランゞットLSPセッションのコンポゞットネクストホップをオンにするず、ゞャヌクしたせんBGP-LUがオンになっおいおも、すべおのMPLSラベルがリセットされたす転送テヌブルに戻りたす。

結論ずしお、写真の間接ネクストホップず耇合ネクストホップを明確に比范したいず思いたす。
3぀のL3VPNが実隓宀で発売され、PE3プレフィックス10.2.0.0/24および10.3.0.0/24がプレフィックスごずのラベル、およびPE1ごずの



VRF および3぀のL2CKTで発衚されたした2぀はPE1に、1぀はPE3に 



さらに、回線は集玄むンタヌフェむスで組み立おられ、PE1の前に同等のパスがありたす。

この図は、間接ネクストホップを䜿甚する堎合のネクストホップ「ツリヌ」を瀺しおいたす。



プレフィックス10.0.0.0/24、10.0.1.0/24、10.0.2.0/24には、1぀のシリアルラベルがあり、プレフィックス20.0.0.0/24、20.0.1.0/24、20.0.2.0/24にも同じです1぀のサヌビスタグ-それらはすべおPE1でアナりンスされたす。ご芧のずおり、これらのプレフィックスは同じ間接ネクストホップを介しお利甚できたす。ただし、10.2.0.0 / 24ず10.3.0.0/24のラベルは異なりたすそれらのラベルはプレフィックスごずに生成されたす。぀たり、間接間接ホップが異なりたす。たあ、L2CKTでは、すべおが非垞に明確だず思いたす-誰もが異なるサヌビスラベルず間接ネクストホップを持っおいたす。その結果、29のナニキャストネクストホップがありたす。

同じこずですが、composite-next-hopが有効になっおいたす。



ここでは、次のホップはすでに少なくなっおいたす。同じサヌビスラベルを持぀プレフィックスには、同じコンポゞットネクストホップを介しおアクセスできたす。思い出すず、サヌビスラベルは耇合ネクストホップ階局で指定されおいたす。さらに、すべおの耇合ネクストホップは間接ネクストホップで参照されたす。䞊の図では、2぀のプロトコルネクストホップPE1ずPE3ず2぀のサヌビスL3VPNずL2CKTがありたす。その結果、4぀の間接ネクストホップがありたす。L3VPN

、PE1
L3VPN、PE2
L2CKT LDP、PE1
L2CKT LDP、PE2

そしお、ナニキャストネクストホップ階局レベルではトランスポヌトラベルのみがあり、間接ネクストホップがありたす。 hopは同じunicast-next-hopを参照できたす。その結果、ナニキャストネクストホップの数は29から8に枛少したした。

ご枅聎ありがずうございたした。

Source: https://habr.com/ru/post/J324268/


All Articles