2008年10月11日土曜日

ブロードキャストトラフィックの簡単な測定方法

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 件のコメント: