前言

很多用户购买了便宜VPS后发现网络速度不理想,尤其是连接海外服务器时延迟高、丢包严重。其实很多时候并不是VPS本身的问题,而是TCP拥塞控制算法没有优化。BBR是Google开发的TCP拥塞控制算法,开启后可以显著提升VPS的网络传输速度,是VPS必备的优化操作之一。本文教你如何在VPS上一键开启BBR加速。

一、什么是BBR

BBR(Bottleneck Bandwidth and Round-trip propagation time)是Google在2016年发布的TCP拥塞控制算法。传统的TCP算法(如Cubic)在检测到丢包时会大幅降低传输速度,而BBR通过主动测量带宽和延迟来决定发送速率,在有丢包的网络环境下依然能保持较高的传输速度。

对于连接海外VPS的用户来说,开启BBR后下载速度和连接稳定性通常会有明显提升,部分场景下速度可以提升数倍。

BBR版本说明

  • BBR v1:Linux内核4.9及以上自带,目前最常用
  • BBR v2:仍在开发中,部分内核可手动编译使用
  • BBRv3:最新实验版本,需要特殊内核支持

普通用户使用BBR v1即可满足需求。

二、检查当前拥塞控制算法

在开启BBR之前,先检查一下VPS当前使用的拥塞控制算法:

# 查看当前使用的拥塞控制算法
sysctl net.ipv4.tcp_congestion_control

# 查看系统支持的拥塞控制算法
sysctl net.ipv4.tcp_available_congestion_control

如果输出显示 cubicreno,说明还没有开启BBR,需要按照下面的步骤操作。如果已经显示 bbr,则说明已经开启了。

三、一键开启BBR

方法一:手动开启(推荐)

适用于Linux内核4.9及以上的系统(Debian 9+、Ubuntu 16.04+、CentOS 7+等)。

# 添加BBR配置到sysctl
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

# 应用配置
sysctl -p

方法二:使用一键脚本

如果需要安装更新的内核或BBR Plus版本,可以使用一键脚本:

wget -N --no-check-certificate "https://raw.githubusercontent.com/ylx2016/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh

脚本菜单说明:

选项说明
1安装BBR内核
2安装BBR Plus内核
3开启BBR
4开启BBR Plus
5开启BBR Plus + 锐速
6开启暴力BBR

一般选择 1 安装BBR内核,重启后再选择 3 开启BBR即可。

注意:安装新内核后需要重启VPS才能生效。重启前请确保你有SSH连接方式(如VNC控制台),以防新内核不兼容导致无法连接。

四、验证BBR是否生效

# 查看当前拥塞控制算法
sysctl net.ipv4.tcp_congestion_control
# 输出应为:net.ipv4.tcp_congestion_control = bbr

# 确认BBR模块已加载
lsmod | grep bbr
# 输出应包含:tcp_bbr

# 查看内核版本(使用BBR脚本安装新内核的情况)
uname -r

五、进阶优化:配合内核参数调优

开启BBR后,还可以进一步优化内核网络参数以获得更好的效果。编辑 /etc/sysctl.conf,添加以下配置:

# 开启BBR
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr

# 增大TCP缓冲区
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_rmem=4096 87380 16777216
net.ipv4.tcp_wmem=4096 65536 16777216

# 开启TCP Fast Open
net.ipv4.tcp_fastopen=3

# 增大连接队列
net.core.somaxconn=4096
net.core.netdev_max_backlog=5000

# 优化TIME_WAIT
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_fin_timeout=15

# 开启窗口缩放
net.ipv4.tcp_window_scaling=1

# 开启SYN Cookies(防SYN洪水攻击)
net.ipv4.tcp_syncookies=1

应用配置:

sysctl -p

六、常见问题

开启BBR后速度没有明显提升?

BBR主要在有丢包的网络环境下效果明显。如果你的网络本身就很稳定,提升可能不大。另外,BBR优化的是TCP协议,对UDP协议(如游戏、视频流)没有效果。

内核版本低于4.9怎么办?

使用上述一键脚本安装新内核即可。或者升级系统到较新版本(如Debian 12、Ubuntu 22.04),自带的内核已经支持BBR。

安装新内核后VPS无法启动怎么办?

大多数VPS商家提供VNC控制台功能,可以通过网页版控制台连接服务器。在启动引导界面选择旧内核启动,然后卸载有问题的新内核。

BBR和BBR Plus有什么区别?

BBR Plus是社区改进版本,在高丢包环境下表现更稳定,但并非Google官方版本。普通BBR已经足够使用,BBR Plus适合网络质量特别差的情况。

总结

开启BBR是VPS到手后最值得做的优化操作之一,只需两条命令就能显著提升网络速度。如果你购买的便宜VPS网络表现不理想,不妨先试试开启BBR,很可能就能解决问题。