ブロードキャスト抑制の設定
この章では、Catalyst 6500 シリーズ スイッチ上でブロードキャスト抑制を設定する方法について説明します。
(注) この章で使用しているコマンドの完全な構文および使用方法の詳細については、『Catalyst 6500 Series Switch Command Reference』を参照してください。
この章で説明する内容は、次のとおりです。
• 「ブロードキャスト抑制の機能」
• 「スイッチ上でのブロードキャスト抑制の設定」
ブロードキャスト抑制の機能
(注) ブロードキャスト抑制およびマルチキャスト抑制は、WS-X6148A-GE-TX、WS-X6148A-GE-45A、および WS-X6548-GE-TX モジュール上でサポートされません。
ブロードキャスト抑制により、1 つのポート上でのブロードキャスト ストームによる LAN 上のスイッチド ポートの混乱を防ぐことができます。LAN ブロードキャスト ストームは、LAN 上でブロードキャストまたはマルチキャスト パケットのフラッディングが生じ、トラフィック過剰となって、ネットワークのパフォーマンスが低下した場合に発生します。また、プロトコル スタックまたはネットワーク設定のエラーも、ブロードキャスト ストームの原因になります。
ブロードキャスト抑制ではフィルタリングを使用して、LAN 上のブロードキャスト アクティビティを 1 秒間測定し、あらかじめ設定されたスレッシュホールドと測定値を比較します。スレッシュホールドに達している場合、次のブロードキャスト アクティビティを指定された時間だけ抑制します。ブロードキャスト抑制は、ディセーブルがデフォルトの設定です。
図34-1図34-1 に、一定時間におけるポート上のブロードキャスト トラフィック パターンを示します。この例では、T1 ~ T2 間および T4 ~ T5 間において、ブロードキャスト抑制が機能しています。これらの間では、ブロードキャスト トラフィック量が、設定されたスレッシュホールドを超えているためです。
図34-1 ブロードキャスト抑制
ブロードキャスト抑制スレッシュホールド値と時間の長さによって、さまざまなレベルの粒度でブロードキャスト抑制アルゴリズムが機能します。スレッシュホールドを上げるほど、多くのブロードキャスト パケットが通過します。
Catalyst 6500 シリーズ スイッチのブロードキャスト抑制は、ハードウェアで実行されます。スイッチの抑制回路がポートからスイッチング バスへ流れるパケットをモニタします。パケット宛先アドレスにある個別の、またはグループのビットにより、ブロードキャスト抑制回路はパケットのユニキャストまたはブロードキャストを判断します。1 秒単位でそのときのブロードキャスト カウントを追跡し、スレッシュホールドに達した場合は、以後のブロードキャスト パケットを排除します。
ハードウェアによるブロードキャスト抑制では帯域幅ベースの方式でブロードキャスト アクティビティを測定するため、実装で最も重要な要素は、ブロードキャスト トラフィックが使用できる全帯域幅の割合です。スレッシュホールド値を 100% にすると、ブロードキャスト トラフィックに関する制限はなくなります。 set port broadcast コマンドを使用すると、ブロードキャスト抑制スレッシュホールド値を設定できます。
パケットは均一なインターバルで着信するわけではないので、ブロードキャスト アクティビティが測定される 1 秒間のインターバルがブロードキャストの抑制動作に影響を与える可能性があります。
ギガビット イーサネット ポートでは、ブロードキャスト抑制を使用してマルチキャストおよびユニキャスト トラフィックにフィルタをかけることができます。ポートでマルチキャストまたはユニキャスト トラフィックを個別に抑制できます。いずれの場合も、ブロードキャスト抑制を設定する必要があります。マルチキャストまたはユニキャスト トラフィックに使用する全帯域幅の割合を指定すると、同じ制限がブロードキャスト トラフィックにも適用されます。
(注) ブロードキャスト、マルチキャスト、またはユニキャストの抑制が行われた場合に、ポートが errdisable ステートになるように設定できます。詳細については、「errdisable ステートのイネーブル化」を参照してください。
(注) マルチキャスト抑制では、Bridge Protocol Data Unit(BPDU; ブリッジ プロトコル データ ユニット)パケットは廃棄されません。
(注) マルチキャスト抑制が次のモジュール(WS-X6724-SFP、WS-X6748-GE-TX、WS-X6748-SFP、WS-X6704-10GE、WS-SUP32-GE-3B、および WS-SUP32-10GE-3B)上でイネーブルの場合、BPDU の受信は保証されません。これらのモジュール上でマルチキャスト抑制をイネーブルにすると、マルチキャスト抑制のスレッシュホールドを超過した場合に BPDU が抑制される原因となります。抑制スレッシュホールドを超過した場合、副次的にルート ポート損失またはスパニング ツリー ループが発生する可能性があるため、BPDU を受信する必要があるポートではマルチキャスト抑制を使用しないよう強く推奨します。
スイッチ上でのブロードキャスト抑制の設定
ここでは、Catalyst 6500 シリーズ スイッチ上でブロードキャスト抑制を設定する手順について説明します。
• 「ブロードキャスト抑制のイネーブル化」
• 「ブロードキャスト抑制のディセーブル化」
• 「errdisable ステートのイネーブル化」
ブロードキャスト抑制のイネーブル化
1 つまたは複数のポートでブロードキャスト抑制をイネーブルにするには、イネーブル モードで次の作業を行います。
|
|
|
ステップ 1 |
1 つまたは複数のポートのブロードキャスト抑制スレッシュホールドを、全帯域幅の割合を指定してイネーブルにします。 |
set port broadcast mod/port threshold % [ violation { drop-packets | errdisable }] [ multicast { enable | disable }] [ unicast { enable | disable }] |
ステップ 2 |
ブロードキャスト抑制の設定を確認します。 |
show port broadcast [ mod [ / port ]] |
(注) ブロードキャスト抑制のスレッシュホールドは、0.01% まで指定できますが、すべてのモジュールがその細かさで調整されるわけではありません。スレッシュホールドは通常、0.01 ~ 0.05% 程度の変動があります。スレッシュホールド値を細かく指定すると、スレッシュホールドの割合は可能なかぎり細密に調整されます。
次に、帯域幅ベースのブロードキャスト抑制をイネーブルにし、設定を確認する例を示します。
Console> (enable) set port broadcast 3/1-6 75.25%
Ports 3/1-6 broadcast traffic limited to 75.25%.
On broadcast suppression ports 3/1-6 are configured to drop-packets.
Console> (enable) show port broadcast 3
Port Broadcast-Limit Multicast Unicast Total-Drop Action
-------- --------------- --------- ------- -------------------- ------------
3/1 75.25 % - - 0 drop-packets
3/2 75.25 % - - 0 drop-packets
3/3 75.25 % - - 2 drop-packets
3/4 75.25 % - - 0 drop-packets
3/5 75.25 % - - 0 drop-packets
3/6 75.25 % - - 0 drop-packets
次に、モジュール 2 のポート 1 に対してマルチキャストおよびブロードキャスト トラフィックを 80% に制限し、その設定を確認する例を示します。
Console> (enable) set port broadcast 2/1 80% multicast enable
Port 2/1 broadcast and multicast traffic limited to 80.00%.
On broadcast suppression port 2/1 is configured to drop-packets.
Console> (enable) show port broadcast 2/1
Port Broadcast-Limit Multicast Unicast Total-Drop Action
-------- --------------- --------- ------- -------------------- ------------
2/1 80.00 % 80.00 % - 0 drop-packets
ブロードキャスト抑制のディセーブル化
1 つまたは複数のポート上でブロードキャスト抑制をディセーブルにするには、イネーブル モードで次の作業を行います。
|
|
1 つまたは複数のポート上で、ブロードキャスト抑制をディセーブルにします。 |
clear port broadcast mod/port |
次に、1 つまたは複数のポート上でブロードキャスト抑制をディセーブルにする例を示します。
Console> (enable) clear port broadcast 2/1
Port 2/1 traffic unlimited.
errdisable ステートのイネーブル化
(注) ポートが NVRAM(不揮発性 RAM)ではイネーブルに設定されていても、実行時に何らかのプロセスによってディセーブルにされた場合、そのポートは errdisable ステートになります。たとえば、UniDirectional Link Detection(UDLD; 単一方向リンク検出)が単一方向リンクを検出すると、ポートは実行時にシャットダウンされます。ただし、そのポートの NVRAM 設定はイネーブルに設定されている(ユーザがポートをディセーブルにしていない)ので、ポートのステータスは errdisable として表示されます。
ブロードキャスト、マルチキャスト、またはユニキャストの抑制が行われた場合に、ポートにパケットを廃棄させるか、またはポートを errdisable ステートにするのかを設定できます。errdisable ステート機能は、ポート単位でイネーブルまたはディセーブルに設定できます。デフォルトではこの機能はディセーブルになります(デフォルトでは drop-packets オプションがイネーブルになります)。
(注) ブロードキャスト、マルチキャスト、またはユニキャストの抑制が行われて、ポートに errdisable 機能が設定されている場合、そのポートがパケットの廃棄を停止し、errdisable ステートになるまでに遅延時間が生じます。この遅延時間はスイッチによって異なる可能性があり、正確な遅延時間を判断することはできません。
1 つのポート上で errdisable ステート機能をイネーブルにするには、イネーブル モードで次の作業を行います。
|
|
|
ステップ 1 |
errdisable ステートをイネーブルにします。 |
set port broadcast mod/port threshold % [ violation { drop-packets | errdisable }] [ multicast { enable | disable }] [ unicast { enable | disable }] |
ステップ 2 |
errdisable ステートがイネーブルに設定されたことを確認します。 |
show port broadcast [ mod [ / port ]] |
次に、ブロードキャスト トラフィックを 90% に制限し、ブロードキャスト抑制発生時にポートを errdisable ステートにする設定例を示します。
Console> (enable) set port broadcast 4/6 90% violation errdisable
Port 4/6 broadcast traffic limited to 90.00%.
On broadcast suppression port 4/6 is configured to move to errdisabled state.
(注) ブロードキャスト抑制に対する errdisable タイムアウト機能をイネーブルにするには、
set errdisable-timeout enable bcast-suppression コマンドを入力します。
この機能によって、ポートが errdisable ステートになったあと、指定のタイムアウト時間が経過するとポートがイネーブルに戻るように設定できます。タイムアウト時間を指定するには、
set errdisable-timeout interval コマンドを入力します。
errdisable ステートになったポートを一定期間後にイネーブルにするのか、または errdisable ステートのままにしておくのかをポート単位で制御するには、set port errdisable-timeout コマンドを入力します。
詳細については、「ポートの errdisable ステートにおけるタイムアウト設定」を参照してください。