Plainnotes

BBR + fq 在 1 核小机器上的实际效果

2025-11-08 · 4 分钟网络

1 核 2G 的洛杉矶小机,默认 cubic,单线程下载长期卡在 20–30 Mbps,同一台机器多线程能跑到 200 以上。典型的长肥管道加丢包场景。

开了 BBR:

net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

单流下载从二十多提到八十左右,晚高峰的波动也小了。CPU 从 3% 涨到 10% 上下,1 核完全吃得下。

几个观察:

  • 上传几乎没变化,瓶颈不在拥塞控制这一侧;
  • fq 的 quantum 默认 1514,小机器别去调大,队列一长延迟反而上去;
  • ss -ti 里看 cwnd 和重传,BBR 的窗口涨得比 cubic 快很多——这是它敢抢带宽的原因,也是它跟同机其他流量共处时不太客气的原因;
  • 如果这台机器还跑着别的服务,BBR 会分走它们一部分带宽,要有预期。

值得开,但先确认瓶颈是拥塞控制而不是线路本身。如果 RTT 只有 150ms 且不丢包,BBR 的提升很有限。