← 返回博客首页

跨国 VPS 网速断崖式下跌?可能你的服务器正在「自我限速」

✍️ 成也 • • 技术 • 👁️ 87 次阅读

跨国 VPS 速度腰斩?你的服务器可能在“主动降速”

很多刚买海外 VPS 的朋友常遇到一个诡异现象:

测速线路正常,带宽空空如也,可晚高峰一到,下载速度就从几百 Mbps 直坠到几 Mbps。

多数人的第一反应是:“这线路真烂,又被坑了。”

但真正拖后腿的元凶,很可能是系统默认开启的传统拥塞控制算法——它误判了网络状况,正主动给你的服务器狂踩刹车。

今天用最通俗的大白话,聊透三件事:BBR 到底是什么、为什么管用、以及你到底该不该开。

图片描述

01 传统 TCP:一个容易“惊弓之鸟”的悲观派

要理解 BBR,得先看懂老算法(如 Reno、Cubic)是怎么把好网络搞砸的。

传统算法诞生于上世纪 80 年代,它信奉一个根深蒂固的铁律:丢包 = 发生严重拥堵。

它的应对策略极其敏感且保守:

  1. 全力发包探测极限;
  2. 只要遇到 1%~2% 的轻微丢包;
  3. 立刻腰斩发包速率(直接降速 50%);
  4. 小心翼翼地重新慢速爬坡;
  5. 再次遇到丢包,再次狠砍一半。

这套机制在无干扰的局域网里很有效,但搬到现代跨国公网上,就会引发灾难级的两大硬伤:

  • 误伤严重(假摔当骨折):跨国光纤长距离传输,Wi-Fi 偶发抖动、光纤接口微弱跳动都会造成无害的随机丢包。物理管道明明畅通无阻,老算法却像个惊弓之鸟,一见丢包就自废武功,1Gbps 的大水管硬生生被限速成了小水龙头。
  • 缓冲膨胀(Bufferbloat):老算法非要一直猛发包,直到把沿途所有路由器的缓存区全塞爆、挤出丢包才肯停下。带宽没跑满,数据全堵在半路排队,延迟(RTT)从几十毫秒飙升到几百毫秒。

02 BBR 是什么:用「实测」替代「瞎猜」

BBR(Bottleneck Bandwidth and RTT)是 Google 于 2016 年开源并合入 Linux 内核(4.9+)的一套全新拥塞控制算法。

一句话说明白区别:

  • 传统算法靠「猜」:丢包了?那肯定堵车了,减速!
  • BBR 算法靠「测」:丢包了?等等,我测一下实际吞吐和物理延迟,路没堵?那继续全速跑!

划重点:BBR 不是魔法,不是黑客代理,更不可能凭空扩大你的物理带宽。它所做的是优化调度机制,把线路原有的性能彻底榨干。

03 核心原理:让水管刚好装满

BBR 会在通信时实时测量链路的两个物理硬指标:

  1. BtlBw(瓶颈带宽):这条线路到底能吃下多大的最大吞吐量。
  2. RTprop(最小往返时延):光信号在物理介质里跑完单趟的最快时间。

两者的乘积(BDP,带宽时延积),就是这条通信管道的最佳物理容量。

一个形象的比喻:

老算法是往水管里死命灌水,直到管子爆了喷水(丢包)才关阀门;

而 BBR 是精准算好管道体积,让水刚好装满整个管壁——既不溢出排队,也不留空闲浪费。

04 开启 BBR,能带来哪些肉眼可见的改变?

  • 抗随机丢包极强:即便跨国链路出现 5%~15% 的偶发丢包,只要物理瓶颈没变,BBR 依然顶着上限全速发送,配合快速重传补发数据,网速稳如泰山。
  • 显著压低排队延迟:不再疯狂挤占路由器缓冲区,网页首屏渲染更快,API 响应与游戏联机更顺畅。
  • 单向生效,配置极省心:只要在 VPS 服务端开启,所有走 TCP 的流量(如网站访问、文件下载、加密传输等)立即全局受益,手机和电脑客户端完全不需要改动任何设置。

05 我该开吗?看这三条就够了

推荐开:

  • 跨国 VPS、海外云服务器使用者;
  • 晚高峰经常遭遇网络抖动、偶发丢包的线路;
  • 大文件传输、高清流媒体、远程交互等高延迟长连接场景。

没必要开:

  • 本地局域网、同机房内网、低延迟同城优质专线(本身无丢包,开了也没感知空间);
  • 纯走 UDP 协议的应用(BBR 只对 TCP 流量生效)。

06 Linux 两步配置,直接点亮

前提检查

要求 Linux 内核版本 ≥ 4.9(运行 uname -r 即可查看,主流系统 5.x / 6.x 均已内置支持)。

第一步:写入系统参数

在终端依次执行以下命令:

Bash

echo "net.core.default_qdisc=fq" | sudo tee -a /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

第二步:验证生效

执行命令:

Bash

sysctl net.ipv4.tcp_congestion_control

如果输出显示:

net.ipv4.tcp_congestion_control = bbr

即代表开启成功,即刻生效。

07 避坑:澄清两个最容易踩的误区

  1. “开了 BBR 就能把 10M 宽带变成 100M?” 不能。物理上限由运营商决定,BBR 只是帮你找回原本属于你的速度,避免它被传统算法误砍。
  2. “开了 BBR 就免疫所有丢包?” 不能。它能扛住的是由于物理链路抖动造成的“随机丢包”;如果整个机房光纤全堵死、物理丢包率飙到三四十,神仙算法也无力回天。

写在最后:

面对网络慢,最稳妥的排查逻辑不是盲目花钱换线路,而是先理清:到底是真的带宽不够,还是底层机制正在踩刹车?

只需两条命令,或许就能解决困扰你许久的网速瓶颈。

文章核心标签:综合教程
📚

【科学上网】专题连载目录 (共 3 篇)

查看专题全部 ➔
第 1 篇 新手小白搭建节点教程
阅读 ➔
第 2 篇 VPS常用命令脚本
阅读 ➔
第 3 篇 跨国 VPS 网速断崖式下跌?可能你的服务器正在「自我限速」 (当前阅读)
📍 本篇

跨专题延伸阅读

相关推荐