我目前在 Windows Server 2012 R2 上遇到一个奇怪的问题。
我的整个网络都使用 CAT6 UTP 连接,所有东西(交换机、适配器等)都能够实现千兆。我的互联网连接速度为 940/100Mbps。
如果我在 Windows 10 机器(客户端)上运行速度测试,我会得到~938/115Mbps。
如果我在 Windows Server 2012 R2(服务器)上运行速度测试,我会得到~248/111Mbps。
如果我使用网络将文件从我的 Windows 10 机器复制到我的服务器,我可以全速传输(110MB/s -> ~940Mbps)。
服务器、机器和调制解调器都连接在同一个交换机上。有人能解释一下吗?
服务器
- Windows Server 2012 R2
- 英特尔 i5 4670k
- 16GB 内存 DDR3
- 4x1TB SSD RAID0
- 网卡 板载英特尔 I217V 10/100/1000
答案1
经过几个小时的搜索问题...我找到了它。
我尝试了不同的操作系统(Live Linux Build),即使我使用 PCI 卡、PCI-e 甚至板载以太网适配器,我仍然得到相同的结果。
我不会让您久等答案……问题出在处理器上。英特尔有一项功能称为“增强型英特尔 SpeedStep® 技术”,或如 BIOS 中所述“英特尔 ISST”。除非您需要快速供电,否则此功能会将 CPU 的频率和电压降至最低。
事实证明,进行 SpeedTesting 并不需要足够的电量来自动禁用上述功能。为什么它在进行网络传输时可以工作?它使用的是适配器的 CPU(Windows 正在卸载数据包的读取),而对于 Chrome 或其他任何程序,它是实际计算机的 CPU。
归根结底,在 BIOS 中关闭增强型 Intel SpeedStep® 技术解决了这个问题。速度测试的表现与我的个人电脑上的表现相同,我的下载速度现在可以达到全速。
唯一的缺点是它反而消耗更多电量,所以我的 UPS 只能持续 44 分钟,而不是 59 分钟。哦,没什么大不了的。
答案2
删除网卡的QoS。默认情况下,操作系统会保留80%的带宽。