Anycast RP / MSDP



 ◆ Anycast RPとは

 Anycast RPは、複数のRPにAnycastアドレスを設定して「
RPの冗長化と負荷分散を実現」する機能です。
 Anycast通信では、複数のインターフェースに同じアドレスを設定して、1つのアドレスを複数のインター
 フェースで共有しています。この
共有アドレスをAnycastアドレスと言いますが、Anycast RPにおいては
 複数のRPにAnycastアドレス(下図では10.0.0.1)を設定して、RPの冗長化と負荷分散を実現しています。

 Anycastアドレスとして使用するIPアドレスは、
loopback I/Fに32ビットのホストアドレスを設定します。
 なお、RPアドレスの設定は「スタティックRP、Auto-RP、BSR」のどのような設定方法で問題ありません。


  



 上図ではRP1(10.0.0.1)がRPアドレスと認識しているルータ群と、RP2(10.0.0.1)がRPアドレスと認識
 しているルータ群があり、
RP1とRP2は「10.0.0.1」のIPアドレスを共有しています。そして、RP1に近い
 Senderが接続されているFHR(ファーストホップルータ)は、RP1へとPIM Registerメッセージを送信して
 RP2に近いReceiverが接続しているLHR(ラストホップルータ)は、RP2へとJoinメッセージを送信します。
 以上のようにRP1とRP2とでRPの役割を分散していることになり、規模が大きいほどその効果がでてきます。

 ※ Auto-RPやBSRでもRPの冗長化は可能ですが切り替わり時間が長く、RPの負荷分散も実現できません。


 ◆ MSDP(Multicast Source Discovery Protocol)とは

 上図のような構成で、PIM-SMでは複数のRP間のマルチキャストトラフィックを転送することはできません。
 複数のRP間でマルチキャストパケットを転送するためには
MSDPを利用します。MSDPは、本来は、異なる
 AS間マルチキャストパケットを転送するためのプロトコルで、異なるASのRP間でMSDPピアを確立できます。

 そのMSDPをAnycast RPにおいて利用すると、SenderがあるRP(RP1)へRegisterメッセージを送信する時、
 MSDPの
SAメッセージがもう一方のRP(RP2)に送信されてアクティブなSenderがいることが通知されます。
 その結果、それぞれのRPはアクティブなSenderの存在を認識するようにします。RPのいずれかが Failed に
 なるとIPルーティングで収束されて、もう一方のRPが両方のエリアにおいてアクティブな位置づけとなります。

 
※ 下図の通りマルチキャストパケットはMSDPのSA(Source Active)メッセージでカプセル化して、もう一方のRPへ転送されます。


 


 上図では
RP1とRP2との間でMSDPピアを確立しています。Senderから送信されたマルチキャストパケットは
 送信元ツリーに従ってRP1まで転送され、RP1でそのマルチキャストパケットをMSDM SAメッセージによって
 カプセル化してRP2に転送します。RP2はMSDP SAメッセージのカプセル化を解除して、共有ツリーに従って
 マルチキャストパケットをReceiverへと転送していきます。

 MSDP SAメッセージによる
カプセル化とカプセル解除は最初のパケットのみとなります。最初の1パケット目で
 RP2は受信したMSDP SAメッセージでSenderのIPアドレスが分かります。結果、RP2はRP1へPIM(S,G)Join
 メッセージを送信して送信元ツリーに参加します。RP2が送信元ツリーに参加することで、SAメッセージにより
 カプセル化されることなく、マルチキャストパケットままSenderからのReceiverへとルーティングされます。



マルチキャストの技術解説(応用)

ネットワークエンジニアとして

Copyright (C) 2002-2019 ネットワークエンジニアとして All Rights Reserved.