DATE: 10/04/2008 11:28:49
-----
BODY:
久々に仕事の話を。
シスコスイッチでストーム制御という技術がある。
http://www.cisco.com/japanese/warp/public/3/jp/service/manual_j/sw/cat29/2960cg5/chapter19/8603_04_19.shtml#71262
こいつは増大するブロードキャストやマルチキャスト、ユニキャストトラフィックの
流量を制限するもの。
しかし、どれくらいの量を制限すべきかを知るためには、
普段、どの程度のトラフィックが流れているのか知る必要がある。
ツールとか使って計測することもできるんやろうけど、
シスコのスイッチ単体でできる、簡単な方法を紹介する。
(今回はブロードキャストだが、ユニキャストでもマルチキャストでも同様にできる)
まず、シスコスイッチでストーム制御を有効にする。
有効にするには、インタフェースに「storm-control broadcast level ***」というコマンドをいれればよい。
Cat2960の場合は、bps単位、pps単位、帯域幅に占めるパーセント単位の指定ができる。
このコマンドで、上限、下限閾値を設定する必要があるが、
デフォルトアクション(トラフィックフィルター)が働かないように、
十分大きな値にしておくことが重要だ。
「The default action is to filter traffic and to not send an SNMP trap. 」
http://www.cisco.com/en/US/docs/switches/lan/catalyst2960/software/release/12.2_46_se/command/reference/cli3.html#wp2278213
次に、「show storm-control」をみると、
Current欄に、現在のブロードキャスト流量が、設定した単位でみることができる。
Switch> show storm-control
Interface Filter State Upper Lower Current
--------- ------------- ---------- --------- ---------
Gi0/1 Forwarding 20 pps 10 pps 5 pps
Gi0/2 Forwarding 50.00% 40.00% 0.00%
この表示は、ストーム制御を有効にしないと、みえない。
この値を定期的にとれば、普段のブロードキャスト流量測定はできる。
けど、SNMPマネージャ側で自動で定期ポーリングして
現在のブロードキャスト流量がわかったりしたほうが、
showコマンドより使い勝手が格段によい。
「show storm-contorl」の「Current」に相当するOIDは、
以下の「CISCO-PORT-STORM-CONTROL-MIB」配下のOIDだ。
cpscCurrentLevel
http://support.ipmonitor.com/mibs/CISCO-PORT-STORM-CONTROL-MIB/item.aspx?id=cpscCurrentLevel
このOIDも、ストーム制御を有効にしていないと、
常に「10000」を返してしまうので、有効にしておく必要がある。
ちょっと面白いのは、このOIDの値範囲は、0-10000であるにも関わらず、
値はそれを超える(bps,ppsの場合)ことがあることだ。
なので、bpsやppsが10000を超えても
問題なく表示されるので、安心してよい。
cpscCurrentLevelのデータ型は、integer型やから
2^32までの値を返せる仕様になってるんやろうな。。

0 件のコメント:
コメントを投稿