trixbox(asterisk)とクライアントPC(MacOSX Leopard)間の通信スピードテスト方法
LAN・WAN間の通信速度を計測する方法をご紹介いたします。
特に今回は、trixbox(asterisk)同士の回線スピードテスト、もしくはtrixbox(asterisk)とクライアントPC(MacOSX Leopard)間の回線スピードテストをする方法を中心にご紹介。
正確には、trixboxとかasteriskはLinuxの上で動作しているIP-PBXソフトウェアなので、Linuxとのスピードテストです。
スピードテストには「Netperf」と言うアプリケーションを利用します。「Netperf」はUNIX/LINUXでは有名なアプリだそうですが、Windows版もある様なのでお試しあれ。
いつもの事ながら、ウチではwindows版については説明しません。
netperf WEBサイト:http://www.netperf.org/netperf/
ダウンロードURL:ftp://ftp.netperf.org/netperf/
trixbox(asterisk)同士で回線スピードを計測する
まず、SSHを利用してtrixbox(asterisk)にrootでログインして下さい。
SSHでtrixboxへの接続方法が分からない場合はコチラを参照してください。
ログインが完了すれば以下の手順でnetperfをインストールします。
これでまずtrixbox(asterisk)にnetperfがインストールされました。2台のtrixbox(asterisk)同士でスピードテストを行う場合は、両方のtrixbox(asterisk)で上と同じ作業を行ってインストールをすませてください。
# wget ftp://ftp.netperf.org/netperf/archive/netperf-2.4.4.tar.gz
# tar zxvf netperf-2.4.4.tar.gz
# cd netperf-2.4.4
# ./configure
# make
# make install
次に、テストしたいサーバー側(受け側)のnetperfを起動させ待ち受け状態にします。
# nerserver起動すると以下のメッセージが表示されて、クライアントからの接続を待ちます。
tarting netserver at port 12865
Starting netserver at hostname 0.0.0.0 port 12865 and family AF_UNSPEC
クライアント側で以下のコマンドを実行するとサーバー側(受け側)とクライアントの通信スピードをテストできます。
注意:計測結果は絶対なものではありません。機器や環境を変えて利用した場合の相対的な値だと考える方が良いと思います。
# netperf -H IPアドレスかホスト名
例 netperf -H 192.168.0.100
例 netperf -H s123465x.trixbox.fonality.comTCP STREAM TEST from (null) (0.0.0.0) port 0 AF_INET to s123465x.trixbox.fonality.com (xxx.xxx.xxx.xxx) port 0 AF_INET
Recv Send Send
Socket Socket Message Elapsed
Size Size Size Time Throughput
bytes bytes bytes secs. 10^6bits/sec
87380 131070 131070 10.08 12.2410.08秒間テストを実行して、クライアント→サーバーのスループットが12.24 Mbit/sec と計測されてる様です。
MacOSX Leopard 10.5 にnetperfをインストールする
今回はMacOSX Leopard 10.5.7で行います。
コンパイルを行いますので、前準備としてxcode toolsをOS付属のディスクからインストールしておく必要があると思います。
これでMacOSX Leopardへnetperfがインストールできました。
ターミナル(アプリケーション/ユーティリティ/ターミナル.app)を起動する。
$ curl -o netperf-2.4.4.tar.gz ftp://anonymous@ftp.netperf.org/netperf/archive/netperf-2.4.4.tar.gz
$ tar zxvf netperf-2.4.4.tar.gz
$ cd netperf-2.4.4
$ su
Password:
# ./configure
# make
# make install
# exit
あとは、trixbox(asterisk)と同じように、テストしたいサーバー側(受け側)のnetperfを起動させ待ち受け状態にします。
クライアント側で以下のコマンドを実行するとサーバー側(受け側)とクライアントの通信スピードをテストできます。
# nerserver起動すると以下のメッセージが表示されて、クライアントからの接続を待ちます。
tarting netserver at port 12865
Starting netserver at hostname 0.0.0.0 port 12865 and family AF_UNSPEC
注意:計測結果は絶対なものではありません。機器や環境を変えて利用した場合の相対的な値だと考える方が良いと思います。
# netperf -H IPアドレスかホスト名
例 netperf -H 192.168.0.100
例 netperf -H s123465x.trixbox.fonality.comTCP STREAM TEST from (null) (0.0.0.0) port 0 AF_INET to s123465x.trixbox.fonality.com (xxx.xxx.xxx.xxx) port 0 AF_INET
Recv Send Send
Socket Socket Message Elapsed
Size Size Size Time Throughput
bytes bytes bytes secs. 10^6bits/sec
87380 131070 131070 10.08 12.24
netperfサーバーを停止する。
netperfサーバプロセスが動いているかどうかを確認するには
$ ps aux | grep netserver動いていれば、こんな感じで表示されます。
root 9010 0.0 0.0 1992 292 ? Ss 10:21 0:00 netserver
netperfサーバーを停止する。
# kill [ netserver のPID ]
か
# killall netserver