マルチキャスト・トラフィックはデバイス間の1対多通信です。 受信端末が複数あっても、配信サーバからは1つのビデオ動画(下図だと10Mbps)しか配信されません。その後、ルータ間は必要なリンクにだけ、ビデオ動画が1つだけ流れます。(もし、ユニキャストだと、サーバは受信者数分の30Mbpsを配信しなければいけません)。最後のルータには、そのビデオ動画が必要な受信端末にだけデータ送信されます。(受信端末以外は、そのビデオ動画を破棄します)

マルチキャストの考え方
マルチキャスト通信の概要
マルチキャスト通信は、マルチキャストアドレスを使用して、受信端末に配信されます。 アドレス空間はIPアドレスのDクラスとして、224.0.0.0.0/4が割り当てられています。 例えば、配信サーバはマルチキャストアドレス239.1.1.1宛にビデオ動画を送信し、受信端末は239.1.1.1宛の通信がきたら、受信します。

マルチキャストを理解するには
初めてマルチキャストアドレスの話を聞くと、通常のIPアドレス(192.168.1.1/24)などと何が違うのか、よくわからなくなります。理解をするには、まず、このマルチキャストアドレスはIPアドレスと思ってはいけません。IPアドレスの形をした単なる数字の羅列です。
IPアドレスではないので、サブネットマスクとかブロードキャストアドレスとか、そういうものもありません。IPアドレスではないので、端末に付与することもできません。
この数字は何なのかというと、テレビでいうチャンネル番号です。例えば、日テレだと4チャンネル、フジテレビだと8チャンネルなどです。
例えば、配信サーバが日テレとして、4チャンネル(CH)で動画を配信しているとします。

まだ、4CHを受信したい人が誰もいません。ここで、1台端末が4CHを見たくなったとします。テレビの場合、リモコンで、4CHをポチッと押しますよね?

すると、端末から一番近いルータに、「4CHを配信してください!」と要求を出します。

4CHの配信を要求されたルータ(R4)は、自身に4CHの配信は流れてきていないので、配信サーバ向けに「4CHを配信してください!」と要求します。これが順番に配信サーバまで要求されます。

R1まで届くと、4CHの日テレ動画が流れているので、R1はそれをR2に配信します。これを順に、R3、R4と配信し、最後、受信者まで届けます。

これが、マルチキャストの理解の仕方です。 マルチキャストアドレス 239.1.1.1 の配信の場合は、「239.1.1.1チャンネル」と思ってください。なぜ、IPアドレス(Dクラス)を使用するかというと、 単なるチャンネル番号ですが、IPパケットとして、ルータを経由するため、形だけでもIPアドレスと同じでないと、ルータが転送先として読み取れないからです。
このように、ルータを経由して、マルチキャストを流すことを、マルチキャストルーティングと言います。
また、「4CHを配信してください!」と端末やルータが配信サーバ宛に要求しますが、端末からの要求はIGMP、ルータ間の要求はPIMというプロトコルをそれぞれ使用します。

ただし、例えば、配信サーバ宛に見たいマルチキャストチャンネルを要求するわけですが、配信サーバ自体のIPアドレスがわからない場合があります。この場合は、一旦、ランデブーポイントへ要求し、配信サーバのアドレスを入手した後、再度、配信サーバへ再要求するパターンもあります。
くどいですが、マルチキャストアドレスは形だけIPアドレスの単なるチャンネル番号です。端末に付与することもできません。送信元アドレスになることもありません。
では、マルチキャストアドレス 通信のイーサネットヘッダの宛先MACアドレスは、どうなるのでしょうか。これは、マルチキャストアドレスから規則にしたがって、生成します。
これは、次の記事で書きたいと思います。
最後までお読み頂きありがとうございました。
コメント