2017-02-18 52 views
0

私は非常に奇妙な問題に遭遇しました。 私は2台のサーバを持っていますが、1台はRedhat Linuxサーバ7台、64台はWindowsサーバ2012台64台を稼働しています。両方のサーバーハードウェア仕様は全く同じです:iperf3 Windowsの帯域幅はLinuxよりずっと遅い

Xeon 2.6Ghz CPU x 2, total 32 logical core 
96GB ddr4 memory 
1Gb dual port network card 
2TB hard disk, the RAID configuration is also same. 

両方のマシンでiperf3を実行すると、結果は大きく異なります。 Linuxの 結果は次のとおりです。**

$iperf3 -s 

$iperf3 -c localhost 
Connecting to host localhost, port 5201 
[ 4] local ::1 port 46996 connected to ::1 port 5201 
[ ID] Interval   Transfer  Bandwidth  Retr Cwnd 
[ 4] 0.00-1.00 sec 4.29 GBytes 36.9 Gbits/sec 0 703 KBytes 
[ 4] 1.00-2.00 sec 4.75 GBytes 40.8 Gbits/sec 0 703 KBytes 
[ 4] 2.00-3.00 sec 4.66 GBytes 40.0 Gbits/sec 0 767 KBytes 
[ 4] 3.00-4.00 sec 4.67 GBytes 40.1 Gbits/sec 0 767 KBytes 
[ 4] 4.00-5.00 sec 4.49 GBytes 38.6 Gbits/sec 0 1.37 MBytes 
[ 4] 5.00-6.00 sec 4.57 GBytes 39.3 Gbits/sec 0 1.37 MBytes 
[ 4] 6.00-7.00 sec 4.54 GBytes 39.0 Gbits/sec 0 1.37 MBytes 
[ 4] 7.00-8.00 sec 4.68 GBytes 40.2 Gbits/sec 0 1.37 MBytes 
[ 4] 8.00-9.00 sec 4.75 GBytes 40.8 Gbits/sec 0 1.37 MBytes 
[ 4] 9.00-10.00 sec 4.60 GBytes 39.6 Gbits/sec 0 1.37 MBytes 
- - - - - - - - - - - - - - - - - - - - - - - - - 
[ ID] Interval   Transfer  Bandwidth  Retr 
[ 4] 0.00-10.00 sec 46.0 GBytes 39.5 Gbits/sec 0    sender 
[ 4] 0.00-10.00 sec 46.0 GBytes 39.5 Gbits/sec     receiver 

Windows上での結果は以下のとおりです。**

iperf3.exe -s 

iperf3.exe -c localhost 
Connecting to host localhost, port 5201 
[ 4] local ::1 port 11042 connected to ::1 port 5201 
[ ID] Interval   Transfer  Bandwidth 
[ 4] 0.00-1.00 sec 477 MBytes 4.00 Gbits/sec 
[ 4] 1.00-2.00 sec 486 MBytes 4.08 Gbits/sec 
[ 4] 2.00-3.00 sec 555 MBytes 4.66 Gbits/sec 
[ 4] 3.00-4.00 sec 569 MBytes 4.77 Gbits/sec 
[ 4] 4.00-5.00 sec 571 MBytes 4.79 Gbits/sec 
[ 4] 5.00-6.00 sec 584 MBytes 4.90 Gbits/sec 
[ 4] 6.00-7.00 sec 590 MBytes 4.95 Gbits/sec 
[ 4] 7.00-8.00 sec 590 MBytes 4.95 Gbits/sec 
[ 4] 8.00-9.00 sec 599 MBytes 5.03 Gbits/sec 
[ 4] 9.00-10.00 sec 598 MBytes 5.01 Gbits/sec 
- - - - - - - - - - - - - - - - - - - - - - - - - 
[ ID] Interval   Transfer  Bandwidth 
[ 4] 0.00-10.00 sec 5.49 GBytes 4.71 Gbits/sec     sender 
[ 4] 0.00-10.00 sec 5.49 GBytes 4.71 Gbits/sec     receiver 

iperf Done. 

Windowsはとても遅いですなぜ?誰も同じ問題を抱えていますか?
Windowsの帯域幅のパフォーマンスを向上させるにはどうすればよいですか?

この動作は、私のプロジェクトに非常によく似ています。同じソケットコードを使用すると、Windowsの処理能力はLinuxの1/3になります。

ありがとうございました。

+1

これはプログラミングとは関係ありません。多分あなたはスーパーユーザーコミュニティでこれを尋ねるべきでしょう。 –

+0

LinuxでWindowsマシンを起動しようとしましたか?たぶん、存在してはいけないものの、ハードウェアの違いがあるかもしれません。 – deltab

+0

LinuxとWindowsは各サーバーで実行され、テストはlocalhostで実行され、LinuxとWindowsは接続されていません。 –

答えて

0

TCPウィンドウサイズを8.00 KByte(デフォルト)から64k以上に増やしてみてください。以下の記事を参照してください。

https://arstechnica.com/civis/viewtopic.php?t=1113215

はそれがお役に立てば幸いです。

+0

私はすでにWindowsレジストリでTCPウィンドウサイズを増やそうとしていますが、再起動後も結果は同じです。 TCPウィンドウのサイズはlocalhostテストに影響しますか? –

+0

あなたの問題を解決していない場合、なぜこれを回答として受け入れましたか? – T3rm1

関連する問題