下载一开全家卡?路由器一个开关救回延迟

很多人都有过这样的体验:本来顺畅的视频会议,只要有人在家里的网络上下载一个十几 GB 的大文件,画面立刻卡成幻灯片,游戏延迟也跟着飙升,连网页都转圈。可奇怪的是,打开测速软件,显示的下载速度明明还是正常的几十 Mbps。MakeUseOf 的一位撰稿人研究后发现,问题并不在带宽,而在「延迟」。

一、先搞清楚是不是缓冲膨胀

下载前的网络延迟(ping)可能只有 18ms 左右,但大下载一启动就飙到 380ms 以上。原因是大文件填满了网络设备的发送队列,语音、游戏这些小数据包虽然很轻,却被迫排在那一大串下载流量后面慢慢等,于是表现为卡顿和掉字。这种现象有个名字叫「缓冲膨胀」(bufferbloat)。

二、给路由器开智能队列管理

根治办法是开启路由器的 SQM(Smart Queue Management,智能队列管理)。它的思路有点反直觉:主动把路由器的整形速率设在比实际最大值略低一点,例如实测 65Mbps 就设成 57Mbps。这样路由器会在你控制不了的瓶颈之前就管好队列、留出余量,队列就永远不会堆得太深。具体实现常叫 CAKE 算法,能公平地把带宽分给各路流量,不让单个大下载霸占整条队列。

三、上手操作步骤

  1. 浏览器登录路由器管理后台(通常是 192.168.1.1 这类网关地址)。
  2. 在设置里找到 QoS、SQM 或「智能队列管理」,部分固件直接叫 CAKE 或 fq_codel。
  3. 开启 SQM,把上行和下行整形速率填成比实测峰值低一点的数值。
  4. 如果路由器原厂固件不开放 SQM,可以刷 OpenWrt、Asuswrt-Merlin、DD-WRT 或 FreshTomato 等第三方固件,不同固件步骤不同。
  5. 用专门的缓冲膨胀测速站验证:负载下的延迟应从 380ms 降到 30ms 上下,评分从 F 跃升到 A+。

四、几点提醒

开启整形会略微牺牲峰值下载速度(大约少几 Mbps),但换来的是全程流畅,对绝大多数家庭网络都有效。要注意老路由器的 CPU 可能带不动高速连接的整形;另外 SQM 处理的是你家能控制的这一段,若拥堵发生在更上游你管不到的地方,它的帮助就有限了。

来源:MakeUseOf