近日有一些用户反馈升级到 Windows 10 周年更新之后网速变慢了,对于这个问题可能的原因有很多。联合优网小编从两个方面来帮助大家分析解决这个问题,其一先是辟谣,其二是重置网卡。如果这 2 种方式都没能解决 Windows 10 周年更新网速变慢,就只能具体问题具体分析了。
Windows接收窗口自动调节
「接收窗口自动调节」是 Windows 10 及之前 Windows 版本中存在已久的一个网络功能,该功能主要用于控制网络包的接收吞吐量缓冲区(receive buffer)大小和链路的延迟。在我们介绍 Windows 10「接收窗口自动调节(Window Auto-Tuning)」功能之前,必需先把 TCP Window Scaling 给说说清楚。
大家都知道,RFC 定义 TCP 协议的时间已经过去 N 多年了,当时的高速带宽还没有普及,大多数互联网连接都是低速链路,因此只定义了 64K 的 TCP receive buffer。而仅 64K 的发送窗口意味着客户端在向服务端发送数据包时,每传输 64K 就需要等待服务器的响应确认,这样的工作方式对于当今大多数高速 Internet 连接来说已经完全不适用了,甚至会大大降低网络数据的传输效率。
由于不可能重写 TCP 协议,所以微软在 TCP header 中引入了 Window Scaling 参数,通过「接收窗口自动调节」的控制可以增大数据传输的 buffer 以提升网络带宽利用率,例如自动调整后的值为 3,则 2^3 X 64K=512K。当然,目前 Windows 所允许调整的最大上限为 14,即 2^14 X 64K=1GB。当然,对于 Windows 客户端而言,要使用 TCP Window Scaling 需要数据和发起方和接收方都启用该功能,而 Windows Vista 及之后版本的所有新版本 Windows 都是默认启用 Window Scaling 即 Window Auto-Tuning 功能的。
原理已经说明完毕,如果你有兴趣更详细了解,可以参考 TCP Receive Window Auto-Tuning 一文!
此前在网上看到有用户说,在升级到 Windows 10 周年更新之后,互联网连接变得非常缓慢,更有人在一些网站上解释说这个问题是由「接收窗口自动调节(Window Auto-Tuning)」功能造成的,关闭这个功能就可以提高网络性能。我在这里正式说明下,这绝逼是在误人子弟啊。前面的原理说明中我们已经介绍过 了,关闭 Window Auto-Tuning 后,由于缺乏客户端与服务端的协商机制,receive buffer 就被限制在了 64K,对于大带宽用户来说,只可能降低网络性能。
对于这个问题,微软官方都看不下去了,并于 8 月 11 日正式公开发布声明,说关闭该功能无疑会限制网速。其实采用 Auto-Tuning 的绝非微软 Windows 一家,现代操作系统包括 Linux 和 OSX 都早已支持 Auto-Tuning。
如何控制Windows 10「接收窗口自动调节」
在此建议大家按如下步骤自行确认「接收窗口自动调节」功能是否打开:
1 使用 Windows + X 快捷键选择打开「命令提示符(管理员)」
2 执行如下命令查看 Window Auto-Tuning 功能是否打开:
netsh interface tcp show global
3 如果「接收窗口自动调节级别」为 disable 可以使用如下命令将其开启:
netsh int tcp set global autotuninglevel=normal
4 如果你要一意孤行,也可以使用如下命令将其手动关闭:
netsh int tcp set global autotuninglevel=disabled
如何处理Windows 10网络连接慢
如果你确实在升级到 Windwos 10 周年更新之后发现网络变慢,而且「接收窗口自动调节」也处于开启状态,还可以通过新的「网络重置」功能来尝试修复。「网络重置」可以帮助用户轻松重置网络适配器来解决网络连接问题,甚至修复缓慢的 Wi-Fi 连接。
1 使用 Windows + I 打开「设置」应用,并在「网络和 Internet」—「状态」中点击「网络重置」按钮。
2 点击「立即重置」按钮。
注意:用户无法对特定的有线或无线网卡进行重置,该功能会删除所有网卡再重装安装,而且所有网络组件也都将被重置为初始化配置。
3 点击「是」确认之后,Windows 10 会自动开始网络重置任务并提示在 5 分钟后重启系统(你可以手动重启)。
由于 Windows 10 周年更新要求内核态驱动必需有微软官方签名,所以建议大家最好到 PC 厂商官网上去下载最新的(网卡)驱动程序进行更新。