服务器如何开启bbr
开启bbr首先要检查内核是否支持。
# m 表示 BBR 作为内核模块可用,如果是 y 表示BBR 已编译进内核 , 为空或者无输出表示不支持bbr,
cat /boot/config-$(uname -r) | grep -i bbr
CONFIG_TCP_CONG_BBR=m
开启bbr
# 1. 启用 BBR
echo "net.core.default_qdisc=fq" | tee -a /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" | tee -a /etc/sysctl.conf
# 2. 应用配置
sudo sysctl -p
# 3. 验证是否生效
sysctl net.ipv4.tcp_congestion_control # 应输出 "bbr"
lsmod | grep bbr # 检查 BBR 模块是否加载
tcp_bbr 20480 1
了解更多
BBR(Bottleneck Bandwidth and Round-trip propagation time) 是 Google 开发的一种 TCP 拥塞控制算法,旨在优化网络传输性能,减少延迟并提高吞吐量。相比传统的拥塞控制算法(如 CUBIC),BBR 通过更智能地探测网络带宽和 RTT(往返时间)来提升网络效率。
BBR 的核心原理
- 基于带宽和延迟的模型
- 传统算法(如 CUBIC)依赖丢包来判断网络拥塞,而 BBR 则主动测量:
- 可用带宽(Bottleneck Bandwidth):当前路径的最大传输速率。
- 最小 RTT(Round-Trip Time):数据包往返的最小延迟。
- 通过动态调整发送速率,避免网络拥塞,而不是等到丢包才降速。
- 传统算法(如 CUBIC)依赖丢包来判断网络拥塞,而 BBR 则主动测量:
- 避免 Bufferbloat(缓冲区膨胀)
- 传统算法可能导致路由器/交换机缓冲区填满,增加延迟(Bufferbloat)。
- BBR 尽量让数据流量接近但不超出可用带宽,减少排队延迟。
- 更平滑的性能
- 在高延迟、高丢包网络(如国际链路、无线网络)中,BBR 通常比 CUBIC 表现更好。
BBR 的优势
✅ 降低延迟:减少数据包排队时间,提升实时应用(如视频会议、游戏)体验。
✅ 提高吞吐量:更充分地利用可用带宽,加快下载/上传速度。
✅ 抗丢包能力强:在丢包率较高的网络(如 4G/5G、跨境链路)中仍能保持稳定速度。
✅ 无需硬件支持:纯软件实现,兼容大多数 Linux 内核。