- - PR -
netstat -s で取得したネットワーク統計情報分析に関する質問
1
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-12-13 17:04
お世話になっております。
下記のようなシステム構成において、Server1-Server2の間で発生した通信量の測定・分析をしております。 WAN Server1--Hub--ROUTER ===============ROUTER--Hub--Server2 |---ClientA WANの帯域は64kbps. ClientAはServer2とのみ、通信します。 Server1とServer2の間で通信が発生します。 その他はないとします。 Server2で送受信バイト数、ClientAで送受信バイト数を求め、その差分がWANを 通ったものと考えて計算しました。 実際に計算してみますと、運用期間中、送信、受信ともに200Kbpsの通信が発生しており、WANの64Kbpsをはるかに超える量の通信が発生していたことが分かりました。 しかし、運用者からのヒアリングでは、サーバ間での通信が重い、と感じたりしたことは無かった、という話でした。 また、サーバ間で通信を行う、通信APで取得した転送量の統計情報を見ると、6kbyteぐらいの通信が発生していたという情報がとれております。 【質問1】 netstat -s で取得したtcpOutDataBytes,tcpInInorderBytesを扱う上で何か注意点はございますか? たとえば、loopback等の通信の含まれてしまう等。もしそういうことがあるならば、 実際に相手側に発生した通信量はどのように勘案すればよろしいでしょうか? 例えば取得データのうちXX%はloopbackとなる等。 netstat -s で取得した以上、純粋に、相手サーバへの通信量を取り出すことは できないのでしょうか。 なお、ここで求めたい通信量は厳密なものではなく、参考値程度でよいものです。 【質問2】 loopbackアドレスへの通信はどういうタイミングで発生するのでしょうか? アプリケーションが自分宛への通信で127.0.0.1をアドレスとして使っている場合は わかりますが、その他、OS側で勝手に通信していたりするものでしょうか? 【質問3】 平均送信バイト数/secと平均受信バイト数/secは別々に考えるべきでしょうか? 例えば、NICが同時に送受信ができるのであれば、 平均送信バイト数/sec+平均受信バイト数/secが1秒間にネットワークを流れていた通信量になると 考えられます。 NICが同時に送受信が行えず、細かく送信受信を切り替えて処理しているのであれば、 平均送信バイト数/secと平均受信バイト数/secは分けて考えるべきかと考えております。 ◆環境情報 【OS】 Server1 , Server2 : Solaris9 ClientA:WindowsXP 【取得方法】 Server2:1分に1回[netstat -s]の情報をファイルに書き出し、tcpOutDataBytes,tcpInInorderBytesの 1つ前との差分を60で割ったものを平均バイト数/secとしています XP:Windows標準機能のコントロールパネル⇒管理ツール⇒パフォーマンスを使用。 network object のインタフェースを選択し、1分に1回情報を取得 以上よろしくお願いいたします。 | ||||||||||||
|
投稿日時: 2006-12-14 01:40
tcp何とかという値は、(下位のIP層から)TCP層に対する入出力の統計値ですので、ループバックあての通信も含まれていたはず(しかも下位のEthernetやIP、TCPヘッダなどのサイズは含まない値のはず)。ので、純粋にWAN間の通信量だけを取り出すのは不可能だと思います。 そういうのは、たとえばEthernet層とかWANインターフェイスの統計値(Windows XPならnetstat -eなど)で出した値をベースにするのがいいと思います。が、ここにはブロードキャストなども含まれるので少し多めに表示されますが、対象以外の余計なアプリが動いていなければ、数%の誤差だったと思います。
127.0.0.1あてにESTABLISHしている通信があれば、使われています。ループバックあてに接続することがあるかどうかは、OSとかアプリしだいなので、なんともいえません。すみません。X-Windowなどをお使いですか?
そもそもEthernetの速度に比べるとWANの速度は圧倒的に遅いので、そんなことはほとんど気にする必要はありません。1分に1回送信量と受信量のデータを集め、そこからそれぞれの平均値を算出するだけで十分です。64kbpsのWAN回線なら、送受信ともに64kbpsまで出ますので、どちらかが64kbpsなら、飽和している可能性があります。 ところでWAN間が64kbps以上出ているとのことですが、通信データがWANのルータで圧縮されているからではないですか?(PPPのヘッダ圧縮とかStac圧縮など)。 流れているデータにもよるし、どうやってWANに接続しているのかわかりませんが、テキストが主体なら2分の1とか4分の1程度に圧縮されるのは普通なので、回線速度を超えているように見えることがあります。正確な値を知りたければ、ルータ(ISDNルータ?)の統計値情報を、ルータの内部コマンドやSNMPなどで調べる必要があると思われます。 | ||||||||||||
|
投稿日時: 2006-12-14 09:40
こんにちは。
直接回答ではありません。軽い突っ込み程度と思って下さい。
そもそもこの認識が誤っています。 ルータ(昔はWAN間に設置するものをリモートルータと称してました)の機能を 調べてみて下さい。 ヒント)ルータでなくブリッジなら上記の認識は正しいです。 | ||||||||||||
|
投稿日時: 2006-12-21 16:59
ご回答ありがとうございました。
#127.0.0.1あてにESTABLISHしている通信があれば、使われています。ループバックあて #に接続することがあるかどうかは、OSとかアプリしだいなので、なんともいえません。 #すみません。X-Windowなどをお使いですか? Solarisの共通Desktopですね。Xと同じ仕組みでしたら、これでもTCPのカウントがされているのでしょうか・・? ルータのほうでも、色々機能がついているのですね。ありがとうございました。 今回は、ルータが触れない状態だったので、こういう形で試行錯誤しております。。。 #そもそもこの認識が誤っています。 #ルータ(昔はWAN間に設置するものをリモートルータと称してました)の機能を #調べてみて下さい。 #ヒント)ルータでなくブリッジなら上記の認識は正しいです。 リモートルータはWAN側に出すとき、TCPで出すとは限らないから・・でしょうか? ルータにバッファの機能があるので、LAN側の統計値がそのままWAN側に流れた 量にはならないということでしょうか? | ||||||||||||
|
投稿日時: 2006-12-21 17:10
・・・。
本当はご自身で調べて欲しかったのですが。 ネットワーク機器講座/ルータ編 編集:参考URL表記修正・・・ [ メッセージ編集済み 編集者: BackDoor 編集日時 2006-12-21 17:23 ] | ||||||||||||
|
投稿日時: 2006-12-25 18:46
#本当はご自身で調べて欲しかったのですが。
#ネットワーク機器講座/ルータ編 同じところ読んでいたのですが・・・私の理解が足らないようです。 データの圧縮あたりも一つの理由ですか? | ||||||||||||
|
投稿日時: 2006-12-26 09:11
失礼しました。人それぞれ理解度が異なっていることに早く気付くべきでした。 ブロードキャストドメインの簡単な説明サイトの方がわかり易かったようですね。 # このあたりはネットワーク構築の基礎中の基礎です。 # ルータは「ネットワークを繋ぐもの」ではなく「ネットワークを適切に分離 # するもの」と理解された方が幸せになれるかも知れません。 |
1