Linux【7】-远程连接-7-2-CentOS7 配置BBR加速
一、介绍
TCP BBR是谷歌出品的TCP拥塞控制算法。BBR目的是要尽量跑满带宽,并且尽量不要有排队的情况。BBR可以起到单边加速TCP连接的效果。
Google提交到Linux主线并发表在ACM queue期刊上的TCP-BBR拥塞控制算法。继承了Google“先在生产环境上部署,再开源和发论文”的研究传统。TCP-BBR已经再YouTube服务器和Google跨数据中心的内部广域网(B4)上部署。由此可见出该算法的前途。
TCP-BBR的目标就是最大化利用网络上瓶颈链路的带宽。一条网络链路就像一条水管,要想最大化利用这条水管,最好的办法就是给这跟水管灌满水。
BBR解决了两个问题:
在有一定丢包率的网络链路上充分利用带宽。非常适合高延迟,高带宽的网络链路。
降低网络链路上的buffer占用率,从而降低延迟。非常适合慢速接入网络的用户。 Google 在 2016年9月份开源了他们的优化网络拥堵算法BBR,最新版本的 Linux内核(4.9-rc8)中已经集成了该算法。
对于TCP单边加速,并非所有人都很熟悉,不过有另外一个大名鼎鼎的商业软件“锐速”,相信很多人都清楚。特别是对于使用国外服务器或者VPS的人来说,效果更佳。
BBR项目地址: https://github.com/google/bbr
二、安装(vultr)
2.1 yum更新系统版本:
yum update
2.2 查看系统版本:
[root@amber ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
2.3 安装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
yum --enablerepo=elrepo-kernel install kernel-ml -y
2.4 更新grub文件并重启系统:
[root@amber ~]# uname -r
3.10.0-862.11.6.el7.x86_64
[root@vultr ~]# egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
CentOS Linux 7 Rescue 67b1b621a485435f9324c8a8f42a6a74 (5.6.12-1.el7.elrepo.x86_64)
CentOS Linux (5.6.12-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-1127.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-3de5e3871cf74242a7b1aa185718cde7) 7 (Core)
由于序号从0开始,设置需要的内核为启动项
[root@amber ~]# grub2-set-default 0
[root@amber ~]# reboot
2.5 重启完成后查看内核是否已更换为新版本
[root@vultr ~]# uname -r
5.6.12-1.el7.elrepo.x86_64
2.6 开启bbr
vim /etc/sysctl.conf
# 在文件末尾添加如下内容
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
2.7 加载系统参数
sysctl -p
[root@vultr ~]# sysctl -p
net.ipv6.conf.all.accept_ra = 2
net.ipv6.conf.eth0.accept_ra = 2
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
如上,输出了我们添加的那两行配置代表正常。
2.8 确定bbr已经成功开启
[root@vultr ~]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic bbr
[root@vultr ~]# lsmod | grep bbr
tcp_bbr 20480 1
输出内容如上,则表示bbr已经成功开启。
参考资料
这里是一个广告位,,感兴趣的都可以发邮件聊聊:tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn