由于某些未知原因,我们的运行 Windows Server 2008 R2 的服务器机箱出现每个连接带宽限制为 0.2 MB/s。这意味着,虽然一个 TCP 连接的最大带宽为 0.2 MB/s,但 60 个并行连接的最大带宽为 12 MB/s。我们在尝试从此服务器签出大型 SVN 存储库时首次注意到了这一点。
问题是我不知道这个限制从何而来。我几乎没有管理 Windows Server 的经验,所以我主要通过谷歌搜索来寻找一些东西。我检查了以下内容:
- 本地计算机策略 > QoS 数据包调度程序 > 限制可预留带宽:未配置;
- 组策略管理控制台:我们有两个 GOP,但都没有基于策略的 QoS定义;
- 据我所知,没有安装任何带宽限制程序。
我们正在使用标准 Windows 防火墙。
我使用一个简单的 Java 应用程序来测试这一点,使用可变数量的线程(每个线程一个连接)将数据从服务器传输到工作站。应用程序的服务器部分只是将 1 MB 内存缓冲区写入套接字 100 次,因此不涉及磁盘。每个连接的最高速度为 0.2 MB/s。每个连接的限制与 60 个并行连接相同,但只有一个连接的限制相同。
如果需要的话,我可以用任何其他信息来更新这个问题。
答案1
很有可能,这不是您的服务器的配置问题,而是您的工作站和服务器之间的上游路由器、交换机、防火墙、代理或数据包整形器的配置问题。
如果可以的话(即服务器未投入生产),请采用小型非托管交换机并将笔记本电脑配置为与服务器位于同一子网中。将两者插入交换机,以便测试计算机与服务器之间的通信仅通过您的哑交换机。我敢打赌,您会看到更好的性能,这表明问题出在网络设备而不是服务器本身。