BBR(TCP BBR 拥塞控制算法)由Google推出,目前已被合并至Linux 4.1内核中。也就是说,只要升级内核,系统便自动具备了BBR功能。当服务器或VPS遇到网络瓶颈时,传统的加速或优化方案往往会引起ISP或服务提供商对带宽资源分配不均的担忧,而BBR算法则在此方面显示了其独特优势。
安装BBR其实并不复杂,可以利用一键脚本来完成安装。这里推荐使用teddysun提供的BBR一键安装脚本(适用于除OpenVZ虚拟外的XEN、KVM、VMware等环境,以及独立服务器;当前支持的系统包括CentOS 6及以上、Debian 7及以上以及Ubuntu 12及以上版本)。具体步骤如下:
1. 使用root用户登录服务器,执行以下命令下载并赋予脚本可执行权限:
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
chmod +x bbr.sh
./bbr.sh
2. 安装过程中,脚本会提示你重启VPS,直接输入“y”确认后,系统将自动重启。
3. 重启后,登录服务器,需验证内核升级及BBR的启用情况。首先,通过以下命令确认内核版本:
uname -r
如果内核版本包含“4.10”,则说明升级成功。
4. 接着查看系统可用的拥塞控制算法:
sysctl net.ipv4.tcp_available_congestion_control
正常返回的内容通常类似于:
net.ipv4.tcp_available_congestion_control = bbr cubic reno
5. 再确认BBR是否为当前启用的拥塞控制算法:
sysctl net.ipv4.tcp_congestion_control
预计返回:
net.ipv4.tcp_congestion_control = bbr
6. 最后,通过检查队列管理策略与内核模块状态来确保BBR正常运行:
sysctl net.core.default_qdisc
返回值应为:
net.core.default_qdisc = fq
同时执行:
lsmod | grep bbr
如果能看到tcp_bbr模块,则说明BBR已成功加载。
对于需要手动升级内核的用户,下面提供两种常见系统的操作方法:
【CentOS用户】
若使用的是CentOS系统,可通过执行以下命令升级内核:
yum --enablerepo=elrepo-kernel -y install kernel-ml kernel-ml-devel
如果你使用的是CentOS 6,则需调整默认启动内核:
sed -i 's/^default=.*/default=0/g' /boot/grub/grub.conf
对于CentOS 7,使用如下命令设定默认内核:
grub2-set-default 0
【Debian/Ubuntu用户】
对于Debian或Ubuntu系统,需要手动下载对应版本的新内核安装包。若系统为64位,则下载包含“generic”字样的amd64版本;若为32位,则下载相应的i386版本。安装示例如下(以下以某版本的64位内核为例,请替换为实际下载的deb包名称):
dpkg -i linux-image-4.9.3-040903-generic_4.9.3-040903.201701120631_amd64.deb
安装完成后,还需更新启动配置:
/usr/sbin/update-grub
最后重启服务器以使新内核生效。
通过这些步骤,你的服务器就能享受BBR带来的网络性能优化,无论是传统应用还是大型网络服务,都将受益于更低的延迟和更高的稳定性。