マルチキャストネットワークアーキテクチャの例プロトコル独立マルチキャスト(PIM )は、インターネットプロトコル(IP)ネットワーク向けのマルチキャストルーティングプロトコルのファミリーであり、LAN、WAN、またはインターネット上で1対多および多対多のデータ配信を提供します。PIMは独自のトポロジー検出メカニズムを持たず、他のルーティングプロトコルによって提供されるルーティング情報を使用するため、プロトコル独立と呼ばれています。PIMは特定のユニキャストルーティングプロトコルに依存せず、ネットワークで使用されている任意のユニキャストルーティングプロトコルを利用できます。PIMは独自のルーティングテーブルを作成しません。PIMは逆方向のパス転送にユニキャストルーティングテーブルを使用します。[ 1 ]: 56-57
PIMには4つのバリエーションがあります。
- PIMスパースモード(PIM-SM)は、グループごとにランデブーポイント(RP)をルートとする単方向共有ツリーを明示的に構築し、オプションでソースごとに最短パスツリーを作成します。PIM-SMは一般的に広域での使用においてかなり良好なスケーラビリティを発揮します。[ 2 ] [ 3 ]
- PIM デンスモード(PIM-DM) は、マルチキャストトラフィックをドメイン全体にフラッディングし、受信者が存在しないツリーのブランチを剪定することで、最短経路ツリーを暗黙的に構築します。PIM-DM は実装が簡単ですが、一般的にスケーリング特性が劣ります。最初のマルチキャストルーティングプロトコルであるDVMRP は、デンスモードマルチキャストルーティングを使用しました。[ 4 ] RFC 3973 を参照してください。
- 双方向 PIM (Bidir-PIM) は、共有双方向ツリーを明示的に構築します。最短経路ツリーは構築しないため、PIM-SM よりもエンドツーエンドの遅延が長くなる可能性がありますが、ソース固有の状態を必要としないため、スケーラビリティに優れています。[ 1 ] : 70-73 RFC 5015 を参照。
- PIMソース固有マルチキャスト(PIM-SSM)は、単一のソースをルートとするツリーを構築し、限られた数のアプリケーション(主にコンテンツのブロードキャスト)に対して、より安全でスケーラブルなモデルを提供します。SSMでは、IPデータグラムはソースSからSSM宛先アドレスGに送信され、受信側はチャネル(S,G)を購読することでこのデータグラムを受信できます。詳細はRFC 3569を参照してください。
PIM-SMは、IPTVシステムにおいて、 VLAN、サブネット、またはローカルエリアネットワーク間でマルチキャストストリームをルーティングするために一般的に使用されています。[ 5 ]
バージョン
PIMには2つのバージョンがあります。これらのバージョンは直接互換性はありませんが、同じネットワーク上で共存することは可能です。ネットワーク機器は両方のバージョンを実装している場合があります。PIMv2はPIMv1に比べて以下の点が改善されています。グループごとに1つのRPが使用されます。RPの検出はブートストラップルータ(BSR)によって行われます。グループはスパースモードまたはデンスモードのいずれかであり、インターフェースはどちらでも構いません。プロトコルの柔軟性と効率性全般が改善されています。[ 1 ] : 59
スパースモード
プロトコル独立マルチキャスト - スパースモード( PIM-SM ) は、インターネット プロトコル(IP)パケットを、広域インターネットやドメイン間インターネットにまたがる可能性のあるマルチキャストグループに効率的にルーティングするためのプロトコルです。このプロトコルは、トポロジー検出のために特定のユニキャスト ルーティング プロトコルに依存しないためプロトコル独立と呼ばれ、マルチキャスト セッションにサブスクライブするノード (およびそのルーター) の割合が非常に低いグループに適しているためスパースモードと呼ばれています。DVMRPや高密度マルチキャストルーティングなどの以前の高密度モード マルチキャスト ルーティング プロトコルは、パケットをネットワーク全体にフラッディングしてから、受信者がいないブランチを切り捨てていましたが、PIM-SM は、マルチキャスト グループ内の各送信者から受信者へのツリーを明示的に構築します。[ 6 ]
マルチキャストクライアント
ルーターは、下流グループのメンバーを持つ隣接ルーターから明示的な参加/削除メッセージを受信する。
- マルチキャストグループGに参加するには、ホストはインターネットグループ管理プロトコル(IGMP)を介してメンバーシップ情報を伝達します。
- ルータは、マルチキャストグループG宛てのデータパケットを、明示的な参加通知を受信したインターフェースのみに転送します。
- 指定ルーター(DR)は、アクティブなメンバーを持つ各グループに対して、グループ固有のランデブーポイント(RP)に向けて定期的に参加/削除メッセージを送信します。
- 1つのルーターがランデブーポイント(RP)として自動的または静的に指定され、すべてのルーターは明示的にRPを経由して参加する必要があることに注意してください。
- RPに向かう経路上の各ルーターは、グループに対してワイルドカード(任意の送信元)状態を構築し、参加/削除メッセージをRPに向けて送信します。
- ルートエントリという用語は、ルーティングツリーを表すためにルーター内で維持される状態を指すために使用されます。
- ルートエントリには、次のようなフィールドが含まれる場合があります。
- ソースアドレス
- グループアドレス
- パケットを受け入れる受信インターフェース
- パケットが送信される送信インターフェースのリスト
- タイマー、フラグビットなど
- ワイルドカードルートエントリの受信インターフェースはRPを指しています
- 送信インターフェースは、RP に対して Join/Prune メッセージを送信した近隣のダウンストリーム ルータ、およびグループ G へのメンバーシップを要求した直接接続されたホストを指しています。
- この状態は、すべてのグループメンバーに届く、共有されたRP中心の配布ツリーを作成します。
マルチキャストソース
- データソースが最初にグループに送信すると、その指定ルーター(DR)は、ソースのデータパケットをカプセル化したユニキャスト登録メッセージをランデブーポイント(RP)に送信します。
- データレートが高い場合、RPは送信元固有の参加/剪定メッセージを送信元に送り返すことができ、送信元のデータパケットは結果として生じる転送状態に従い、カプセル化されずにRPに送信されます。
- データがカプセル化された状態で到着した場合でも、ネイティブな状態で到着した場合でも、RPは送信元からカプセル化解除されたデータパケットを、RPを中心とした配信ツリーを介してグループメンバーに向けて転送します。
- データレートが許せば、ローカルレシーバーを備えたルーターは、送信元固有の最短経路配信ツリーに参加し、共有RP中心ツリーからこの送信元のパケットを削除することができる。
- ルータのローカル受信機がマルチキャストグループ内の特定の送信元からのパケットのみに関心がある場合、ルータはRP中心の共有ツリーへの参加をスキップし、送信元固有の最短経路ツリーへの参加に直接移行する可能性がある。
- データレートが低い送信元の場合、RPもラストホップルータも送信元固有の最短経路ツリーに参加する必要はなく、データパケットは共有RPツリーを介して配信できる。
グループパケットを受信する必要のある他のルータが購読を完了すると、RPは、パケットを別のルータまたはノードに転送する必要がない限り、そのマルチキャストグループの購読を解除します。さらに、ルータは、マルチキャストパケットを受信したいルータ間でパケット転送のループが発生しないように、逆方向パス転送を使用します。
高密度モード
密モードマルチキャストは、マルチキャストがマルチキャスト加入者へのパケット送信のためのツリーを構築するために使用できるモードの1つです。これは疎モードの代替手段となります。
密モードの基本的な前提は、マルチキャストパケットストリームのほとんどの場所に受信機が存在することです。疎モードでは、受信機の数が比較的少ないことを前提としています。密モードは、多くのノードがマルチキャストパケットの受信を購読し、ほとんどのルータがこれらのパケットを受信して転送する必要があるグループ(高密度グループ)に最適です。
この違いは、2 つのプロトコルの初期動作とメカニズムに現れます。Dense Mode は、IP マルチキャストルーティングを処理するためにかなりシンプルなアプローチを使用します。送信元は、最初に直接接続されているすべてのルーターにブロードキャストします。これらの隣接ルーターは、さらにデータを隣接ルーターに転送します。ルーターがこのグループのデータを受信したくない場合 (他の隣接 PIM ルーターが存在せず、どのホストもこのグループに興味がない場合)、関心がないことを示す Prune メッセージを送信します。Prune メッセージを受信すると、ルーターは状態を変更して、そのインターフェースからパケットを転送しないようにします。ルーター上のすべてのインターフェースがプルーニングされると、ルーターもプルーニングされます。[ 6 ]
以前のCisco IOSリリースでは、PIM-DM は 3 分ごとにすべてのマルチキャスト トラフィックを再フラッディングしていました。これは低容量のマルチキャストには適していますが、高帯域幅のマルチキャスト パケット ストリームには適していません。より新しい Cisco IOS バージョン 12.1(5)T 以降では、PIM Dense Mode State Refresh と呼ばれる新機能がサポートされています。この機能は、PIM ステート リフレッシュ メッセージを使用して、送信インターフェイスの Prune ステートを更新します。もう 1 つの利点は、トポロジの変更がより迅速に認識されることです。デフォルトでは、PIM ステート リフレッシュ メッセージは 60 秒ごとに送信されます。
さらに、ルータは逆パス転送を使用して、マルチキャストパケットを受信したいルータ間でパケット転送のループが発生しないようにします。非RPFインターフェイスでデータパケットが受信された場合、ループを防止するメカニズムが必要です。非RPFインターフェイスがLANの場合、アサートメッセージが送信されます。非フォワーダールータは、マルチキャストストリームが不要な場合、RPFインターフェイスでプルーニングメッセージを送信します。このようなプルーニングメッセージは、送信インターフェイスリスト(OILIST)にインターフェイスがなくなる時点に一度だけ送信されます。LANプルーニング受信側は、3秒間処理を遅延させます。これにより、別のLANルータがまだマルチキャストストリームを必要とする場合、プルーニングを打ち消す(キャンセルする)PIM参加メッセージを送信できます。(「あのルータは必要ないが、私はまだ必要だ!」)
ルーターがプルーニングを行った後、しばらくして受信側がIGMPメッセージでマルチキャストストリームを要求したとします。するとルーターはグラフトメッセージを送信します。これは実質的に「今すぐそのマルチキャストストリームをこちらに送ってほしい」という意味です。
参考文献
- 1 2 3 IPマルチキャストルーティング設定ガイド、Cisco 、 2017年5月27日取得
- ↑ 「PIM-SMマルチキャストルーティングプロトコル」。マイクロソフト。2009年12月9日。 2014年3月26日取得。
- ↑ B. Fenner; M. Handley; H. Holbrook; I. Kouvelas (2006 年 8 月). Protocol Independent Multicast - Sparse Mode (PIM-SM): Protocol Specification (Revised) . Network Working Group. doi : 10.17487/RFC4601 . RFC 4601 .廃止済み。RFC 7761 により廃止されました。RFC 2362 を廃止します。RFC 5059、5796 、および6226により更新されました。
- ↑ 「マルチキャストに関するよくある質問(FAQ)ファイル」。マルチキャスト技術。 2011年6月14日にオリジナルからアーカイブされました。
- ↑ 「IPTVコンテンツ配信のためのIPマルチキャスト展開に関するガイドラインの補足」。ITU -T 。 2014年3月23日取得。
- 1 2 IPマルチキャストルーティングの設定、Cisco Systems 、 2013年12月6日取得
外部リンク
- Gorry Fairhurst (2006). "PIMルーティング" (PDF)。2011年12月28日にオリジナル(PDF)からアーカイブ済み。2011年12月6日に取得。
- プロトコル非依存型マルチキャストスパースモード(PIM-SM):プロトコル仕様(改訂版)
- ソース固有マルチキャスト(SSM)の概要
- NetcraftmenによるPIMスパースモードの説明
- PIM-SMマルチキャストルーティングプロトコル
- pimdは、軽量なスタンドアロン型のPIM-SM v2マルチキャストルーティングデーモンです。
- プロトコル独立型マルチキャストスパースモード(PIM-SM):プロトコル仕様 rfc2362
- qpimd – Quagga用PIMデーモン- プロトコル独立マルチキャスト。以前は別個の独立したモジュールとしてリリースされていましたが、現在はQuagga Routing Suiteの公式モジュールとして提供されています。