服务器2008年至2003年缓慢文件传输使用CIFS

我只是试图复制一个文件在CIFS(Windows文件共享)之间的服务器2003 R2和新的服务器2008 SP1,我得到可怕的速度。

这是一个300MB的文件,需要大约30分钟的转移。 我正在1-2Mbit / s左右,这是本地交换机。

我已经尝试从两台服务器启动相同的结果转移。

从2003年复制到另一个2003年不到1分钟,所以显然是2008年的服务器。

一个更奇怪的行为是,如果我同时从2003服务器复制另一个文件到另一台2003服务器,从2008年服务器的传输速率急剧增加(如10倍,但仍然缓慢)。

在RDP驱动器共享我得到完整的VPN速度,约20Mbit。 没有其他服务似乎正在遭受任何延迟。

我已经看到在win2008的TCP卸载导致麻烦的post,它可以相关吗?

确保2008服务器自行正常工作。 尝试转移它与另一个2008服务器之间的文件,或者如果没有Vista工作站,他们使用相同的cifs版本。

当NIC和交换机之间存在速度/双工不匹配时,我曾经见过类似的文件传输行为,有时是因为自动感知问题,有时是因为其中一个或另一个错误configuration。

您可以尝试closuresTCP自动调整:

netsh interface tcp set global autotuninglevel=disabled 

如果这不起作用,请重新打开:

 netsh interface tcp set global autotuninglevel=normal 

TCP自动调整是Vista和Windows 2008 TCP / IP堆栈中的一项新function。 您可以通过TCP / IP发送的数据量取决于(接收窗口大小等)。 在以前的Windows版本中,接收窗口大小限制在64KB。 通过自动调整,窗口大小根据连接的容量和速度dynamic改变。 这个想法是,这将加快数据传输。

问题是,如果客户端操作系统或networking硬件不能正确支持此function(如RFC 1323,高性能TCP扩展中所述),则此function实际上可能会导致传输速率较慢。

无论如何,这可能不是问题,但值得一试。

我刚刚在我的networking上解决了类似的问题。 一台Windows 2003服务器机器在新的Windows 2008 R2机器上的共享读取速度变得糟糕 (〜20Kb / s)(但奇怪的是,2003 >> 2008很好,〜50 Mb / s)。

一些我尝试的东西…

  • 如上build议设置autotuninglevel=disabled
  • 禁用SMB 2,如此处所述
  • 调整适配器双工和stream量控制设置,主要基于这个职位,但build议在一些地方

其中没有任何(正面)影响。

对我来说,解决scheme原来是禁用TCP卸载( 这里描述)通过添加以下registry项…

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters Value = DisableTaskOffload Type = DWORD Data = 1 Value = EnableTCPChimney Type = DWORD Data = 0 Value = EnableTCPA Type = DWORD Data = 0 Value = EnableRSS Type = DWORD Data = 0 

重启后,所有的传输速度都达到了。

从我对有限问题的理解来看,它只出现在运行2008或Win 7的某些网卡型号(采用英特尔82578DC)中,与运行2003或XP的计算机进行通信。 在我的情况下,2003盒子是在VMware Server 2.0.2上运行的虚拟机(但我不知道这是否相关)。

希望帮助别人!

人们在这个问题上提出了一些不同的build议: Windowsnetworking性能(SMB / CIFS)

我的第一个猜测是硬件问题。 尝试使用FTP或HTTP传输文件,看看是否也很慢。

JR