IGMPスヌーピングとは?

マルチキャストグループを設定するためには、インターネットグループ管理プロトコル(IGMP)を使用します。IGMPスヌーピングは、ネットワークスイッチがこれらのグループを認識し、それに応じたネットワークトラフィックの転送を可能にします。

学習目的

この記事を読み終えると、以下のことができるようになります。

  • 「IGMPスヌーピング」の定義
  • IGMPスヌーピングが必要な理由を理解する
  • IGMPスヌーピングが帯域幅を節約する方法を学ぶ

記事のリンクをコピーする

IGMPスヌーピングとは?

IGMPスヌーピングは、ネットワークスイッチがマルチキャストグループを識別するために使用する方法です。マルチキャストグループとは、同じネットワークトラフィックを受信するコンピュータやデバイスのグループです。これにより、スイッチはパケットをネットワーク内の適切なデバイスに転送することができます。

インターネットグループ管理プロトコル(IGMP)は、複数の機器が1つのIPアドレスを共有し、それらすべての機器が同一データを受信することを可能にするネットワーク層のプロトコルです。ネットワークに接続された端末は、IGMPを使用してマルチキャスティンググループに参加したり離脱したりします。各マルチキャスティンググループは、1つのIPアドレスを共有します。

しかし、ほとんどのネットワークスイッチは、ネットワーク層のプロトコルを処理しないため、どのデバイスがマルチキャストグループに参加しているかを知ることができません。IGMPスヌーピングは、これを回避する方法であり、技術的にはOSI 参照モデルの別のレイヤに属していても、スイッチがIGMPメッセージを「詮索」できるようにしています。IGMPスヌーピングは、IGMPプロトコルの機能ではなく、一部のネットワークスイッチに組み込まれている適応策です。

ネットワークスイッチとは?

ネットワークスイッチは、ネットワーク内の機器を接続し、それらの機器(「ホスト」とも呼ばれる)との間で行き来するデータパケットを転送します。ルーターとは異なり、スイッチはネットワーク間でパケットを転送せず、ネットワーク内でのみパケットを転送します。

ネットワーク層とは?データリンク層とは?

インターネットを機能させるためのプロセスは、さまざまな階層に分かれています。OSI 参照モデルは、さまざまなネットワーク層を定義する標準的な方法のひとつです。OSI 参照モデルは7つのレイヤで構成されています。レイヤ2はデータリンク層、レイヤ3はネットワーク層です。

未定義

ネットワークプロトコルと機器は、どのレイヤーに属するかによって部分的に定義されます。ネットワーク機器の機能は、その機器が関わることができるレイヤーによって制限されます。レイヤ2のスイッチは、レイヤ3のプロトコルの処理は行いません。

IGMPスヌーピングは、この制限を回避するものです。レイヤ2のスイッチでレイヤ3のIGMPトラフィックを監視し、この可視性を利用して、マルチキャストグループを追跡するテーブルを作成します。

IGMPスヌーピングを利用する利点とは?

トラフィックの氾濫を防ぐ:スイッチは、どの機器がマルチキャストグループに属しているかを知らない場合、単純に受信したすべてのマルチキャストトラフィックを転送してしまいます。その結果、ネットワーク上の機器は必要をはるかに超えたトラフィックを受け取ることになります。不要なパケットを処理するための演算能力を割かなければならず、正常な機能が低下したり、完全に停止したりしてしまいます。

ネットワークがIGMPスヌーピングを有効にしていない場合、攻撃者はこの事実を悪用してサービス妨害(DoS)攻撃を行うことができます。攻撃者は、不要なマルチキャストトラフィックを送信することでネットワークスイッチがネットワーク上に転送し、ネットワークの帯域幅や処理能力を圧迫することが可能です。(レイヤ3のDDoS攻撃の詳細についてはこちらをご覧ください )。

ネットワークの高速化:ネットワーク上を行き交うトラフィックが多いほど、ネットワークの帯域幅は圧迫されます。IGMPスヌーピングによってスイッチが転送するトラフィックの量を削減することで、帯域幅を節約します。これにより、利用可能な帯域幅が増え、ネットワークが高速化されます。

IGMPスヌーピングはIPv6ネットワークに対応しているか?

IGMPは、インターネットプロトコルの4番目のバージョンであるIPv4用のマルチキャストプロトコルです。IPv6では、マルチキャストにMulticast Listener Discovery(MLD)を採用しています。IPv6 のネットワークでは、IGMPスヌーピングの代わりにMLDスヌーピングが使用されます。