TCP BBR(Bottleneck Bandwidth and Round-trip propagation time)是由Google开发的一种拥塞控制算法,已经在Linux 4.1及以后的内核版本中集成。对于网络环境较差的VPS或服务器,传统的网络加速方案常因带宽滥用问题而不被服务商看好,而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
```
2. 赋予执行权限并运行脚本:
```
chmod +x bbr.sh
./bbr.sh
```
安装过程完成后,脚本会提示是否重启VPS,输入‘y’并回车确认重启。
VPS重启后,可以通过以下命令验证BBR是否已经启用:
- 查看内核版本:
```
uname -r
```
显示版本号中包含4.10或以上即表示内核符合要求。
- 查看可用的拥塞控制算法:
```
sysctl net.ipv4.tcp_available_congestion_control
```
返回内容通常包含:bbr cubic reno。
- 查看当前启用的拥塞控制算法:
```
sysctl net.ipv4.tcp_congestion_control
```
返回结果应为bbr。
- 查看默认队列规则:
```
sysctl net.core.default_qdisc
```
返回应为fq。
- 检查BBR模块加载状态:
```
lsmod | grep bbr
```
显示tcp_bbr模块说明BBR已成功启用。
若需要手动升级内核以支持BBR,不同系统的操作如下:
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系统:
需手动下载最新内核的deb安装包。对于64位系统,下载 amd64 架构的 linux-image 包,32位系统则下载 i386 架构的对应包。安装示例如下(以版本4.9.3为例,实际使用时请替换为最新版本的文件名):
```
dpkg -i linux-image-4.9.3-040903-generic_4.9.3-040903.201701120631_amd64.deb
```
安装完成后,更新引导配置:
```
/usr/sbin/update-grub
```
最后,重启服务器使新内核生效。
通过以上步骤,能够顺利完成BBR的安装和配置,显著改善网络拥塞状况,提升服务器的网络传输效率。