3月 272019
 

BBR介绍

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

升级内核

1. 打开Terminal

输入

# uname -r 

查看内核版本,如果输出类似

3.10.0-514.21.2.el7.x86_64

则表示小于4.9,需要升级内核,
而如果内核大于等于4.9则跳过至开启Google BBR

2. 升级内核

  • 安装 ELRepo 仓库

    # rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm 
  • 安装最新版kernel

    # yum --enablerepo=elrepo-kernel install kernel-ml -y 
  • 确认是否安装成功

    # rpm -qa | grep kernel 

    如果输出类似如下,包含kernel-ml-4.13.10-1.el7.elrepo.x86_64,则表示安装成功

    kernel-3.10.0-693.el7.x86_64
    kernel-tools-3.10.0-693.el7.x86_64
    kernel-ml-4.13.10-1.el7.elrepo.x86_64
    kernel-tools-libs-3.10.0-693.el7.x86_64

  • 设置开机默认启动项

    # egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \' 

    输出结果类似如下

    CentOS Linux 7 Rescue f212d2d7754a4a6bb2b98950c20cc0b5 (4.13.10-1.el7.elrepo.x86_64)
    CentOS Linux (4.13.10-1.el7.elrepo.x86_64) 7 (Core)
    CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
    CentOS Linux (0-rescue-d1f142097d497f24c021d7de9b81cab4) 7 (Core)

    该列表从0开始索引,所以4.13内核索引为1

  • 设置启动项

    # grub2-set-default 1 
  • 重启

    # reboot 

    查看内核版本

    # uname -r 

    如果输出类似

    4.13.10-1.el7.elrepo.x86_64

    则表示升级完成

开启Google BBR

  • 修改sysctl配置

    # echo 'net.core.default_qdisc=fq' | tee -a /etc/sysctl.conf # echo 'net.ipv4.tcp_congestion_control=bbr' |  tee -a /etc/sysctl.conf # sysctl -p 
  • 检查是否加载BBR

    # lsmod | grep bbr 

    如果输出结果包含tcp_bbr,则表示开启成功

    tcp_bbr 20480 0

转自:https://www.jianshu.com/p/52815c34215e

Sorry, the comment form is closed at this time.