BBR + fq 在 1 核小机器上的实际效果
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 的提升很有限。