トラフィック ストーム制御

この章は、次の項で構成されています。

トラフィック ストーム制御について

トラフィック ストームは、パケットが LAN でフラッディングする場合に発生するもので、過剰なトラフィックを生成し、ネットワークのパフォーマンスを低下させます。トラフィック ストーム制御ポリシーを使用すると、物理インターフェイス上におけるブロードキャスト、未知のマルチキャスト、または未知のユニキャストのトラフィック ストームによって、レイヤ 2 ポート経由の通信が妨害されるのを防ぐことができます。

デフォルトでは、ストーム制御は ACI ファブリックでは有効になっていません。ACI ブリッジ ドメイン(BD)レイヤ 2 の未知のユニキャストのフラッディングは BD 内でデフォルトで有効になっていますが、管理者が無効にすることができます。その場合、ストーム制御ポリシーはブロードキャストと未知のマルチキャストのトラフィックにのみ適用されます。レイヤ 2 の未知のユニキャストのフラッディングが BD で有効になっている場合、ストーム制御ポリシーは、ブロードキャストと未知のマルチキャストのトラフィックに加えて、レイヤ 2 の未知のユニキャストのフラッディングに適用されます。

トラフィック ストーム制御(トラフィック抑制ともいいます)を使用すると、着信するブロードキャスト、マルチキャスト、未知のユニキャストのトラフィックのレベルを 1 秒間隔でモニタできます。この間に、トラフィック レベル(ポートで使用可能な合計帯域幅のパーセンテージ、または特定のポートで許可される 1 秒あたりの最大パケット数として表されます)が、設定したトラフィック ストーム制御レベルと比較されます。入力トラフィックが、ポートに設定したトラフィック ストーム制御レベルに到達すると、トラフィック ストーム制御機能によってそのインターバルが終了するまでトラフィックがドロップされます。管理者は、ストーム制御しきい値を超えたときにエラーを発生させるようにモニタリング ポリシーを設定できます。

ストーム制御の注意事項と制約事項

以下のガイドラインと制約事項に従って、トラフィック ストーム制御レベルを設定してください。

  • 通常、ファブリック管理者は以下のインターフェイスのファブリック アクセス ポリシーでストーム制御を設定します。

    • 標準トランク インターフェイス。

    • 単一リーフ スイッチ上のダイレクト ポート チャネル。

    • バーチャル ポート チャネル(2 つのリーフ スイッチ上のポート チャネル)。

  • リリース 4.2(1) 以降では、ストーム制御のしきい値に達した場合に、次の制約事項に従って、SNMP トラップをCisco Application Centric InfrastructureACI)からトリガーできるようになりました。

    • ストーム制御に関連するアクションには、ドロップとシャットダウンの 2 つがあります。シャットダウン アクションでは、インターフェイス トラップが発生しますが、ストームがアクティブまたはクリアであることを示すためのストーム制御トラップは、シャットダウン アクションによっては決定されません。したがって、ポリシーでシャットダウン アクションが設定されているストーム制御トラップは無視する必要があります。

    • ストーム制御ポリシーがオンの状態でポートがフラップすると、統計情報の収集時にクリア トラップとアクティブ トラップが一緒に表示されます。通常、クリア トラップとアクティブ トラップは一緒に表示されませんが、この場合は予期される動作です。

  • ポート チャネルおよびバーチャル ポート チャネルでは、ストーム制御値(1 秒あたりのパケット数またはパーセンテージ)はポート チャネルのすべての個別メンバーに適用されます。


    (注)  


    Cisco Application Policy Infrastructure ControllerAPIC)リリース 1.3(1) およびスイッチ リリース 11.3(1) 以降のスイッチ ハードウェアの場合、ポート チャネル設では、集約ポートのトラフィック抑制は設定値の最大 2 倍になることがあります。新しいハードウェア ポートは slice-0 と slice-1 の 2 つのグループに内部的にさらに分割されています。スライス マップを確認するには、vsh_lc コマンドの show platform internal hal l2 port gpd を使用して、Sl カラムで slice 0 または slice 1 を探します。ポート チャネル メンバーがスライス 0 とスライス 1 の両方に該当する場合、式は各スライスに基づいて計算されるため、許可されるストーム制御トラフィックが設定値の 2 倍になることがあります。
  • 使用可能な帯域幅のパーセンテージで設定する場合、値 100 はトラフィック ストーム制御を行わないことを意味し、値 0.01 はすべてのトラフィックを抑制します。

  • ハードウェアの制限およびさまざまなサイズのパケットのカウント方式が原因で、レベルのパーセンテージは概数になります。着信トラフィックを構成するフレームのサイズに応じて、実際に適用されるパーセンテージ レベルと設定したパーセンテージ レベルの間には、数パーセントの誤差がある可能性があります。1 秒あたりのパケット数(PPS)の値は、256 バイトに基づいてパーセンテージに変換されます。

  • 最大バーストは、通過するトラフィックがないときに許可されるレートの最大累積です。トラフィックが開始されると、最初の間隔では累積レートまでのすべてのトラフィックが許可されます。後続の間隔では、トラフィックは設定されたレートまでのみ許可されます。サポートされる最大数は 65535 KB です。設定されたレートがこの値を超えると、PPS とパーセンテージの両方についてこの値で制限されます。

  • 累積可能な最大バーストは 512 MB です。

  • 最適化されたマルチキャスト フラッディング(OMF)モードの出力リーフ スイッチでは、トラフィック ストーム制御は適用されません。

  • OMF モードではない出力リーフ スイッチでは、トラフィック ストーム制御が適用されます。

  • FEX のリーフ スイッチでは、ホスト側インターフェイスにはトラフィック ストーム制御を使用できません。

  • Cisco Nexus C93128TX、C9396PX、C9396TX、C93120TX、C9332PQ、C9372PX、C9372TX、C9372PX-E、C9372TX-E の各スイッチでは、トラフィック ストーム制御のユニキャスト/マルチキャストの差別化がサポートされていません。

  • Cisco Nexus C93128TX、C9396PX、C9396TX、C93120TX、C9332PQ、C9372PX、C9372TX、C9372PX-E、C9372TX-E の各スイッチでは、トラフィック ストーム制御の SNMP トラップがサポートされていません。

  • Cisco Nexus C93128TX、C9396PX、C9396TX、C93120TX、C9332PQ、C9372PX、C9372TX、C9372PX-E、C9372TX-E の各スイッチでは、トラフィック ストーム制御トラップがサポートされていません。

  • ストーム制御アクションは、物理イーサネット インターフェイスおよびポート チャネル インターフェイスでのみサポートされます。

    リリース 4.1(1) 以降では、ストーム制御シャットダウン オプションがサポートされています。デフォルトの Soak Instance Count を持つインターフェイスに対してシャットダウン アクションが選択されると、しきい値を超えるパケットは 3 秒間ドロップされ、ポートは 3 秒間シャットダウンされます。デフォルトのアクションは、ドロップです。シャットダウン アクションを選択すると、ユーザーはソーキング間隔を指定するオプションを使用できます。デフォルトのソーキング間隔は 3 秒です。設定可能な範囲は 3 ~ 10 秒です。

  • インターフェイスに設定されたデータ プレーン ポリシング(DPP)ポリサーの値がストーム ポリサーの値よりも低い場合、DPP ポリサーが優先されます。DPPポリサーとストームポリサーの間に設定されている低い方の値が、設定されたインターフェイスで適用されます。

  • リリース 4.2(6) 以降、ストーム ポリサーは、DHCP、ARP、ND、HSRP、PIM、IGMP、および EIGRP プロトコルに対応する、リーフ スイッチのすべての転送制御トラフィックに強制されます。このことは、ブリッジ ドメインが BD でのフラッディングまたはカプセル化でのフラッディングのどちらに設定されているかには関係しません。この動作の変更は、EX 以降のリーフスイッチにのみ適用されます。

    • EX スイッチでは、プロトコルの 1 つに対し、スーパーバイザ ポリサーとストーム ポリサーの両方を設定できます。この場合、サーバーが設定されたスーパーバイザ ポリサー レート(制御プレーン ポリシング、CoPP)よりも高いレートでトラフィックを送信すると、ストーム ポリサーはストーム ポリサー レートとして設定されているよりも多くのトラフィックを許可します。着信トラフィック レートがスーパーバイザ ポリサー レート以下の場合、ストーム ポリサーは設定されたストーム トラフィック レートを正しく許可します。この動作は、設定されたスーパーバイザ ポリサーおよびストーム ポリサーのレートに関係なく適用されます。

    • ストーム ポリサーが、指定されたプロトコルのリーフ スイッチで転送されるすべての制御トラフィックに適用されるようになった結果、リーフ スイッチで転送される制御トラフィックがストーム ポリサー ドロップの対象になります。以前のリリースでは、この動作の変更の影響を受けるプロトコルでは、このようなストーム ポリサーのドロップは発生しません。

  • トラフィック ストーム制御は、PIM が有効になっているブリッジ ドメインまたは VRF インスタンスのマルチキャスト トラフィックをポリシングできません。

  • ストーム コントロール ポリサーがポートチャネル インターフェイスに適用されている場合、許可されるレートが設定されているレートを超えることがあります。ポート チャネルのメンバー リンクが複数のスライスにまたがる場合、許可されるトラフィック レートは、構成されたレートにメンバー リンクがまたがるスライスの数を掛けたものに等しくなります。

    ポートからスライスへのマッピングは、スイッチ モデルによって異なります。

    例として、ストーム ポリサー レートが 10Mbps のメンバー リンク port1、port2、および port3 を持つポートチャネルがあるとします。

    • port1、port2、port3 が slice1 に属している場合、トラフィックは 10Mbps にポリシングされます。

    • port1 と port2 が slice1 に属し、port3 が slice2 に属している場合、トラフィックは 20Mbps にポリシングされます。

    • port1 が slice1 に属し、port2が slice2 に属し、port3 が slice3 に属している場合、トラフィックは 30Mbps にポリシングされます。

GUI を使用したトラフィック ストーム制御ポリシーの設定

手順


ステップ 1

メニュー バーで、[Fabric] をクリックします。

ステップ 2

サブメニュー バーで、[Access Policies] をクリックします。

ステップ 3

Navigation ウィンドウで Policies を展開します。

ステップ 4

Interface を展開します。

ステップ 5

[Storm Control] を右クリックし、[Create Storm Control Interface Policy] を選択します。

ステップ 6

[Create Storm Control Interface Policy] ダイアログボックスで、[Name] フィールドにポリシーの名前を入力します。

ステップ 7

Configure Storm Control フィールドで、All Types または Unicast, Broadcast, Multicast のいずれかのオプション ボタンをクリックします。

(注)  

 

Unicast, Broadcast, Multicast オプション ボタンを選択すると、それぞれのトラフィック タイプで個別にストーム制御を設定することができます。

ステップ 8

[Specify Policy In] フィールドで、[Percentage] または [Packets Per Second] いずれかのオプション ボタンをクリックします。

ステップ 9

[Percentage] を選択した場合は、次の手順を実行します。

  1. [Rate] フィールドに、トラフィック レートのパーセンテージを入力します。

    ポートで使用可能な合計帯域幅のパーセンテージを指定する 0 ~ 100 の数値を入力します。1 秒の間隔中に入力トラフィックがこのレベルに達するか、それを超えると、トラフィック ストーム制御により、その間隔の残りのトラフィックはドロップされます。値 100 は、トラフィック ストーム制御を行わないことを意味します。値 0 の場合、すべてのトラフィックが抑制されます。

  2. [Max Burst Rate] フィールドに、バースト トラフィック レートのパーセンテージを入力します。

    ポートで使用可能な合計帯域幅のパーセンテージを指定する 0 ~ 100 の数値を入力します。入力トラフィックがこれ以上になると、トラフィック ストーム制御が開始してトラフィックをドロップされるようになります。

    (注)  

     

    Max Burst Rate は、Rate の値以上でなければなりません。

ステップ 10

[Packets Per Second] を選択した場合は、次の手順を実行します。

  1. [Rate] フィールドに、トラフィック レートを 1 秒あたりのパケット数で入力します。

    この間、トラフィック レベル(1 秒あたりにポートを通過するパケット数として表される)が、設定したトラフィック ストーム制御レベルと比較されます。入力トラフィックが、ポートに設定したトラフィック ストーム制御レベルに達するかそれを超えると、トラフィック ストーム制御機能によってそのインターバルが終了するまでトラフィックがドロップされます。

  2. [Max Burst Rate] フィールドに、バースト トラフィック レートを 1 秒あたりのパケット数で入力します。

    この間、トラフィック レベル(1 秒あたりにポートを通過するパケット数として表される)が、設定したバースト トラフィック ストーム制御レベルと比較されます。入力トラフィックが、ポートに設定したトラフィック ストーム制御レベルに達するかそれを超えると、トラフィック ストーム制御機能によってそのインターバルが終了するまでトラフィックがドロップされます。

ステップ 11

[Storm Control Action] で [shutdown]を選択し、[Storm Control Soak Count] フィールドでデフォルトを調整することで、ポリシー アクションをデフォルトから変更できます。

(注)  

 

デフォルトの Soak Instance Count を持つインターフェイスに対してシャットダウン アクションが選択されると、しきい値を超えるパケットは 3 秒間ドロップされ、ポートは 3 秒間シャットダウンされます。

ステップ 12

[Submit] をクリックします。

ステップ 13

ストーム制御インターフェイス ポリシーをインターフェイス ポートに適用します。

  1. メニュー バーで、[Fabric] をクリックします。

  2. サブメニュー バーで、[Access Policies] をクリックします。

  3. Navigation ウィンドウで Interfaces を展開します。

  4. Leaf Interfaces を展開します。

  5. Policy Groups を展開します。

  6. Leaf Policy Groups を選択します。

    (注)  

     
    APIC バージョンが 2.x よりも前の場合は、[Policy Groups] を選択します。
  7. リーフ アクセス ポート ポリシー グループ、PC インターフェイス ポリシー グループ、vPC インターフェイス ポリシー グループ、またはストーム制御ポリシーを適用する PC/vPC オーバーライド ポリシー グループを選択します。

  8. [Work] ペインで、[Storm Control Interface Policy] のドロップダウンをクリックし、作成したトラフィック ストーム制御ポリシーを選択します。

  9. [Submit] をクリックします。


NX-OS スタイルの CLI を使用したトラフィック ストーム制御ポリシーの設定

手順の概要

  1. 次のコマンドを入力して PPS ポリシーを作成します。
  2. 次のコマンドを入力してパーセント ポリシーを作成します。
  3. 物理ポート、ポート チャネルまたは仮想ポート チャネルでストーム制御を設定します。
  4. ポリシー アクションを変更するには、次の手順を実行します。
  5. ポート シャットダウン アクションにのみ適用される soak-instance カウントを設定します。

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

次のコマンドを入力して PPS ポリシーを作成します。

例:

(config)# template policy-group pg1
(config-pol-grp-if)# storm-control pps 10000 burst-rate 10000

ステップ 2

次のコマンドを入力してパーセント ポリシーを作成します。

例:

(config)# template policy-group pg2
(config-pol-grp-if)# storm-control level 50 burst-rate 60

ステップ 3

物理ポート、ポート チャネルまたは仮想ポート チャネルでストーム制御を設定します。

例:

[no] storm-control [unicast|multicast|broadcast] level <percentage> [burst-rate <percentage>]
[no] storm-control [unicast|multicast|broadcast] pps <packet-per-second> [burst-rate <packet-per-second>]
 
sd-tb2-ifc1# configure terminal                           
sd-tb2-ifc1(config)# leaf 102                                     
sd-tb2-ifc1(config-leaf)# interface ethernet 1/19                      
sd-tb2-ifc1(config-leaf-if)# storm-control unicast level 35 burst-rate 45 
sd-tb2-ifc1(config-leaf-if)# storm-control broadcast level 36 burst-rate 36
sd-tb2-ifc1(config-leaf-if)# storm-control broadcast level 37 burst-rate 38
sd-tb2-ifc1(config-leaf-if)#

sd-tb2-ifc1# configure terminal                           
sd-tb2-ifc1(config)# leaf 102                                     
sd-tb2-ifc1(config-leaf)# interface ethernet 1/19                      
sd-tb2-ifc1(config-leaf-if)# storm-control broadcast pps 5000 burst-rate 6000
sd-tb2-ifc1(config-leaf-if)# storm-control unicast pps 7000 burst-rate 7000
sd-tb2-ifc1(config-leaf-if)# storm-control unicast pps 8000 burst-rate 10000
sd-tb2-ifc1(config-leaf-if)#

ステップ 4

ポリシー アクションを変更するには、次の手順を実行します。

例:

apic1(config-leaf-if)# storm-control action ?  
 drop      drop
 shutdown  shutdown

ステップ 5

ポート シャットダウン アクションにのみ適用される soak-instance カウントを設定します。

例:

apic-ifc1(config-leaf)# int eth 1/27
apic-ifc1(config-leaf-if)# storm-control soak-instance-count ?
<3-10> Storm Control SI-Count Instances

ストーム制御 SNMP トラップの設定

ここでは、リーフ スイッチでトラフィック ストーム制御 SNMP トラップを設定する方法について説明します。

MIB 定義のトラップ名を使用して、SNMP トラップのストーム制御を設定することができます。インターフェイスの MIB イベントと、いつストームが検出されてクリアされたかにより、同じリーフのトラップをフィルタリングして、ストームを設定します。ストームは次の 2 つの方法で設定できます。

  • 詳細な設定:ユニキャスト、マルチキャスト、ブロードキャストなどのトラフィックのタイプを設定します。

  • 詳細でない設定:すべてのタイプのトラフィックを設定します。

ストーム制御のしきい値に達した場合に Cisco ACI から SNMP トラップをトリガーする際の制限の詳細については、ストーム制御の注意事項と制約事項を参照してください。トラフィック ストーム制御トラップでサポートされていない Cisco Nexus スイッチの詳細については、ストーム制御のガイドラインを参照してください。

ストーム トラップ

ストーム トラップは、イベントが発生し、ストームがアクティブまたはクリアされるたびにトリガーされます。

cpscEventRev1 NOTIFICATION-TYPE
        OBJECTS   { cpscStatus }
        STATUS     current
        DESCRIPTION

実装では、特定のトラフィック タイプに関してインターフェイスでストーム イベントが発生したときに、この通知を送信することになります。

ストーム ステータスは、それぞれブロードキャスト、ユニキャスト、マルチキャスト、および非詳細ラフィック タイプのフィールドである [bcDropIncreased][uucDropIncreased][mcDropIncreased]、および [dropIncreased] で更新されます。これらは dbgIfStorm MO のフィールドです。詳細設定と非詳細設定では、フラグを使用してストームを設定します。ストームがアクティブな場合、フラグは 1 に設定され、ストームがクリアされると、フラグは 2 に設定されます。次のコマンドのフラグにより、SNMPトラップ トリガーに必要なイベントが生成されます。

cat / mit / sys / phys-\ [eth--1 \] / dbgIfStorm / summary
# Interface Storm Drop Couters
bcDropBytes   :0
bcDropIncreased   :2
childAction    :
dn        :sys/phys-[eth/1]/dbgIfStorm
dropBytes      :0
dropIncreased  :2
mcDropBytes    :0
mcDropIncreased :2
modTs           :never
monPoIDn        :uni/infra/moninfra-default
m               :dbgIfStorm
status          :
uucDropBytes    :0
uucDropIncreased :2