スイッチの各ポートの帯域使用率を取得したいと思い、
SNMPのifInOctetsの値をsnmpwalkで参照しました。
そこには、インターフェース毎に数値(カウンタ?)が入っていました。
この値は、そのポートが受信したバイト数の累計値か何かなのでしょうか?。
「累計」と考えたのは、その数値がポートの最大スペック(1Gbps=128Mバイト)を
超える値が入っていたためです。
128Mバイト以下のバイト数(snmpwalkで参照時点の使用量)が
入っていると思ったのですが・・
この数値はどういった解釈をするものでしょうか?。
アドバイスを頂けると幸いです。
No.6ベストアンサー
- 回答日時:
「ifInOctetsやifOutOctetsを単独で取得した時何に使えるのか?」と言われているのであれば、ちょっと思いつきません。
これまで何度も出ていると思いますが、下記の用途以外を自分は知りません。
いわゆる「トラフィック監視(流量監視)」の実現方法ですね。
-----------------------------------------------------------------------------------
1, 送受信で発生したフレーム数が累積されるカウンタがあったとき、そのカウンタを一定間隔で取得する
2, 後は該当のインターフェイス速度と、取得に用いたポーリング間隔さえわかっていれば「使用率」が算出できる
# 上記1に於いて用いられる標準的なカウンタオブジェクトがifInOctetsとifOutOctetsです。
但し、現在のネットワーク環境下に於いては64bitカウンタタイプの他オブジェクト・・・例えば、ifHCInOctetsのような物でないと要件を満たせなかったりします。
http://tools.cisco.com/Support/SNMP/do/BrowseOID …
有難うございます。
だいぶ整理できました。有難うございます。
「1, 送受信で発生したフレーム数が累積されるカウンタがあったとき、そのカウンタを一定間隔で取得する」
当方の環境では、これしか方法は無いように思います。
ただこの「カウンタ」というのがどうもピンときません・・。
「受信した総バイト数」と説明がありますが、
「上限(4294967925)を超えると、0に戻る。」ともあり、
一旦クローズさせて頂き、また新規にご質問させてください。
よろしくお願いします。
No.5
- 回答日時:
貼られたCiscoのURLを、もう一度見なおしてみることをお勧めします。
式内の変数にはデルタ(差分)を用いている というような事が書いて有りますよね?
有難うございます。
確かに「MIB-II の変数はカウンタに保存されるため、2 つのポール サイクルを使用して、この 2 つの値の差を計算します」と書いてありますね・・
本当はこのURLの「Input Utilization」、「Output Utilization」を使用率と算出して
NMSでしきい値を判断したいと思ったのです。
しかし製品としてこれができない、ということがわかりました。
結局、「ifInOctets(オブジェクトを収集する 2 つのポーリング サイクルのデルタ(差分)で、トラフィックのインバウンド オクテットの数)」と「ifOutOctets(ポーリング サイクルのデルタ(差分)で、トラフィックのアウトバウンド オクテットの数)」
の2つを使用し、何ができるのか、やはり良くわからないです・・
No.4
- 回答日時:
> しかし、NMS製品の仕様で計算が出来ないことがわかったのです。
そんな腐ったNMSは捨てたほうがいいでしょう
まともなNMSなら計算まで勝手にやってくれます
例えばOpenView NNM
http://h30499.www3.hp.com/t5/OpenView%E4%B8%80%E …
そもそもifInOctetsやifHCInOctetsを見て差分計算して90%を超えたらメールを出す程度ならタダでもMRTGとか使えばできるレベルですし
http://e-garakuta.net/techinfo/doku.php/linux/mrtg
有難うございます。
当方の認識では、計算は以下を想定していました。
受信 ifInOctets * 800 / ifSpeed
送信 ifOutOctets * 800 / ifSpeed
やCiscoの文書でも紹介がありました。
http://www.cisco.com/cisco/web/support/JP/102/10 …
現在の弊社のNMSでは、上記の実装が厳しいと思われます。
仰せの「差分計算」といわれるものは、上記とは別で
何か手法があるのでしょうか・・?。
No.3
- 回答日時:
すみません、よくみるとNMSが差分計算どころかただの計算も出来ない仕様っぽいですね・・・
意見は変わらないのですが、混乱させたかもしれない部分の整理だけしておくと
* 計算可能 -> 量から率に変換して閾値を設定可能
* 計算不可 -> 量のままで設定が必要
なので、計算ができない=直接閾値を設定できないかという発想自体は正しいと思います。
上限値が特定できる&取得の都度現在値を返す項目(例えば、ディスクの使用量等)であれば、このアプローチだけで解決できると思います。
ただし、カウンタタイプの値から特定期間内の増加値を抜き出したいとなると、差分比較という条件が真っ先に加わります。
* 差分取得可能 -> 「今回値 - 前回値」 さえ出せば、後は同様。ただし、どこかで0に回る事を常に考慮しないと、役立たずの内容になります。(例えば5分で回転するカウンタを30分間隔で見ていても、その結果に価値は無いですよね)
* 差分取得不可 -> ??? パット活用方法が思い浮かびません。
有難うございます。
当方の認識では、計算は以下を想定していました。
受信 ifInOctets * 800 / ifSpeed
送信 ifOutOctets * 800 / ifSpeed
やCiscoの文書でも紹介がありました。
http://www.cisco.com/cisco/web/support/JP/102/10 …
現在の弊社のNMSでは、上記の実装が厳しいと思われます。
仰せの「差分計算」といわれるものは、上記とは別で
何か手法があるのでしょうか・・?。(初めて知りました)
カウンタの前回と今回の差分、とした場合、1Gbsのポートだと
その差分がどうあれば正常なのか非常に判断が難しそうですね・・。
No.2
- 回答日時:
自分もMIB搭載製品を作る側ではなく、NMS運用側の立場にしか立ったことが無いので詳細な内部仕様までは・・・
イメージとしては、パケット流れる都度インクリメントされる図で捉えています。
この値から使用率を得たいという話は割りと一般的だと思うのですが、それには前述のとおり前回取得値との差分計算が必要になります。
今NMSを謳う製品であれば大体搭載していると思ったんですが、それが無い物をなんとか運用するとなると、その部分だけ賄う簡単なツールをなんとか用意して組み合わせるような手段しか思い浮かびません。
Net-SNMP等使いながらプラグインを自力開発するせよ、別のNMSへ乗り換えるor組み合わせるにせよ、対象のカウンタが64bitであることは常に留意するようにして下さい。
差分計算よりも、64bitカウンタへ対応している製品の方が少ないというのが実感です。
有難うございます。
「イメージとしては、パケット流れる都度インクリメント」は
私も同じイメージでした。
当方の認識では、計算は以下を想定していました。
受信 ifInOctets * 800 / ifSpeed
送信 ifOutOctets * 800 / ifSpeed
やCiscoの文書でも紹介がありました。
http://www.cisco.com/cisco/web/support/JP/102/10 …
しかし現在の弊社のNMSでは、上記の実装が厳しいと思われます。
仰せの「差分計算」といわれるものは、上記とは別で
何か手法があるのでしょうか・・?。(初めて知りました)
カウンタの前回と今回の差分、とした場合、1Gbsのポートだと
その差分がどうあれば正常なのか非常に判断が難しそうですね・・。
No.1
- 回答日時:
ifInOctetsのオブジェクトタイプはCounter32だと思います。
このカウンタタイプというものは、0から始まって総数を貯めていくまさに「カウンタ」の動きをします。
そのため、Counter32の方は今のネットワーク機器が当たり前にこなすポートスピードと相性が非常に悪く、すぐに回ってします。
100Mbpsですら最悪5分程度だったと記憶しているので、1Gbpsポートを監視するのであれば、Counter64タイプが必須だと思っていいんじゃないでしょうか。
どちらにせよカウンタタイプは総数を取得するため、使用率が欲しければNMS側で前回の値を保持しておいて計算する機能が必要になります。
ご注意下さい。
※参考URLの、「7. Mapping of the OBJECT-TYPE macro」以下にさらっと目を通して下さい。
参考URL:http://www.ietf.org/rfc/rfc1902.txt
有難うございます。
そもそもですがすみません・・「カウンタ」というのは機器内部で
どう扱われるのでしょうか?。
パケットが出るたびに、インクリメントされる数値なのでしょうか。。
今回そもそも何をしたいか?、というご説明なのですが、
当初はifInOctetsをインプットにNMS側で計算から使用率(%)を出し、それが90%超過であれば
NMS側で管理者にメールを通知するようなことを考えてました。
しかし、NMS製品の仕様で計算が出来ないことがわかったのです。
その対応としてですが、ifInOctetsから直接取得した値を判断し、しきい値を超過すれば
通知しようかと思っています。しかし、そのしきい値に何を設定すれば良いかわからず・・
カウンタにしきい値を設けられるかも、理解できておらず、、
一般的には、ifInOctetsの値を直接判断するようなことは、
やるものなのでしょうか?。
もう少しお付き合いを頂けると助かります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java モンスターブリーダー 1 2023/02/05 09:44
- Excel(エクセル) エクセル・スプレッドシートで、一定数を超えたらゼロから再累計する方法 8 2022/05/28 03:52
- Excel(エクセル) エクセルで値ではなく関数を参照する方法 6 2023/03/19 00:50
- Excel(エクセル) 数式→数値固定する方法ありますか? 5 2023/06/18 15:22
- 統計学 統計学、エクセルがわかりません!解答と詳しい解説をお願いします! (1)それぞれの地域別に記述統計量 9 2022/08/21 16:30
- 統計学 統計検定2級の過去問について 1 2023/01/04 16:40
- Excel(エクセル) シート参照を含む数式を連続コピー 3 2022/12/10 11:42
- Excel(エクセル) 列の最終行に新たに入力されたらその値を自動参照 1 2023/01/21 09:59
- ダイエット・食事制限 正確な体脂肪率はいつ? 9 2022/04/11 09:38
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
白血球が多いとどんな心配があ...
-
ある範囲のセルから任意の値を...
-
検便についてです。 便は取れた...
-
彼女のことが好きすぎて彼女の...
-
精液の落とし方を教えてください
-
Excelで""で囲む方法
-
2つの数値のうち、数値が小さい...
-
甲状腺が腫れているが血液検査...
-
EXCELで条件付き書式で空白セル...
-
精子が黄色?
-
勃起する時って痛いんですか? ...
-
エクセル指定した範囲からラン...
-
Excel 0目標に対して数字があ...
-
値が入っているときだけ計算結...
-
アクエリアスが苦く感じる
-
リンク先のファイルを開かなく...
-
小数点以下を繰り上げたものを...
-
EXCELで式からグラフを描くには?
-
これって喉仏ですか? 私は女性...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
白血球が多いとどんな心配があ...
-
検便についてです。 便は取れた...
-
勃起する時って痛いんですか? ...
-
彼女のことが好きすぎて彼女の...
-
腕を見たら黄色くなってる部分...
-
精子が黄色?
-
EXCELで条件付き書式で空白セル...
-
至急!尿検査前日にオナニーし...
-
これって喉仏ですか? 私は女性...
-
中出しをするとお腹が痛い・・・。
-
甲状腺が腫れているが血液検査...
-
2つの数値のうち、数値が小さい...
-
尿検査前日に自慰行為した時の...
-
EXCELで式からグラフを描くには?
-
小数点以下を繰り上げたものを...
-
ある範囲のセルから任意の値を...
-
口の中に黒い血の塊
-
【Excelで「正弦波」のグラフを...
-
エクセル指定した範囲からラン...
おすすめ情報