例: マルチキャスト スヌーピングの設定
マルチキャスト スヌーピングについて
ルーターなどのネットワーク デバイスは、主にパケット レベル(レイヤー 3)で動作します。ブリッジや LAN スイッチなどのその他のネットワーク デバイスは、主にフレーム レベル(レイヤー 2)で動作します。主にパケット レベルのレイヤー 3 でマルチキャスト機能を実行しますが、レイヤー 3 IP マルチキャスト グループ アドレスを、フレーム レベルでレイヤー 2 MAC マルチキャスト グループ アドレスにマップする方法があります。
ルーターはレイヤー2とレイヤー3のアアドレス情報の両方を処理できます。フレームとそのアドレスを処理して、内部のカプセル化されたパケットにアクセスする必要があるから。ルーターは、PIM、IGMP などのレイヤー 3 マルチキャスト プロトコルを実行し、マルチキャスト コンテンツを転送する場所、またはインターフェイス上のホストがグループに参加またはグループを離れる時間を決定できます。しかし、レイヤー 2 デバイスとして、ブリッジおよび LAN スイッチは、フレームが転送するパケット内のマルチキャスト情報にアクセスできるとは考えされません。
では、ブリッジなどのレイヤー 2 デバイスで、インターフェイス上のデバイスがマルチキャスト ツリーに参加する時間や離れるのを判断する方法や、接続された LAN 上のホストが特定のマルチキャスト グループのコンテンツを受信したいかどうかを判断するにはどうしたら良いでしょうか。
その解決策は、レイヤー 2 デバイスがマルチキャスト スヌーピングを実装する方法です。マルチキャスト スヌーピングは一般的な用語であり、レイヤー 3 パケット コンテンツのレイヤー 2 デバイス「スヌーピング」プロセスに適用され、フレームの処理または転送に必要なアクションを決定します。スヌーピングには、IGMP スヌーピングや PIM スヌーピングなど、より具体的な形式があります。すべての場合において、スヌーピングは通常「禁止されている」レイヤー3(パケット)情報にアクセスするレイヤー2で機能するように設定されたデバイスを伴います。スヌーピングにより、これらのデバイスでのマルチキャストが効率化されます。
詳細については、
マルチキャスト スヌーピングと VPLS ルート保護について
スヌーピングは、スパニング ツリー プロトコルなどのレイヤー 2 プロトコルが、IGMP(インターネット グループ管理プロトコル)や他のマルチキャスト プロトコルなどのレイヤー 3 プロトコルの運用の詳細を認識している場合に発生します。VLAN スイッチなどのレイヤー 2 デバイスが、マルチキャスト グループのメンバーの メディア アクセス制御(MAC)アドレスなどのレイヤー 3 情報を認識している必要がある場合、スヌーピングが必要です。
VPLS ルート保護 は、マルチホーム環境の 1 つのインターフェイスだけがスパニング ツリー プロトコル フレームをアクティブに転送するスパニング ツリー プロトコル プロセスです。これにより、ブリッジング ループから スパニング ツリー のルートを保護する一方で、マルチホーム トポロジの両方のデバイスが、IGMP メンバーシップ レポートなどのスヌーピングされた情報から保護します。
たとえば、互いに接続されている 2 つの カスタマー エッジ(CE)ルーター(CE1 と CE2)に接続され(CE1–CE2 リンクが設定されています)、2 台の PE(プロバイダ エッジ)ルーター(PE1 と PE2)にマルチホーム化されたマルチキャスト対応ホストの集めを考えしてください。ルート保護操作により、アクティブなPE-CEリンク上で、アクティブなPEは転送スパニングツリー プロトコル情報のみを受信します。CE1-CE2 リンクが動作している限り、これは問題ではありません。ただし、CE1 と CE2 の間のリンクに障害が発生し、他の PE がアクティブ スパニング ツリー プロトコル リンクになる場合、新しいアクティブ PE でマルチキャスト スヌーピング情報を使用できません。新しいアクティブ PE は、このアクティブなルーターによってCEされるホストにマルチキャスト トラフィックをCEしません。
ホストが新しいグループ メンバーシップ IGMP レポートを他のルーターに送信すると、サービス停止CEされます。ただし、正常なスパニングツリー プロトコルのルート保護操作にもかかわらず、マルチキャスト スヌーピング情報が両方の PE に提供される場合、サービスの停止を回避できます。
マルチキャスト スヌーピングを設定して、仮想スイッチおよびブリッジ ドメインのスパニング ツリー上のトポロジの変更に関するメッセージを無視できます。コマンドを使用して、 ignore-stp-topology-change
トポロジの変更に関するスパニング ツリーを無視できます。
詳細については、
マルチキャスト スヌーピングの設定
特定のルーターに対して一般的なマルチキャスト スヌーピング パラメータMX シリーズ設定するには、次のステートメントを含 multicast-snooping-options
にします。
multicast-snooping-options { flood-groups [ ip-addresses ]; forwarding-cache { threshold suppress value <reuse value>; } graceful-restart <restart-duration seconds>; ignore-stp-topology-change; multichassis-lag-replicate-state; nexthop-hold-time milliseconds; traceoptions { file filename <files number> <size size> <world-readable | no-world-readable>; flag flag <flag-modifier> <disable>; } }
このステートメントは、以下の階層レベルに含めできます。
[edit routing-instances routing-instance-name]
[edit logical-systems logical-system-name routing-instances routing-instance-name]
デフォルトでは、マルチキャスト スヌーピングは無効になっています。VPLS でマルチキャスト スヌーピングを有効にするか、インスタンス仮想スイッチタイプのマルチキャスト スヌーピングを有効にできます。
VPLS または 仮想スイッチ インスタンスの下で設定された複数のブリッジ ドメインがある場合、インスタンス レベルで設定されたマルチキャスト スヌーピング オプションは、すべてのブリッジ ドメインに適用されます。
ステートメントは、仮想スイッチ ルーティング インスタンス タイプでのみサポートされ、 ignore-stp-topology-change
階層の下ではサポート [edit logical-systems]
されていません。
ステートメント nexthop-hold-time
は階層でのみサポートされ、仮想スイッチまたはvplsのインスタンス タイプ [edit routing-instances routing-instance-name]
でのみサポートされています。
詳細については、
例: マルチキャスト スヌーピングの設定
この例では、ブリッジまたはVPLSルーティングインスタンスシナリオでマルチキャストスヌーピングを設定する方法を示しています。
要件
この例では、次のハードウェア コンポーネントを使用しています。
1 MX シリーズ ルーター
マルチキャスト ルーターとして機能する 1 つのレイヤー 3 デバイス
開始する前に、以下を実行します。
インターフェイスを設定します。
内部ゲートウェイ プロトコルを設定します。ルーティング デバイス については、 Junos OS ルーティング プロトコル ライブラリ を参照してください。
マルチキャスト プロトコルを設定します。この機能は、以下のマルチキャスト プロトコルで機能します。
DVMRP
PIM-DM
PIM-SM
PIM-SSM
概要とトポロジー
IGMP スヌーピングにより、レイヤー 2 デバイスが、すべてのインターフェイスのマルチキャスト トラフィックを無防ぐフラッディングを回避します。マルチキャスト スヌーピング用に設定した設定は、IGMP スヌーピングの動作を管理するのに役立ちます。
デフォルトのマスター インスタンス、個々のブリッジ または VPLS インスタンスで、マルチキャスト スヌーピング オプションを設定できます。デフォルトのマスター インスタンス設定はグローバルで、論理ルーター内のすべての個々のブリッジ または VPLS インスタンスに適用されます。個々のインスタンスの設定によって、グローバル設定が上書きされます。
この例では、次のステートメントを含まれています。
フラッド グループ—トラフィックのフラッディングが必要なマルチキャスト グループ アドレスを一覧表示できます。この設定は、IGMP スヌーピングが必要なマルチキャスト フラッディングを回避できない場合に役立つ場合に役立ちます。224.0.0.1から224.0.0.255のマルチキャスト アドレスのブロックは、ローカルワイヤーで使用するために予約されています。この範囲のグループは、ルーティング プロトコルやローカル検出メカニズムなど、さまざまな用途に対して割り当てられます。たとえば、すべてのOSPFルーターに 224.0.0.5 をOSPFします。
forwarding-cache—転送エントリーの古い利用方法と、エントリー数の制御方法を指定します。
キャッシュエントリが一定の最大に達した場合にスヌーピングを抑制(中断)するしきい値を転送キャッシュに設定し、その数が別のしきい値に達した場合にはキャッシュを再利用できます。デフォルトでは、ルーターではしきい値は有効になりません。
しきい値を抑制すると、新しいマルチキャスト転送キャッシュ エントリーが抑制されます。オプションの再利用しきい値は、ルーターが新しいマルチキャスト転送キャッシュ エントリーの作成を開始するポイントを指定します。両方のしきい値の範囲は 1~200,000 です。設定されている場合、再利用値は抑制値より小さい値である必要があります。抑制値は必須です。オプションの再利用値を指定しない場合、マルチキャスト転送キャッシュ エントリーの数は抑制値に制限されます。マルチキャスト転送キャッシュ エントリーの数が抑制値を下回った場合、すぐに新しいエントリーが作成されます。
グレースフルリスタート —再起動が再学習されたルートに置き換える前に、学習したルートの学習時間を設定します。マルチキャスト スヌーピングのためのグレースフル リスタートが無効になっている場合、スヌーピング情報は再起動後ルーティング エンジンされます。
デフォルトでは、グレースフル リスタート時間は 180 秒(3 分)です。この値は0~300秒の間で設定できます。長さを 0 に設定すると、グレースフルリスタートは事実上無効になります。この値は、IGMP クエリーの応答間隔よりも若干大きく設定します。
ignore-stp-topology-change—スパニング ツリー トポロジの状態の変更に関するメッセージをMX シリーズするトポロジ ルーターを設定します。
デフォルトでは、デバイス ルーター上の IGMP スヌーピング プロセスにより、MX シリーズ プロトコル(スパニング ツリー プロトコル)によって行われたインターフェイスの状態の変更が検知されます。
VPLSマルチホーミング環境では、2台のPEルーターが相互接続された2台のCEルーターに接続され、PEルーター上でSTPルート保護が有効になっている場合、PEルーターのインターフェイスの1つが転送状態で、もう1つがブロッキング状態になっています。
2 つのルーターを相互接続CE障害が発生した場合、ブロッキング状態の PE ルーター インターフェースは転送状態に移行します。
PE ルーターのインターフェイスは、次の一般クエリーまたはグループ固有のクエリーに応答してメンバーシップ レポートを受け取るのを待つ必要があります。代わりに、IGMP スヌーピング プロセスが一般的なクエリー メッセージを特定のルーターにCEします。アクセス ルーターに接続されたホストCE、関心を持つすべてのグループのレポートに返信します。
2 つのスイッチ ルーターを相互接続CEすると、両方の PE ルーター上の元のスパニング ツリー状態が復元されます。転送 PE はスパニング ツリー トポロジー変更メッセージを受信し、CE ルーターに一般的なクエリー メッセージを送信して、グループ メンバーシップの状態を直ちに再構築します。
メモ:ステートメント
ignore-stp-topology-change
は、仮想スイッチ ルーティング インスタンス タイプ でのみサポートされています。
トポロジ
図 1 は、顧客ネットワークに 2 つのデバイスとデバイス間のリンクがCE VPLS マルチホーミング トポロジを示しています。各CE 1 つの PE に接続されています。

構成
手順
CLI迅速な設定
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致する必要がある詳細情報を変更し、コマンドを階層レベルで CLI にコピー アンド ペーストして、設定モードから を入力します。 [edit]
commit
set bridge-domains domain1 multicast-snooping-options forwarding-cache threshold suppress 100 set bridge-domains domain1 multicast-snooping-options forwarding-cache threshold reuse 50 set bridge-domains domain1 multicast-snooping-options graceful-restart restart-duration 120 set routing-instances ce1 instance-type virtual-switch set routing-instances ce1 bridge-domains domain1 domain-type bridge set routing-instances ce1 bridge-domains domain1 vlan-id 100 set routing-instances ce1 bridge-domains domain1 interface ge-0/3/9.0 set routing-instances ce1 bridge-domains domain1 interface ge-0/0/6.0 set routing-instances ce1 bridge-domains domain1 multicast-snooping-options flood-groups 224.0.0.5 set routing-instances ce1 bridge-domains domain1 multicast-snooping-options ignore-stp-topology-change
手順
次の例では、設定階層内のさまざまなレベルに移動する必要があります。デバイスのナビゲーションの詳細については、「 CLI ガイド 」Junos OS CLI を参照してください。
IGMP スヌーピングを設定するには、次の手順に示します。
マスター ルーティング インスタンスでマルチキャスト スヌーピングの設定を構成します。
[edit bridge-domains domain1] user@host# set multicast-snooping-options forwarding-cache threshold suppress 100 reuse 50 user@host# set multicast-snooping-options graceful-restart 120
ルーティング インスタンスを設定します。
[edit routing-instances ce1] user@host# set instance-type virtual-switch
ルーティング インスタンスでブリッジ ドメインを設定します。
[edit routing-instances ce1 bridge-domains domain1] user@host# set domain-type bridge user@host# set interface ge-0/0/6.0 user@host# set interface ge-0/3/9.0 user@host# set vlan-id 100
フラッド グループを設定します。
[edit routing-instances ce1 bridge-domains domain1] user@host# set multicast-snooping-options flood-groups 224.0.0.5
スパニングツリー トポロジーの状態の変更に関するメッセージを無視するようにルーターを設定します。
[edit routing-instances ce1 bridge-domains domain1] user@host# set multicast-snooping-options ignore-stp-topology-change
デバイスの設定が完了したら、設定をコミットします。
user@host# commit
結果
および コマンドを入力して設定 show bridge-domains
を show routing-instances
確認します。
user@host# show bridge-domains domain1 { multicast-snooping-options { forwarding-cache { threshold { suppress 100; reuse 50; } } } }
user@host# show routing-instances ce1 { instance-type virtual-switch; bridge-domains { domain1 { domain-type bridge; vlan-id 100; interface ge-0/3/9.0; ## 'ge-0/3/9.0' is not defined interface ge-0/0/6.0; ## 'ge-0/0/6.0' is not defined multicast-snooping-options { flood-groups 224.0.0.5; ignore-stp-topology-change; } } } }
検証
設定を検証するには、次のコマンドを実行します。
show igmp スヌーピング インターフェイス
show igmp スヌーピング メンバーシップ
show igmp スヌーピング統計情報
show multicast スヌーピング ルート
show route table(ルート テーブルを表示)
マルチキャスト スヌーピングの一括更新を有効化
個々のインターフェイスがマルチキャスト グループに参加したりマルチキャスト グループを離れるたびに、インターフェイスと転送テーブルに新しいルーティング テーブルがインストールされます。ステートメントを使用して nexthop-hold-time
、1~1000 ミリ秒(ms)の時間を指定できます。その間に送信インターフェイスの変更が蓄積され、その後 ルーティング テーブル と転送テーブルに一括で更新されます。一括更新により、メッセージの結合および終了の処理に必要な処理時間とメモリ オーバーヘッドが軽減されます。これは、IPTV(Internet Potocol Television)などのアプリケーションに役立ちます。このアプリケーションでは、チャネルを変更するユーザーは、グループに参加する、またはグループを短期間で離れる数千ものインターフェイスを作成できます。IPTV のシナリオでは、通常、比較的少ない制御されたストリーム数と多数の送信インターフェースがあります。一括更新を使用すると、結合の遅延を減らします。
この例では、 ステートメントを使用して、インスタンスタイプ仮想スイッチのホールドタイム20ミリ秒を設定 nexthop-hold-time
します。
以下の階層レベルでは、仮想スイッチまたはvplsのルーティング インスタンス タイプ nexthop-hold-time
のステートメントのみを含めできます。
[edit routing-instances routing-instance-name multicast-snooping-options]
ステートメントが nexthop-hold-time
ルーター設定から削除されている場合、一括更新は無効になります。
詳細については、
マルチシャス リンク アグリゲーション グループ インターフェイスでのマルチキャスト スヌーピングの有効化
階層レベルにステートメントを含め、マルチチェシ リンク アグリゲーション グループ multichassis-lag-replicate-state
(MC-LAG)インターフェイスで IGMP スヌーピングと状態の複製を [edit multicast-snooping-options]
有効にします。
[edit] multicast-snooping-options { multichassis-lag-replicate-state; }
デュアルリンク MC-LAG インターフェイスのリンク間で Join メッセージと Leave メッセージを複製すると、サービス中断が発生する MC-LAG インターフェイスのメンバーシップ情報を迅速に復元できます。
状態の複製がない場合、デュアルリンク MC-LAG インターフェイスでサービス中断が発生した場合(アクティブ リンク スイッチでスタンバイの場合など)、インターフェイスのメンバーシップ情報が、ネットワークに IGMP クエリーを生成して復旧します。この方法の完了に 1~10 秒かかる場合があります。一部のアプリケーションでは時間がかかる場合があります。
MC-LAG インターフェイスに状態複製が提供されている場合、MC-LAG デバイスで受信した IGMP join メッセージまたは Leave メッセージは、ICCP(Interchassis Communication Protocol)接続を介して、アクティブ MC-LAG リンクからスタンバイ リンクに複製されます。スタンバイ リンクは、対応するアクティブな MC-LAG リンクから受信された場合にメッセージを処理します。ただし、メッセージ自体はネクスト ホップとして追加されません。また、メッセージがネットワークにフラッディングする必要はありません。フェイルオーバー後、複製されたメッセージを取得することで、リンクのマルチキャスト メンバーシップ ステータスを数秒以下で回復できます。
この例では、MC-LAGインターフェイスの状態複製を有効にします。