Windowsファイルサーバ SMB 大量の小さいファイルのコピー転送速度が低下、遅い原因

Windowsでファイルサーバを利用している時に、ファイルのコピーが遅いということがあるかもしれません。SMB 大量の小さいファイルのコピー転送速度が低下、遅いのは予想される動作とのことです。

 

情報元はこちら。

https://docs.microsoft.com/ja-jp/windows-server/storage/file-server/troubleshoot/slow-file-transfer

 

SMB による小さいファイルの転送速度の低下は、多くのファイルが存在する場合に最もよく発生します。 これは予想される現象とあります。

 

ファイルの転送中に、ファイルの作成により、高レベルのプロトコルオーバーヘッドと高いファイルシステムのオーバーヘッドが発生します。 大きなファイル転送の場合、これらのコストは1回だけ発生します。 多数の小さなファイルが転送されると、コストが繰り返し発生し、転送速度が低下します。

 

 

この問題に関する技術的な詳細の抜粋です。


●SMB は、ファイルの作成を要求する create コマンドを呼び出します。 コードによっては、ファイルが存在するかどうかがチェックされ、ファイルが作成されます。 または、create コマンドの一部のバリエーションによって、実際のファイルが作成されます。

 

●各 create コマンドは、ファイルシステムに対してアクティビティを生成します。
データが書き込まれると、ファイルは閉じられます。

 

●しばらくの間、プロセスはネットワーク待ち時間や SMB サーバーの待機時間に影響します。 これは、SMB 要求が最初にファイルシステムコマンドに変換され、その後、実際のファイルシステムの待機時間がその操作を完了するためです。

 

ウイルス対策プログラムが実行されている場合、転送速度が低下します。 これは、通常、データはパケットスニッファによって1回スキャンされ、ディスクに書き込まれるときに2回スキャンされるためです。 シナリオによっては、これらのアクションが何千も繰り返される場合があります。 1 MB/秒未満で速度が低下する可能性があります。

 

大量のデータを転送するシステムの場合、ウイルス対策ソフトがパフォーマンスに大きな影響を与えることがあります。特に、LinuxとかCentOSウイルス対策ソフトが32bit版だと処理に大きな影響を与えることを検証したことがあります。

 

また、ソフトのバージョンによっても処理が仕様変更によって変わることもあります。ウイルス対策ソフトを使わないという選択肢はないと思いますので、より処理を邪魔しないメーカーのソフトを使用するなど検証、検討が必要かもしれないですね。

 

Anker PowerCore Essential 20000 (モバイルバッテリー 超大容量 20000mAh) 【USB-C入力ポート/PSE認証済/PowerIQ/低電流モード搭載】iPhone & Android 各種対応 (ブラック)