◆ PIM-SM -(S,G)と(*,G)エントリ
Ciscoルータではディストリビューションツリーは、show ip mrouteコマンドによって確認できます。その
ディストリビューションツリーのエントリには、大きく以下の2種類があります。
エントリ |
説明 |
( *,G ) |
「*」は any であり「G」はマルチキャストグループ。PIM-SMの共有ツリーとして使用。 |
( S,G ) |
「S」はSenderのIPアドレスであり「G」はマルチキャストグループ。PIM-SMの送信元ツリーとして使用。 |
◆ PIM-SM -(S, G)エントリの内容
@ PM-SMでは(S, G)エントリは以下のいずれかの条件が発生した時に自動的に作成されます。
・ Senderからマルチキャストパケットを受信した時(ファーストホップルータの場合)
・ PIM(S,G)Joinメッセージ、またはPIM(S,G)Pruneメッセージを受信した時
・ PIM Registerメッセージを受信した時(RPの場合)
A RPF情報:
・ Incoming Interface:SenderのIPアドレスへの最短経路のインターフェース
・ RPF nbr:Incoming Interface の方向のPIMネイバーのIPアドレス
B OIL情報:Outgoing Interface には、RPF I/Fを除いた以下に該当する全てのI/Fが追加されます。
・ PIM(S,G)Joinメッセージを受信したインターフェース
・ Receiverが存在するインターフェース
・ ip igmp join-group や ip igmp static-group が設定されているインターフェース
◆ PIM-SM -(S, G)エントリ作成の流れ
Senderがマルチキャストパケットを送信して、ファーストホップルータがそのマルチキャストパケットを受信
すると(S,G)エントリを作成します。その時、ルータに(*,G)エントリがなければ(*,G)も作成されます。
作成された(S,G)エントリのIncoming interfaceは、マルチキャストパケットを受信したインターフェースで
Outgoing interfaceは、Receiverの存在を認識していないことから「Null」となります。従って、現時点では
ファーストホップルータは、マルチキャストパケットを転送することができません。
そこで、ファーストホップルータはRPへ、マルチキャストパケットをカプセル化したPIM Registerメッセージ
をユニキャストで送信します。PIM Registerメッセージにより、マルチキャストパケットをRPまで転送します。
そして、PIM Registerメッセージを受信したRPでは、カプセル化されたマルチキャストパケットを取り出して
(S,G)エントリを作成します。そしてRPはその(S,G)エントリに従いマルチキャストパケットを転送します
そして、PIM Registerでは、RPからファーストホップルータ間の送信元ツリーの作成を要求しているため、
RPからSenderに向けてPIM(S,G)Joinメッセージを送信します。このメッセージを受信したルータでは、
その(S,G)エントリを作成していきます。厳密には(S,G)作成前のタイミングで(*,G)エントリも作成
されます。そして、PIM(S,G)Joinメッセージがファーストホップルータに到達すると、Outgoing I/Fで
Null状態であった(S,G)エントリでは、Outgoing I/FがRPの方向のインターフェースとして指定されます。
以上の通り、PIM RegisterメッセージとPIM(S,G)Joinメッセージによって、送信元ツリーが作成されます。
この送信元ツリーに従ってSenderからRPへマルチキャストトラフィックが転送されていくと、PIM Register
メッセージは不要となるので、RPからファーストホップルータにPIM Register-stopメッセージを送信します。
それを受信したファーストホップルータは、PIM Registerメッセージの送信を停止するようになります。
以上の流れにより、SenderからReceiverに対してマルチキャストトラフィックが転送されるようになります。
|