マルチキャストグループへ参加するとは

マルチキャストのことを考えていく上で、しばしば「マルチキャストグループへ参加する」という表現が使われます。マルチキャストグループへ参加するとは、マルチキャストデータを受信できるようにすることです。以降で、マルチキャストグループへの参加について解説します。

ホストでのマルチキャストデータの受信

ホストでマルチキャストされたデータの受信についてもう少し詳しく見てみましょう。ホストはイーサネットのLANに接続されていることを前提として考えます。

ユニキャスト/ブロードキャストの受信

イーサネットに接続されているホストはNICで受信したイーサネットフレームの宛先MACアドレスを見て、自分宛てのデータであるかどうかを確認します。受信したイーサネットフレームの宛先MACアドレスが以下の場合、自分宛てとみなします。

  • NICのMACアドレス
  • ブロードキャストアドレス(FF-FF-FF-FF-FF-FF)

そして、自分あてであればそのデータを上位のプロトコル(IP)へ引き渡していき、ホスト内のTCP/IPの階層にしたがってデータの処理を行います。なお、宛先MACアドレスがNICのMACアドレスになっているものはユニキャストのデータで、ブロードキャストアドレスになっているものはブロードキャストされたデータです。

図 ユニキャスト/ブロードキャストの受信
図 ユニキャスト/ブロードキャストの受信

マルチキャストの受信

ここでホストがマルチキャストグループに参加したとします。マルチキャストグループの参加は、マルチキャストを利用するアプリケーションで制御されるのですが、クラスDで定義されるマルチキャストグループのIPアドレスに対応するMACアドレスが自動的に決定されます。

そうすると、ホストは参加したマルチキャストグループに対するMACアドレスも自分のMACアドレスであるとみなすようになります。受信したイーサネットフレームの宛先MACアドレスを見て、以下の場合、自分宛てであると判断します。

  • 自分のNICのMAC
  • ブロードキャストアドレス
  • 参加しているマルチキャストグループに対応したMACアドレス

マルチキャストアドレスグループに対応したMACアドレスについては、以下の記事で詳しく解説しています。


こうした自分宛てのデータは上位プロトコルであるIPへ引き渡して処理を行います。

図 マルチキャストの受信
図 マルチキャストの受信

なお、ホストは一度に複数のマルチキャストグループに参加することができます。その場合は、参加しているそれぞれのマルチキャストグループに対応するMACアドレスをすべて自分のMACアドレスとみなします。また、マルチキャストグループから任意のタイミングで抜けることもできます。

IPマルチキャストの仕組み