マルチキャストルーティングの仕組み その2

ディストリビューションツリー

ルータはマルチキャストルーティングを有効にすることで、マルチキャストパ
ケットを転送することができます。ですが、スイッチのようにフラッディング
するわけではありません。ディストリビューションツリーにしたがって、マル
チキャストパケットをルーティングします。そのため、マルチキャストルーテ
ィングを行うには、ディストリビューションツリーが重要なポイントになります。
ディストリビューションツリーによって、マルチキャストルータはどの方向
(インタフェース)の先にどんなマルチキャストグループのレシーバが存在して
いるかを認識します。そして、受信したマルチキャストパケットをレシーバが
いるインタフェースに転送します。このとき、レシーバが存在するインタフェ
ースが複数あれば、その数分だけマルチキャストパケットをコピーします。
以上のようなマルチキャストルーティングで、重要な役割を果たすディストリ
ビューションツリーを作成したり、維持したりするためのプロトコルがマルチ
キャストルーティングプロトコルです。

ディストリビューションツリーの作成はマルチキャストルーティングプロトコ
ルだけでなく、その他のプロトコルや実際のマルチキャストのデータも関連し
て行われます。ディストリビューションツリーはあらかじめ作成されるわけで
はありません。レシーバの出現やソースからのマルチキャストパケットの送信
に伴って動的に作成されていきます。その概要をまず解説します。

あるホストがマルチキャストレシーバとして、マルチキャストパケットを受信
しようとするとき、ラストホップルータへ通知します。ルータに対して、レシ
ーバが自らの存在とマルチキャストグループへの参加を通知するわけです。こ
のときに利用するプロトコルがIGMP(Internet Group Management Protocol)で
す。
ラストホップルータはIGMPによって、自身のインタフェース上にレシーバが存
在することを把握すると、マルチキャストネットワーク上のほかのルータに通
知します。この動作は、マルチキャストルーティングプロトコルで行います。
こうして、マルチキャストネットワークのルータは、順次、レシーバが存在す
るインタフェースを認識することができ、ディストリビューションツリーが完
成します。
マルチキャストソースからマルチキャストパケットが送信されると、ルータは
ディストリビューションツリーにしたがって、レシーバが存在するインタフェ
ースにルーティングを行い、レシーバまでマルチキャストパケットが届きます。

以上の動作は、マルチキャストルーティングプロトコルの種類によって異なり
ますが、ディストリビューションツリーの作成は

  • IGMP
    ラストホップルータとマルチキャストレシーバ間
  • マルチキャストルーティングプロトコル
    マルチキャストネットワーク内のルータ間
  • マルチキャストソースからのデータ送信
    マルチキャストソースは特別なプロトコルを使わず、単にマルチキャストパ
    ケットを送信

によって、行われていることに注意してください。

ディストリビューションツリーの種類

ディストリビューションツリーには、次の2つの種類があります。

・送信元ツリー(Source Tree)
マルチキャストソースごとに個別のディストリビューションツリーを作成し
ます。ディストリビューションツリーは、マルチキャストソースのアドレス
とグループアドレスで識別されます。Shortest Path Tree(SPT)とも言います。
・共有ツリー(Shared Tree)
複数のマルチキャストソースで共通したディストリビューションツリーを作
成します。マルチキャストグループアドレスでツリーを識別します。RP Tree
とも呼ばれます。

2つのディストリビューションツリーは、マルチキャストルーティングプロト
コルの動作モードによって使い分け、および組み合わせを行います。マルチキ
ャストルーティングプロトコルのDenseモードでは、送信元ツリーのディスト
リビューションツリーを作成します。マルチキャストルーティングプロトコル
のSparseモードでは送信元ツリーと共有ツリーを組み合わせたディストリビュ
ーションツリーを作成します。

マルチキャストルーティングプロトコルのモード

マルチキャストルーティングプロトコルには、

  • Denseモード
  • Sparseモード

という動作モードがあります。それぞれ、想定しているネットワーク環境、作
成するディストリビューションツリー、マルチキャストパケットをルーティン
グする際の動作が異なります。

Desnseモード

Denseモードの「Dense」は日本語で稠密と訳されます。Denseモードは稠密モ
ードとも言います。稠密とは、密度が濃いという意味で、Desnseモードはレシ
ーバが狭い範囲に集中している環境を想定しています。狭い範囲とは、つまり
LAN環境です。マルチキャストソースからマルチキャストレシーバが1つの拠点
のLANに接続されていて豊富な帯域幅を利用できる環境を想定しています。
Denseモードのマルチキャストパケットのルーティングは、Flood & Pruneモデ
ルと呼ばれています。これは、まずレシーバが存在する可能性があるインタフ
ェースすべてにマルチキャストパケットをルーティング(フラッディング)しま
す。その後、レシーバが存在しないインタフェースへルーティングしないよう
にします。「とりあえずフラッディングして、あとで不要なところはフラッデ
ィングをやめる」という大雑把な考え方でマルチキャストパケットのルーティ
ングを行います。
Denseモードでは、送信元ツリーのディストリビューションツリーを作成します。
PIM-DM、DVMRP、MOSPFなどがDenseモードのマルチキャストルーティングプロ
トコルです。

Sparseモード

Sparseモードの「Sparse」は「希薄」と訳されます。Sparseモードは希薄モー
ドともいいます。レシーバの分布がまばらであるようなネットワーク環境を想
定しています。つまり、1つの拠点のLANだけでなく、WANを介してたくさんの
拠点のLANにまたがったネットワーク環境でのマルチキャストルーティングを
行うのがSparseモードです。
多くの拠点をまたがる構成では、WAN回線においてLANほどたくさんの帯域を利
用できません。そのため、Denseモードのようにとりあえずフラッディングす
るという動作を行うとマルチキャスト以外の通信への影響が大きくなります。
そこで、SparseモードはExplicit Joinモデルという考え方で、ルータはレシ
ーバが存在する場所をきちんと把握して、レシーバが存在しているインタフェ
ースにのみマルチキャストパケットをルーティングします。
Sparseモードでは、送信元ツリーと共有ツリーを組み合わせたディストリビュ
ーションツリーを作成します。ツリーの境になるルータをRP(Rendezvous Point)とい
います。
PIM-SM、CBTがSparseモードのマルチキャストルーティングプロトコルです。

※RPは、PIM-SMの場合のツリーの境界のルータです。

以上の2つの動作モードがありますが、DenseモードのフラッディングはLAN環
境においても悪影響を及ぼすことが多いので、一般的にはマルチキャストルー
ティングプロトコルとしてSparseモードのプロトコルを利用します。

主なDenseモード、Sparseモードの特徴をまとめると次の表になります。

Ciscoルータでは、基本的にPIM-DMもしくはPIM-SMをサポートしています。Sparse
モードであるPIM-SMがマルチキャストルーティングプロトコルで一般的に利用
されるプロトコルです。

Follow me!