私は同じルーターに接続された2つのPC間のスループットをテストしていました。1つは100 MbpsのLAN、もう1つは54 Mbpsのwifi
ここに興味深い部分があります:
- を使用して
nc
、AからBに送信するときに2.63MB / sを取得します(で測定pv -r|nc ipB
) - を使用して
iperf
、23MB /秒を取得しますが、これはほとんど問題ありません。
何が悪いのnc
でしょうか?
OSはどちらもubuntu 11.04です。
私は同じルーターに接続された2つのPC間のスループットをテストしていました。1つは100 MbpsのLAN、もう1つは54 Mbpsのwifi
ここに興味深い部分があります:
nc
、AからBに送信するときに2.63MB / sを取得します(で測定pv -r|nc ipB
)iperf
、23MB /秒を取得しますが、これはほとんど問題ありません。何が悪いのnc
でしょうか?
OSはどちらもubuntu 11.04です。
回答:
NetCatがTCPウィンドウ処理をサポートしていないため、スケールサウンドはほぼ適切です。2つのベンチマークの実行中にインターフェイスでtcpdumpを実行すると、NCに対して次のパターンが表示されると思います。
そして、このIPerfのパターン:
TCPセグメントをウィンドウ処理することにより、すべてのパケットの後でAckを待つ必要がないため、すべてのセグメントの後でのみ、スループットを大幅に向上させることができます。
dd/netcat
は、と比較して低い帯域幅を報告しiperf
ます。dd/netcat
3 iperf
Gb /秒について報告するのに対し、9 Gb /秒について報告します。
そうじゃないnetcat
。とiperf
私は
[ 3] local 192.168.1.201 port 55610 connected with 192.168.1.200 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 394 MBytes 39.4 MBytes/sec
nc -l -p 1852 > /dev/null
し、cat /dev/zero | pv -r | nc 192.168.1.200 1852
I GET
[ 34MB/s]
(30〜60の間で変動します。)
どのデータを供給していnetcat
ますか?
ワイヤレスカードが54mbs接続に対応しているからといって、そのスループットが得られるわけではありません。特に、Achiliesヒールを備えた802.11gをお使いのようです。限り、それがに話しているすべての*ワイヤレスデバイスでもある**としてグラム、それは速くなりますが、すぐとしてだけであるとしても、一つのデバイスBの速度が可能な、それはすべてのデバイスに話を最小公分母を使用する必要があります。
ワイヤレスで実行しているマシンで端末を開いてみてくださいiwconfig
。ビットレート=フィールドを探し、実際に接続されている速度を確認します。
iperfユニットに注意してください。これはよくある落とし穴です。iperfは、Mバイト/秒ではなく、Mビット/秒で表示されることがよくあります。