【要約】
ひかりTVのマルチキャスト問題はMLDスヌーピングで解決するのが一般的だけど、マルチキャストのトラフィック制御でも解決できるという話
---
ひかりTVを使っているLANでハブを使うと、マルチキャストのパケットがネットワーク全体に送信されてネットワーク負荷が上がる問題があって、その解決方法で有名なのが
MLDスヌーピングが使えるスマットスイッチを使う方法です。
前住んでいたところのネットワーク環境だと、MLDスヌーピングを使わなくても、若干ネットワーク負荷が上がるなぁぐらいだったのですが、新居のネットワーク環境だと、MLDスヌーピングが効いていないと、全くといっていいほど通信ができなくなります。
MLDスヌーピングが効いていれば問題にならないと言えばそうなのですが、この場合以下のような問題があります。
(1) スマートスイッチの状態がリセットされると、MLDスヌーピングの学習が終わるまではほぼ通信不可
(2) ひかりTVの「ひかりTV」(ケーブルテレビの番組)だけを見ている場合は、MLDスヌーピングの学習が終わっていれば問題ないですが、「地デジ」を見ると、学習し直しになってその間通信不可になる。「ひかりTV」と「地デジ」は別のマルチキャストとして扱われるようで、「地デジ」はさらにチャンネル毎にも別マルチキャスト。
(2)が特に問題で、ひかりTVのチャンネル切り替えをやると、その都度MLDスヌーピングの学習が終わるまで、インターネットとの通信が止まってしまい、かなり困った状態になりました。
そこで、MLDスヌーピングでは無い方法で問題を解決することにしました。
解決方法ですが、まずネットワークの構成を変えました。
【変更前】
【変更後】
変更前は、ルータ側のLANポートは1つしか使用せず、全部の通信をハブに渡して、それから機器に分岐していたのですが、変更後はひかりTVのSTBだけルータのLANポートに直接つなぎ、他の機器はハブにつなぐことにしました。
この状態だと、STBとハブにマルチキャストが常に飛ぶ状態になるので、ネットワークの負荷は大きいままです。そこで、ハブ(BS-GS2008)の設定で、ルータとつながるポートのマルチキャストパケットのトラフィック上限を下げました(BS-GS2008だと、詳細設定のトラフィック制御のマルチキャストを無制限 → 128p/s に。BS-GS2008のトラフィック制御は、ポートに入ってくるデータに対して効くようです)。
この設定によって、STB側でチャンネル切り替えをやっても、インターネットとの通信が止まることが無くなりました。
ただ、よく分からないことが2つあります。
(1) 変更後の構成だと、STBの電源OFFで、DLNAも使ってないのに、ひかりTVのマルチキャストが続く場合がある。10Mbpsぐらい帯域の無駄。
(2) 変更後の構成で、トラフィック制御せずに、MLDスヌーピングの設定をしても、(学習が終われば)ネットワークの負荷は減るはずなんですが、なぜか負荷が下がらなかった。
理由が分からないのですが、とりあえず問題になるまでは放置です。