ttcp - test TCP and UDP performance †ネットワークのパフォーマンスを測定するツール。 ネットワークといっても、二つのノード間の速度を測定するものである。 ネットワークを測定するツールは専用ツールしかないと思っていたんだけど、ttcpなるコマンドを発見。発見というほどでもなく昔っからあるツールで知らなかっただけだった。 BSDやLinux、Windows、MacOSXなど、どのような環境でも実行できそう。 †というわけで導入してみた。 Windows †インストールディスクに入っているらしいのであるが、プリインストールマシンだったので、ディスクはない。 MacOSX Leopard †とりあえずターミナルでコマンドをたたいてみたが、入ってなかった。 darwinportsからdarwinportsをダルンロードしてきてインストールする。 ターミナルからttcpのインストールを実行する。 % cd /opt/local/bin/portslocation/dports/ttcp % sudo port install ttcp Password: 実行してみる †受信側の準備 $ ttcp -r -s ttcp-r: buflen=8192, rbuf=2048, align=16384/0, port=5001 tcp ttcp-r: socket : : 送信側の準備 % ttcp -t -s node.ip.address ttcp-t: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp -> node.ip.address ttcp-t: socket ttcp-t: connect ttcp-t: 16777216 bytes in 0.37 real seconds = 44378.47 KB/sec +++ ttcp-t: 2048 I/O calls, msec/call = 0.18, calls/sec = 5547.31 ttcp-t: 0.0user 0.0sys 0:00real 2% 0i+0d 0maxrss 0+0pf 557+0csw というわけで、16MBのランダムデータ(-sオプション)を送信するのにかかった時間が表示される。 あっという間に終わってしまうので、 ttcp -t -s -n20480 node.ip.address とすることで、160MBのデータを送信してみると、実時間は、0.37秒から3.62秒となっている。 Mac -> WinとWin -> Macでは転送速度が大分違うので、パフォーマンスの差はマシンの差でもあるんでしょうね。 そうだ、今度BootCamp?でもやってみよっと。 追記 1 †先のスループットは、HUB経由だった。 Atom君ルータでやってみた。送信側と受信側の環境は同じ。 iMac === HUB === Atom === Win ttcp-t: buflen=8192, nbuf=2048, align=16384/0, port=5001 tcp -> node.ip.addr ttcp-t: socket ttcp-t: connect ttcp-t: 16777216 bytes in 1.65 real seconds = 9946.70 KB/sec +++ ttcp-t: 2048 I/O calls, msec/call = 0.82, calls/sec = 1243.34 ttcp-t: 0.0user 0.0sys 0:01real 1% 0i+0d 0maxrss 0+0pf 3438+0csw うむ約1/5になるのね。 |