locked
大きなファイルの転送が途中で格段に遅くなる(特にネットワーク転送) RRS feed

  • 質問

  • お世話になっております。

    WindowsServer2008 (x64)Standard メモリ16GBを搭載したサーバがあります。
    ここから、他のサーバ(WindowsServer2003)のネットワーク共有フォルダへ10GB程度のファイルをコピーすると
    最初は100MB/秒以上の速度で転送されるのですが、
    1GBほど転送を完了すると急にものすごく遅くなってしまいます。

    複数の転送先(サーバ機)、いくつかのファイルで試しましたが
    みな転送完了が1GBを超え出すと、急に数十kB/秒の転送速度に落ちてしまいます。
    (コピーを5分で終わるはずの表示が、しばらくするとどんどん伸びて数時間になっていたり)

    サーバ間はGigabitハブで接続しています。
    送り側はRAID1、受け側は軒並みRAID5で、セクタ先読み設定ON以外はごく普通の設定をしています。

    ちなみに、ローカルでコピーをしてみましたら
    10GB近くのファイルを普通に転送(150MB/秒)できたり、
    8GB完了付近(残り2GB程度)急速に遅くなってくるものなどありました。

    これに似た現象に遭われた方いらっしゃいますか?
    これだけでは情報が足りないかもしれませんが、
    もし原因をご存知の方いらっしゃいましたら
    ご教示頂けますでしょうか?

    宜しくお願い致します。
    2009年3月6日 1:08

回答

  •  チャブーンです。

    切り分け上は、ネットワークでもローカル上でも問題が発生するようにも見えますが、状況が全然違う感じなので、ちょっとわからないですね。

    これは、きちんと調べるなら、IPパケットをキャプチャリングして(Wiresharkのようなツールで)この内容を解析する、といった流れになるのかなとは思います。

    ですが、状況からGiga-Ethernetまわりに問題があるのかもしれません。Windows Server 2008 では Scalable Networking Pack (SNP) という機能があり、これでネットワークカード上での TCP オフロード機能を実現しているのですが、この機能が有効になってる場合(OEM版だとあるようです)、問題となっているのかも知れません。この方法で無効にしてみてはどうでしょう? 
    2009年3月8日 12:14

すべての返信

  •  チャブーンです。

    切り分け上は、ネットワークでもローカル上でも問題が発生するようにも見えますが、状況が全然違う感じなので、ちょっとわからないですね。

    これは、きちんと調べるなら、IPパケットをキャプチャリングして(Wiresharkのようなツールで)この内容を解析する、といった流れになるのかなとは思います。

    ですが、状況からGiga-Ethernetまわりに問題があるのかもしれません。Windows Server 2008 では Scalable Networking Pack (SNP) という機能があり、これでネットワークカード上での TCP オフロード機能を実現しているのですが、この機能が有効になってる場合(OEM版だとあるようです)、問題となっているのかも知れません。この方法で無効にしてみてはどうでしょう? 
    2009年3月8日 12:14
  • チャブーン様

    お世話になっております。
    ご教示いただきまして、どうも有り難う御座います。


    netshコマンドから
    TCP Chimney Offload 機能をOFFにしてみましたところ、
    ずばり転送上の問題が解消されました。

    2008 <-> 2003 R2 間の通信で
    両方ともChimney Offload機能を無効化してファイル転送したところ、
    途中で速度がオチることなく、最後までなめらかに転送が走りました。
    (参考値ですが、12GBのファイルコピーが6分で完了しました。(260bits/s 位?))
     異常な動作をしているときは、最初は速いのですが1GB転送終了後あたりから急に残り200分などオチてしまいました。
     ネットワークモニタを見ると、急に転送が止んで(たまにちょろちょろ)しまったようになっていました。)


    Webなど拝見したところ、OSではなくて多くのNICが抱えている問題のようですね。

    大変助かりました。
    2009年3月12日 1:15