IGMP その1

IGMPの概要

IGMPはマルチキャストレシーバがラストホップルータへマルチキャストグルー
プへの参加、脱退を通知するためのプロトコルです。

マルチキャストソースとマルチキャストレシーバが同じサブネットに接続され
ている場合は、IGMPは特に必要ありません。しかし、マルチキャストソースと
マルチキャストレシーバが異なるサブネットに接続されている場合が多いでし
ょう。この場合、ディストリビューションツリーを作成する必要があります。
マルチキャストレシーバが自身のマルチキャストグループの参加をIGMPでラス
トホップルータへ通知することにより、ラストホップルータはレシーバの存在
を認識します。そして、レシーバへマルチキャストパケットをルーティングす
るために、マルチキャストルーティングプロトコルと連携してディストリビュ
ーションツリーの作成を行っていくことになります。
また、IGMPによってマルチキャストレシーバがグループから脱退するというこ
ともラストホップルータへ通知することができます。

IGMPには、v1、v2、v3と3つのバージョンがあります。ここでは、v2を中心に
解説します。

IGMPv2のフォーマット

IGMPはIPでカプセル化されて転送されます。IPヘッダのプロトコル番号は2で
す。IGMPのフォーマットは次の図のようになります。

IGMPのフォーマットの各フィールドは次のような意味があります。

  • タイプ
    IGMPメッセージタイプを表します。
    →0x11:メンバーシップクエリー
    →0x12: v1メンバーシップレポート
    →0x13: v2メンバーシップレポート
    →0x17:リーブグループ
  • 最大応答時間
    クエリーを受信してからメンバーシップレポートを返すまでの最大の遅延時間
  • チェックサム
    エラーチェック用
  • グループアドレス
    マルチキャストグループアドレス
  • 次回にIGMPv2のフォーマットを元にIGMPv2の動作の仕組みを解説します。

    Follow me!