我正在运行一个 03 盒,共享处于活动状态。上传到共享时,速度很平均。大约 15-20 mbps。此服务器直接连接到访问服务器的另外 2 台机器。上传到另一台服务器时,连接速度是直接存储的两倍。上传 250 GB 的大型文件夹时,上传将正常开始,但随着上传的进行,速度会下降。现在它大约是 2-7 Mbps。关于如何提高传输速率有什么想法吗?顺便说一句,下载速度很快。这是您期望从此设置获得的速度,主要问题是上传以及导致速度极慢的原因。任何帮助都将不胜感激。
答案1
这取决于您的硬件和要复制的文件结构。复制一个大文件通常比复制许多小文件要快。当您通过网络连接逐个文件复制包含数千个文件的目录结构时,传输速率总是比复制单个大文件慢得多。
但是,如果文件非常大,Windows 2003 可能会陷入一种对服务器的传输速率和整体性能都产生灾难性影响的情况。Windows 2003 将传入的网络文件副本缓冲到 RAM 中,并尽可能快地在后台刷新磁盘。如果您的网络连接速度快于磁盘子系统的速度,则会导致消耗大量 RAM 来存储缓冲数据。如果您要复制到的卷后面只有一个磁盘或少数几个磁盘(RAID 5),那么使用千兆以太网很容易发生这种情况。如果您的文件很小,这不会造成太大的损害,因为复制速度会变慢,因为每个文件在开始下一个文件之前都会被写出(在大多数情况下),但是如果您在这些条件下复制非常大的文件,那么服务器将开始分页输出所有可以分页的内容,如果您要复制的文件明显大于您开始时的可用内存量,这将导致严重的性能问题。
服务器上的其他活动也会对此产生影响 - 如果接收副本的服务器同时执行任何其他 IO,则会导致问题更快发生。您评论说网络副本最初比直接附加存储的本地副本更快,这强烈地表明这只是您问题的一部分,而不是全部。
此行为已在 Windows 2008 中得到修复,但这些变化并未受到普遍欢迎,因为它们似乎减慢了许多从未触发最坏情况行为的副本的速度。
如果是这种情况,那么更快的磁盘会有所帮助 - 如果磁盘能够保持领先于网络传输速率,那么问题就不会发生。迁移到 Windows 2008 应该会有所帮助,但您可能会看到初始复制速度较慢,但特别是在处理大文件时,总体平均传输速率会更好。
本文由 Mark Russinovich 撰写如果您想真正找到问题的根源,有关 Windows Vista 复制行为的变化讨论了 Windows 2003 问题。