https://imgup.oneone.life/app/hide.php?key=R2M2UHVFbUU1Uzc3cGN3OE9ObXRlUEx5SjdlWS9uOWowY2M9

易娃的杂货铺

在Ubuntu16.04和Centos7上启用TCP-BBR

  1. 新增atrandys大佬的一键安装脚本,支持centos7+/debian9+/ubuntu16+:
1
2
3
wget --no-check-certificate https://raw.githubusercontent.com/cx9208/Linux-NetSpeed/master/tcp.sh
chmod +x tcp.sh
./tcp.sh
  1. 新增Google原版BBR一键安装脚本:
1
2
3
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
chmod +x bbr.sh
./bbr.sh

BBR简介

BBR 是 Google 推出的一个「TCP 拥塞控制算法」,它是以 Linux 内核模块的形式加载,可以最大化 Linux Server 的网络吞吐量。

简单地说,开启 BBR 的 Linux Server 和不开启 BBR 的 Linux Server,在持续传输数据方面可以有非常大的不同。

BBR 尽管还没有在主流发行版中默认开启,但 Google 已经在 YouTube 网站上实践了很久,可以说是很成熟的一样技术了。

检测 BBR 是否开启

在开始之前,先看看 BBR 是否已经启用了,执行这条指令可以返回当前 Linux 内核可以使用的 TCP 拥堵控制算法:

grep

用法: grep [选项]… PATTERN [FILE]… 在每个 FILE 或是标准输入中查找 PATTERN。 默认的 PATTERN 是一个基本正则表达式(缩写为 BRE)。 例如: grep -i 'hello world' menu.h main.c

  • 正则表达式选择与解释:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    
      -E, --extended-regexp     PATTERN 是一个可扩展的正则表达式(缩写为 ERE)
      -F, --fixed-strings       PATTERN 是一组由断行符分隔的字符串。
      -G, --basic-regexp        PATTERN 是一个基本正则表达式(缩写为 BRE)
      -P, --perl-regexp         PATTERN 是一个 Perl 正则表达式
      -e, --regexp=PATTERN      用 PATTERN 来进行匹配操作
      -f, --file=FILE           从 FILE 中取得 PATTERN
      -i, --ignore-case         忽略大小写
      -w, --word-regexp         强制 PATTERN 仅完全匹配字词
      -x, --line-regexp         强制 PATTERN 仅完全匹配一行
      -z, --null-data           一个 0 字节的数据行,但不是空行