这个问题让我们非常沮丧:当我们通过网络将大型 VHD(虚拟硬盘)文件从 Windows 7 计算机传输到我们数据中心的物理 Windows Server 2008 计算机时,Windows 文件传输在 4 GB 时始终失败。我们从总部到数据中心有一条 100 mbit 的直接连接。
当传输失败时,我们收到的错误信息是:
There is a problem accessing \\server-name\d$ Make sure you are connected to the network and try again.
这是仅有的大于 4 GB 的 VHD 文件失败。如果我们发送任何其他文件类型,它都可以正常工作。如果我们压缩 VHD,它也可以正常工作。此外,我们可以将 VHD 向另一个方向(从数据中心到总部)发送,没有问题。它只是那个方向的 VHD 文件。
重要笔记:
- 所有分区都是 NTFS!!
- 工作站和服务器之间没有防火墙
- 我们已尝试禁用工作站上的防病毒软件(服务器上没有防病毒软件)
- 我们尝试从域外的机器传输文件
- 我们尝试从 Ubuntu 机器传输文件(仍然失败,但大小约为 450MB,而不是 4GB)
- 传输失败时,Wireshark 捕获显示 40 个 DUP ACK
- Xcopy 和 Robocopy(带有重启标志)均失败(同一点)
- FTP 传输在 4,14X,XXX,XXX 字节处失败,并且无法在该点重新启动
- 我们尝试在发送之前将文件扩展名(很愚蠢,但这是最后的手段)更改为 vhd 以外的其他扩展名,但仍然失败
- 连接如下:戴尔工作站(总部)-> 戴尔 PowerConnect 5448 管理型交换机 (MO) -> HP Procurve 2910al-24G 第 3 层路由器 (MO) -> 100Mb TLS 链路 -> HP Procurve 2910al-24G 第 3 层路由器(数据中心)-> 戴尔 PowerConnect 5448 管理型交换机 (DC) -> 戴尔服务器 (DC)
因此,基本上,从我们的总部到我们的数据中心,只有大于 4GB 的 vhd 文件会失败。这一切都说不通……目前,我相信这是我们的网络硬件设置的问题,但我不明白传输大型 VHD(失败,4GB)和传输大型视频文件(始终有效)之间有什么区别。
答案1
经过几个小时的故障排除(并尝试了这里发布的所有建议),问题出在我们总部和数据中心之间的 TLS 链接上。我打电话给我们的 TLS 提供商,在与几位 NOC 技术人员交谈后,其中一位之前听说过这个确切的问题。原来是他们的一些第 2 层设备很旧,并且存在 VHD 数据问题。
解决方案是升级这些设备上的固件,该操作由 TLS 提供商执行。我们现在传输大型 VHD 没有任何问题。如果您感兴趣,我们的 TLS 提供商是位于加拿大维多利亚的 Shaw Communications。
答案2
尝试 Xcopy 或 Robocopy;至少一个或两个都有“恢复”开关。Rsync 也可能有帮助。
好奇一下,是不是其中一台机器是 32 位的,而另一台是 64 位的?如果是这样,您可以暂时在 64 位机器上尝试您的副本吗?
答案3
在 Google 上搜索大型文件网络复制失败,你会发现一些讨论类似问题的帖子,但不仅仅是 vhd。此 KB 通常链接到查看调整 NIC 设置是否有帮助。TCP 卸载、烟囱设置等。