原因
マルチキャストを送信する端末と受信する端末が同じNWセグメントに収容されていて、かつそのセグメントのスイッチングを行っているスイッチで、IGMP snooping が有効になっている可能性があります。
原因詳細
マルチキャストの送信端末と受信端末が同じセグメントにある場合、マルチキャスト通信をするためには、IGMPを使う必要がなく、そのセグメントにおいて IGMP クエリアの設定 (=ルータでの PIM の設定) は普通はしません。
マルチキャスト受信端末は最初にマルチキャスト参加のための IGMP を投げます。するとスイッチは IGMP snooping 機能により、そのポートへのマルチキャスト通信を許可します。
ルータのそのセグメントのインタフェースに「PIM の設定」をしていれば、「IGMP クエリア機能」も有効になり、そのルータが一度 IGMP を受信すればその後は定期的に死活監視を行い、クライアントも定期的に IGMP を送信することになります。
そのため、IGMP snooping を設定しているスイッチも定期的に IGMP を受信するので問題は発生しません。
しかし、このケースでは PIM の設定をしていないため、クライアントは IGMP を定期的には投げません。最初の 1 回だけです。
そのため、いつしか IGMP snooping のタイマーが切れ、そのポートへのマルチキャスト通信を拒否し始めます。
アプリケーションによっては、相手が受信できていないと理解すると、ユニキャストで再送をし始めるものもあります。
解決方法
スイッチで IGMP snooping 機能を OFF にするか、同セグメントのインタフェースをもつルータで IGMP クエリア (PIM) の設定をして下さい。
コメント