Iperfでネットワークスループットを計測
回線速度を計測するサイトは色々あるが、あくまで回線のスループットですね。
それでは、VPNで繋がっている拠点間やサーバ(クライアント)同士のスループットを計測する場合は、みなさんどのような形で行っておりますでしょうか?
pingでスループットを計算することは可能ですが、計算式が面倒だったりしますね。
ちなみにpingの場合の計算式は、以下となります。
(データサイズ*2)÷所要時間[bytes/s]
ただし、データサイズが小さいと正確な速度が測定出来ず、大きすぎるとフラグメント化したIPパケットが禁止されている場合、エラーとなったりします。
コマンドだとこんな感じです。
ping -l 60000 HOST
このコマンドを実行した際の平均時間を基に計算します。
結果が2msだった場合、
(60000*2)÷0.002≒60[MB/s]
60MBのスループットとなりました。
しかし、LAN内で行った場合、返答時間が1ms以下となったりするので、計測は出来なくなりますw
そこで今回紹介する「iperf(アイパーフ)」というツールです。
Iperfはネットワークスループットを測定するツールです。
Iperfのダウンロード
▼Windows版
http://linhost.info/2010/02/iperf-on-windows/
▼Linux版
http://sourceforge.net/projects/iperf/
Iperfのインストール
Windows版であれば、ダウンロードしたファイルを適当なところに設置。コマンドプロンプトにて利用します。
Linux版はtar.gz形式となっておりますので、以下のような感じでインストールしてください。
tar zxvf iperf-2.0.5.tar.gz cd iperf-2.0.5 ./configure make make install
Iperfの使い方
Iperfはクライアント側(送信側)とサーバ側(受信側)双方にインストールする必要があります。
最初にサーバ側にて以下のコマンドを実行し、クライアント側からのパケットを待つようにします。
iperf -s
続いてクライアント側です。
iperf -c (サーバIP or name)
実行した結果が、以下となります。
今回はクライアント側が192.168.0.0/24で、サーバ側が192.168.255.0/24で構成され、拠点間をVPNで接続している状態を計測しました。
C:\>iperf.exe -c 192.168.255.xxx ------------------------------------------------------------ Client connecting to 192.168.255.xxx, TCP port 5001 TCP window size: 63.0 KByte (default) ------------------------------------------------------------ [132] local 192.168.0.xxx port 63754 connected with 192.168.255.xxx port 5001 [ ID] Interval Transfer Bandwidth [132] 0.0-10.1 sec 15.3 MBytes 12.7 Mbits/sec
12.7Mbpsですね。ちょっとVPNレスポンス悪いです。。。
このように回線自体の速度は問題ないけれど、VPNや特定の機器を経由した場合に速度低下になるなど、確認することが可能です。
ディスカッション
コメント一覧
まだ、コメントがありません