Ubuntu 24.04 启用BBR

DXing Blog

Github Copoilot AI 文档


在 Linux Ubuntu 24.04 中,BBR(Bottleneck Bandwidth and Round-trip propagation time)是一种拥塞控制算法,可以通过以下步骤来检查是否已启用 BBR,并在未启用时进行启用

一、检查是否已启用BBR

在终端中执行以下命令:

1
sysctl net.ipv4.tcp_congestion_control
  • 如果输出结果为 tcp_congestion_control = bbr,则表示 BBR 已启用;如果输出结果为 tcp_congestion_control = cubic,则表示 BBR 未启用。

二、启用 BBR

(一)编辑 sysctl 配置文件

使用以下命令打开 /etc/sysctl.conf 文件进行编辑:

1
sudo nano /etc/sysctl.conf

在文件末尾添加以下两行内容:

1
2
3
# Enable BBR
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

添加完成后,保存并退出编辑器(在 nano 编辑器中,按 Ctrl + X,然后按 Y 确认保存,最后按 Enter 键退出)。

(二)应用更改

执行以下命令以应用更改:

1
sudo sysctl -p

(三)验证 BBR 是否已启用

执行以下命令:

1
sysctl net.ipv4.tcp_congestion_control

如果输出结果为 ·tcp_congestion_control = bbr·,则表示 BBR 已启用。

三、检查 BBR 的状态

执行以下命令:

1
2
3
ss -i | grep -i bbr
# 或者
lsmod | grep bbr

若看到 bbr 字样,表示 BBR 已经生效。

四、持久化配置

由于上述修改已经写入到 /etc/sysctl.conf 文件中,所以系统重启后 BBR 仍然会生效,无需额外操作。

五、其他注意事项

(一)内核版本

BBR 需要 Linux 内核 4.9 或更高版本。Ubuntu 24.04 默认的内核版本应该已经满足要求,不过你可以通过以下命令检查内核版本:

1
uname -r

(二)网络接口

如果你只想在特定的网络接口上启用 BBR,可以使用 tc 命令进行更精细的配置。

六、禁用 BBR

若你需要禁用 BBR,可以将 net.ipv4.tcp_congestion_control 设置为其他拥塞控制算法,例如 cubic

1
sudo sysctl -w net.ipv4.tcp_congestion_control=cubic

然后同样将其写入 /etc/sysctl.conf 以持久化配置:

1
echo "net.ipv4.tcp_congestion_control = cubic" | sudo tee -a /etc/sysctl.conf