← 返回博客列表

缓冲膨胀怎么测:排队延迟、SQM 和线路同时开着

2026-09-14 · 刺猬VPN

语音通话或游戏里,平时延迟稳定,一开始大文件下载或别人看高清,延迟就从几十毫秒跳到几百甚至上千。网页图标还在转,游戏却已经判定超时。用测速只看下行带宽,数字仍然很高,于是误以为是线路国际段坏了,反复换节点,延迟在下载时照样爆炸。

这种现象叫缓冲膨胀:设备或路由器在带宽用满时缓存了太多包,新包要等长队走完才发出。该收紧的是队列,不是再找一条名义上更快的线路。下面用测试页、路由器上的队列管理和隧道开销分开处理。

空闲延迟和加载延迟不是同一个数

只在别人也在用宽带时发作,就优先怀疑缓冲膨胀。全天任何时候都高,才去看国际段和节点距离。两件事可以同时存在,但要先做加载测试,不要跳过。

对比项空闲正在下载或上传只看测速带宽
延迟接近平时的基线可能翻几倍到几十倍测速不告诉你这个
带宽几乎没用满顶在签约速率附近数字好看
游戏和通话正常卡住、超时解释不了卡顿
原因队列是空的缓存排了长队工具没测队列
该改的地方不必改限制队列长度换节点往往无效
和隧道隧道也占一点开销开销会让队更早排满要一起算

从测到改队列:分步操作步骤

  • 第一步:先把网络线路准备好,并且这次测试要做两遍。安装刺猬VPN,自定义用户名和密码即可匿名注册,不需要邮箱、也不需要手机号。免费节点永久免费、不限流量、不限速,全程 HTTPS+AES 加密。第一遍先断开隧道,测家里宽带本身;第二遍再连上常用节点,看隧道加上之后加载延迟变了多少。
  • 第二步:打开波形的缓冲膨胀测试页,让它同时跑下行和上行。记下空闲延迟、下载时延迟、上传时延迟三组数字。不要只截带宽。
  • 第三步:若断开隧道时,下载中的延迟已经比空闲高很多,问题在光猫或路由器的队列,不在节点。先改本地队列,再谈换国家。
  • 第四步:路由器若支持队列管理,启用 SQM,算法优先选 CAKE,没有就用 fq_codel。把下行和上行整形速率设为实测带宽的大约八成到九成,给队列留出余量,而不是填成签约的标称值。
  • 第五步:改完再跑同一页测试。目标是下载进行时延迟不要再冲到空闲值的数倍以上。带宽会少一截,这是用速率换延迟,属于预期。
  • 第六步:然后再连上隧道重测。隧道有封装开销,整形值往往还要再降一点,否则队会在隧道外面重新排长。封装和分片问题另见 MTU 设置。
  • 第七步:用系统自带的 ping 看空闲基线,加载时再开一个窗口持续 ping。怎么读每一跳,见 路由跟踪和 ping。某一跳只在加载时变高,队就在那一段。
  • 第八步:电脑上不要同时开多个测速。测速本身会把队打满,两个测速叠在一起没有参考价值。
  • 第九步:游戏或通话时,让大文件下载走已经整形过的路由器,而不是绕过路由器直接拨号。绕过之后 SQM 管不到那些包。

按测试结果决定改哪里

三组数字能决定该动路由器、动隧道,还是两者都先别动。

  • 断开隧道,加载延迟就已经很差:先做 SQM。此时换节点没有意义,包在进隧道之前已经排了长队。
  • 断开隧道正常,连上隧道后只有加载延迟变差:整形值没有算进封装开销。把上下行整形再降一档,或检查分片。
  • 空闲延迟本身就很高,加载并不额外升高:这不是缓冲膨胀。去看节点距离和丢包,而不是把整形降到很低。
  • 只有上行加载时延迟爆炸:视频会议和直播更容易中招。上行整形要比下行更保守,因为上行通常更窄。
  • 无线客户端差、有线客户端正常:队在无线空口,不在宽带。先用网线复测,不要把无线拥塞写成国际线路故障。
  • 开了 SQM 仍然差:整形值设得高于真实带宽,队还在光猫里。把速率再降低,直到加载延迟下来,再慢慢往上加。
  • 测试页打不开:页面本身需要能访问。用已连上的线路打开测试页,但解读时记住第一遍对比必须有一次是断开隧道的。
  • 改完只快了一时:有新设备把带宽占满且没走这台路由器。把所有设备收回同一台做了 SQM 的网关后面。

队列管理、换节点和什么都不做

刺猬VPN不代替路由器上的队列管理,也不会把家里的上行变宽。它解决的是访问路径。免费节点和时长套餐都不限速,是指服务自身不对账号设速率上限,不表示家用宽带不会排队。时长套餐期间不限流量、不限速。实际速度和延迟受本地网络、国际出口和节点负载影响。实际可用性取决于当前网络环境。

对比项路由器 SQM只换节点关闭测速硬扛
对加载延迟直接限制队列不缩短本地的队无帮助
对空闲延迟影响很小取决于距离无变化
带宽主动留出余量不增加家里上行看起来最高
适合一下载就卡的网络空闲时已经很高只偶尔传小文件
隧道整形要扣掉封装仍要本地整形无关
风险设太低会浪费带宽误判问题来源通话继续超时

光猫、路由器和隧道各管一段

运营商光猫如果工作在路由模式,又在后面接了自己的路由器,队列可能排在光猫里,后面的 SQM 只能管到内网。能把光猫改成桥接、由自己的路由器拨号时,整形才作用在真正的瓶颈上。不能改桥接时,就把整形设得更低,让队排在你能控制的设备上,而不是光猫那条看不见的缓存里。

隧道客户端若只装在一台电脑上,这台电脑的流量受隧道影响,其他设备仍直接走宽带。测缓冲膨胀时写清楚测的是哪一台。全屋设备都要稳定延迟,应把隧道做到网关上,或接受只有这一台走隧道。

不要为了「优化」去关掉系统里名字带调度的服务。那些开关和路由器的 SQM 不是一回事,乱关只会让本机更难判断。先把测试数字记下来,再动路由器。

和分片、逐跳排查怎么配合

加载时延迟高,同时出现网页大图失败、只有小请求成功,要怀疑分片,按 MTU 设置 把隧道的最大包长对齐。延迟高但大文件仍能下完,只是游戏超时,那是队列问题,改 MTU 帮助有限,应做 SQM。

想知道队排在第几跳,用 路由跟踪和 ping 的方法,在空闲和下载各打一次。某一跳的时间只在下载时变长,就把整形放在这段之前的设备上。国际段每一跳都高,那是距离和出口,不是家里的缓冲膨胀,这时换更近的节点才有意义。

常见报错速查表

现象原因解决办法
一下载延迟就翻倍瓶颈处缓存过深SQM 整形到实测带宽八成到九成
只有上行时爆炸上行更窄上行整形更保守
断隧道也差问题在光猫或本地路由先做本地队列
只在连隧道后变差没算封装开销再降低整形值并查分片
空闲就很高不是缓冲膨胀查距离和丢包
有线正常无线差无线拥塞先用网线复测
SQM 开了仍差整形高于真实带宽继续降低直到延迟回落

记下三次测试再决定

建议在纸上写三行:断开隧道的空闲延迟、断开隧道的下载延迟、连上隧道的下载延迟。第一行和第二行接近,说明家里队列健康。第二行已经很差,先动路由器。第二行好、第三行差,再改整形余量和分片。不要凭一次测速的带宽截图下结论。

测试选在别人不用宽带的时候做基线,再在晚高峰复测一次。晚高峰变差可能是运营商侧队列,你家的 SQM 只能管到自家出口,管不到局端。这时整形仍然有用,它至少不让家里的人互相把队排得更长。

改完参数后重启路由器,再测。有的固件要应用后才生效,页面上已经勾选但队还是旧的。把生效前后的两组数字留着,方便一次只改一个量。同时改算法、速率和隧道节点,就不知道是哪一项起了作用。

晚高峰测出的加载延迟,要和白天的基线比,不要和邻居口头说的带宽比。签约速率写的是最高能力,不是排队时还能保住的延迟。把整形设成签约数字的满值,队仍会排在更窄的那一段。先降到加载延迟可接受,再每次加一点,直到延迟刚要变差就停。家里有人视频通话时,先暂停云盘上传再复测,否则你会把别人的上传误判成光猫坏了。

高频问答

  • 问:把带宽整形到九成会不会更慢?答:大文件会少一截峰值,换来的是加载时延迟不再冲高。只传小文件时几乎感觉不到。
  • 问:必须刷第三方固件吗?答:只有原厂没有队列管理时才需要。有 SQM 或等效的队列设置就先用原厂。
  • 问:和节点快慢有关吗?答:空闲延迟跟距离有关。加载时额外增加的那一截,主要是队列,不是节点广告里的带宽。
  • 问:游戏加速器能消掉吗?答:它不缩短你家路由器里的队。队在本地时,要改的是整形。
  • 问:无线网格会加重吗?答:会。回程也在排队。先用单台有线路由复测,确认瓶颈在不在无线。
  • 问:测试页的评分要追到满吗?答:不必。只要下载进行时延迟相对空闲可接受即可。评分规则会变,以你自己的三组数字为准。

先测加载,再谈换节点

缓冲膨胀的标志是空闲延迟正常、一带宽打满延迟就飙升。用测试页记下三组数字,在路由器上做队列管理,整形留出余量,连上隧道后再降一档给封装。空闲就已经很高,才去看节点和逐跳。

刺猬VPN提供断线保护和按域名、IP 的智能分流,注册不需要邮箱和手机号。免费节点永久免费、不限流量、不限速,时长套餐在有效期内同样不限流量、不限速。这不等于家里的队列不会排长。支付目前支持支付宝、微信支付和 USDT(TRC20),以支付步骤中实际显示的选项为准。实际可用性取决于当前网络环境。

开始使用刺猬VPN:免费节点即刻体验,全球会员线路

刺猬VPN提供永久免费节点,不限流量;无需邮箱,自定义用户名即可匿名注册。一个账号支持多设备同时在线,实际可用性取决于当前网络环境。