ギガビットネットワークでいくつかのテストを実行しました。
大きなファイル(10GB)をWindows 7コンピューターから別のコンピューターに転送すると、トラフィックは50Mbを超えることはありません(80MB /秒で1秒間開始し、その後32MB /秒に低下します)。
複数のコンピューターからの同時転送を使用して、クライアントはGb接続を最大化できます。 Idem、同時に複数のクライアントを使用する場合、ソースコンピューターはGbトラフィックの近くに到達します。
テストは非常に高速なドライブで行われました(RAID 0では2ヴェロキラプトル、LSIメガレイドRAID5、SSD、RevodriveX3では4WD red ...)。したがって、それらはボトルネックではありません。
Windowsサーバーから転送する場合、スループットはわずかに向上しますが、予想される112MB /秒のギビットLANからはほど遠いです。
何か案が ?
奇妙な歩行者のコメントの後に編集:ASUSマザーボードとDellWorkstationで統合されたNIC(intel)を使用しています。スイッチは管理可能なCisco SG 300-20、SF 300-08、およびNetgear GS108です。
TCP/IPを使用してファイルを転送していると思いますが、使用しているプロトコルについても言及していません。
これに対する答えは大きな本を埋めるでしょう-そしてそれらはたくさんあります。しかし、考えられる理由には次のものがあります。
輻輳制御 :ネットワークスタックはスループットを抑制し、接続の存続期間にわたってレートを徐々に上げます(パケット損失が発生するまで、レートは大幅に低下します)。ジャンボパケットの使用も役立ちます。
ウィンドウサイズ :TCP/IPエンドポイントは、リモートシステムがバッファリングできると考えられる量のデータのみを送信します。受信側は、少なくとも帯域幅xRTTをバッファリングできる必要があります。ここではRTTは低くなっていますが、帯域幅は広くなっています。 IPV4が設計されたとき、そのような大きなバッファに対処する必要はありませんでした。ウィンドウスケーリングを有効にするという解決策があります。
お使いのコンピュータは、データ送信の目的に専念していません-それはマルチタスクです。データを処理するために、NICは割り込みを生成します-これにより遅延が追加されます。カードのバッファリングを有効にすることで、良好なネットワークカードへの影響を軽減できます(割り込み合体)
データをフレームにラップし、ネットワーク上でそれらを噴出させるには、コンピューターが行うべきかなりの量の作業がまだあります-これも軽減できます-この場合、 TCPオフロード (OS /の場合)を使用しますハードウェアはそれをサポートします。
....そしてそれはあなたがファイルを転送するために使用しているイーサネットやプロトコルの特性を見る前です。
私はついに100MB /秒以上のファイル転送を達成することができました。
NICをペリフェラルマネージャーから削除して再インストールしました。Intelドライバーパラメーターが混乱していると思います。おそらく、高いMTUをセットアップしようとしたためです。