家庭内LANのネットワークのパフォーマンスを向上させるため AirMac ExtremeのWAN側のLANを100Base-Tから1000Base-Tに経路変更を行った。その効果を確認しようと思って色々と方法を探していると、iperf というツールを利用すると実現できるそうなので早速導入。
我が家のPCは殆どUbuntuなので、sudo apt-get install iperf でさくっとインストール。バージョンを確認すると、iperf version 2.0.5 (08 Jul 2010) pthreads と表示される。情報を手繰っていくと、2008年頃に更新が止まっている(開発終了?)らしい。Ubuntuでインストールされるバージョンは本家では見つからないので???
使い方は簡単で、計測したいネットワークを跨ぐPCに iperf をそれぞれインストールし、相手先をサーバモードで、自分をクライアントモードでサーバのIPアドレスを指定して実行するだけだ。
1000Base-Tで接続したPCで計測する場合はこんな感じ。使っているスイッチングハブはアライドテレシス社製のものだがなかなか優秀なのかも。
サーバ側 $ iperf -s ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 192.168.1.5 port 5001 connected with 192.168.1.50 port 52535 [ ID] Interval Transfer Bandwidth [ 4] 0.0-10.0 sec 1.07 GBytes 921 Mbits/sec クライアント側 $ iperf -c 192.168.1.5 ------------------------------------------------------------ Client connecting to 192.168.1.5, TCP port 5001 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.50 port 52535 connected with 192.168.1.5 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 1.07 GBytes 922 Mbits/sec
無線LANを経由する場合は5001番ポートへのアプセスができないことがあるようなので。そういう場合は -p オプションを利用することで使用するポートを変更することができる。
サーバ側 $ iperf -s -p 8080 クライアント側 $ iperf -c 192.168.1.5 -p 8080 ------------------------------------------------------------ Client connecting to 192.168.1.5, TCP port 8080 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.11 port 37019 connected with 192.168.1.5 port 8080 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.1 sec 58.2 MBytes 48.6 Mbits/sec
今回、スループットを計測する主目的は Macbook のパフォーマンスアップのため。MacOS Ⅹ 用には JPerf.dmg というアプリがあるのでそれを利用。iperf3というiperfをフルスクラッチで描き直したものもある(2系への互換性もある筈なのだが、snow leopard ではサーバへの接続後にだんまり状態になってしまい利用できませんでした)。JPerfはGUIで利用できるなかなか良いソフトです。
iperf -c 192.168.1.5 -P 1 -i 1 -p 8080 -f m -t 10 ------------------------------------------------------------ Client connecting to 192.168.1.5, TCP port 8080 TCP window size: 0.13 MByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.6 port 49418 connected with 192.168.1.5 port 8080 [ ID] Interval Transfer Bandwidth [ 3] 0.0- 1.0 sec 8.38 MBytes 70.3 Mbits/sec [ 3] 1.0- 2.0 sec 8.12 MBytes 68.2 Mbits/sec [ 3] 2.0- 3.0 sec 8.38 MBytes 70.3 Mbits/sec [ 3] 3.0- 4.0 sec 8.12 MBytes 68.2 Mbits/sec [ 3] 4.0- 5.0 sec 7.88 MBytes 66.1 Mbits/sec [ 3] 5.0- 6.0 sec 8.62 MBytes 72.4 Mbits/sec [ 3] 6.0- 7.0 sec 8.12 MBytes 68.2 Mbits/sec [ 3] 7.0- 8.0 sec 8.38 MBytes 70.3 Mbits/sec [ 3] 8.0- 9.0 sec 8.25 MBytes 69.2 Mbits/sec [ 3] 9.0-10.0 sec 8.38 MBytes 70.3 Mbits/sec [ 3] 0.0-10.0 sec 82.8 MBytes 69.4 Mbits/sec Done.
我が家のMacbookは802.11nに対応していない筈なのですが、何故か802.11gの規格 58Mbpsを超える速度が出ていました。
iperfにはAndroidアプリもあるのでこれも折角なのでインストールしてスループットを確認。
Motorola Defyをサーバモードで稼動し計測 $ iperf -c 192.168.1.3 -p 8080 ------------------------------------------------------------ Client connecting to 192.168.1.3, TCP port 8080 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.50 port 39768 connected with 192.168.1.3 port 8080 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 19.6 MBytes 16.5 Mbits/sec
か、かなり悲しい結果ですね。アンテナが小さいからでしょうか。
0 件のコメント:
コメントを投稿