BBR介绍

Google BBR (Bottleneck Bandwidth and RTT) 是一种新的TCP拥塞控制算法,它可以高效增加吞吐和降低网络延迟,并且Linux Kernel4.9+已经集成该算法。开启BBR也非常简单,因为它只需要在发送端开启,网络其他节点和接收端不需要任何改变。项目地址:https://github.com/google/bbr

检查现有内核

  1. # uname -r

如果内核大于等于4.9则跳过升级直接开启Google BBR

升级内核

安装 ELRepo 仓库

  1. rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
  2. rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
  1. yum --enablerepo=elrepo-kernel install kernel-ml -y #安装新内核
  2. egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \' #查看当前系统内的内核

CentOS Linux (3.10.0-1062.9.1.el7.x86_64) 7 (Core) CentOS Linux (5.4.4-1.el7.elrepo.x86_64) 7 (Core) CentOS Linux (3.10.0-1062.4.3.el7.x86_64) 7 (Core) CentOS Linux (3.10.0-1062.el7.x86_64) 7 (Core) CentOS Linux (0-rescue-b97c1797f883eb5f3d72134d451d0384) 7 (Core)

  1. #新内核的索引是1
  2. grub2-set-default 1 #设置为新内核启动
  3. reboot #重启以新内核启动
  4. uname -r #重启后检查内核版本 如下显示即为成功

5.4.4-1.el7.elrepo.x86_64

  1. ```
  2. <a name="3jjtr"></a>
  3. ### 开启BBR
  4. ```bash
  5. vi /etc/sysctl.conf #编辑配置文件 添加下面的内容

net.core.default_qdisc = fq net.ipv4.tcp_congestion_control = bbr

  1. sysctl -p #加载系统参数
  2. lsmod | grep bbr #检查是否开启成功 如下显示即表示成功

tcp_bbr 20480 8

  1. sysctl net.ipv4.tcp_available_congestion_control #另外一种检查方法 如下显示即表示成功

net.ipv4.tcp_available_congestion_control = reno cubic bbr