伺服器 2008 到 2003 使用 cifs 進行慢速文件傳輸
我剛剛嘗試在伺服器 2003 R2 和新伺服器 2008 SP1 之間通過 cifs(Windows 文件共享)複製文件,但速度非常快。
這是一個 300MB 的文件,傳輸大約需要 30 分鐘。我的速度約為 1-2Mbit/s,這是在本地交換機上。
我嘗試從兩台伺服器啟動傳輸,結果相同。
從 2003 複製到另一個 2003 不到 1 分鐘,所以這顯然與 2008 伺服器有關。
一個更奇怪的行為是,如果我同時將另一個文件從 2003 伺服器複製到另一個 2003 伺服器,來自 2008 伺服器的傳輸速率會急劇增加(就像 10 倍,但仍然很慢)。
通過 RDP-drivesharing,我獲得了完整的 VPN 速度,大約 20Mbit。似乎沒有其他服務受到任何延遲的影響。
我看過關於在win2008中tcp解除安裝導致問題的文章,可能與此有關嗎?
確保 2008 伺服器自身正常工作。嘗試在它和另一台 2008 伺服器之間傳輸文件,或者如果沒有 vista 工作站,它們使用相同的 cifs 版本。
當 NIC 和交換機之間存在速度/雙工不匹配時,我已經看到類似的文件傳輸行為,有時是因為自動檢測問題,有時是因為其中一個或另一個或兩者的配置錯誤。
您可以嘗試關閉 TCP 自動調整:
netsh interface tcp set global autotuninglevel=disabled
如果這不起作用,請使用以下命令重新打開它:
netsh interface tcp set global autotuninglevel=normal
TCP 自動調整是 Vista 和 Windows 2008 TCP/IP 堆棧中的一項新功能。您可以通過 TCP/IP 發送的數據量取決於(除其他外)接收視窗大小的大小。在以前的 Windows 版本中,接收視窗大小的上限為 64KB。通過自動調整,視窗大小會根據連接的容量和速度動態更改。這個想法是,這將加快數據傳輸。
問題在於,如果客戶端作業系統或網路硬體不正確支持此功能(如 RFC 1323,高性能 TCP 擴展中所述),此功能實際上會導致傳輸速率變慢。
無論如何,這可能不是這裡的問題,但值得一試。