BBR是Google开源的一种TCP网络拥塞优化算法,可以提高网站访问速度。
查看当前服务器的内核版本。
uname -sr
uname命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。
-a或--all:显示全部的信息;
-m或--machine:显示电脑类型;
-n或-nodename:显示在网络上的主机名称;
-r或--release:显示操作系统的发行编号;
-s或--sysname:显示操作系统名称;
-v:显示操作系统的版本;
-p或--processor:输出处理器类型或"unknown";
-i或--hardware-platform:输出硬件平台或"unknown";
-o或--operating-system:输出操作系统名称;
--help:显示帮助;
--version:显示版本信息。
BBR内核要求是4.9+,通常来说你通过上面这个命令出来的内核版本是在3.几。接下来启用 ELRepo 仓库
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
然后安装新版的稳定版内核
yum --enablerepo=elrepo-kernel install kernel-ml -y
安装完毕后使用下面的命令查看是否安装成功。
rpm -qa | grep kernel
我的显示如下:
kernel-3.10.0-862.14.4.el7.x86_64
kernel-ml-5.3.8-1.el7.elrepo.x86_64
kernel-3.10.0-1062.4.1.el7.x86_64
kernel-headers-3.10.0-1062.4.1.el7.x86_64
kernel-3.10.0-957.5.1.el7.x86_64
kernel-3.10.0-1062.1.2.el7.x86_64
kernel-tools-3.10.0-1062.4.1.el7.x86_64
kernel-tools-libs-3.10.0-1062.4.1.el7.x86_64
kernel-3.10.0-957.1.3.el7.x86_64
里面kernel-ml-5.3.8-1.el7.elrepo.x86_64就是安装的新版版本内核(你看到这篇教程的时候可能内核版本有变化,随机应变)
接下来需要设置系统启动顺序,使用下面的命令。
sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
我的显示如下:
CentOS Linux (5.3.8-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-1062.4.1.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-1062.1.2.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.5.1.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.1.3.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-862.14.4.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-618ca2de6e204efbb013b592564ef36a) 7 (Core)
排在第一的就是CentOS Linux (5.3.8-1.el7.elrepo.x86_64) 7 (Core),从第一行为0依次数,0、1、2、3这样,看你的新内核是第几。 然后就输入下面的命令(命令例子为第1行)
sudo grub2-set-default 0
接下来重启服务器
reboot
再次查看内核版本
uname -r
内核版本显示为4.9以上,本文更新的时候新版版本是5.3.8,就证明安装成功了。
重建内核配置
grub2-mkconfig -o /boot/grub2/grub.cfg
重启系统验证,没问题就OK了。
在CentOS7新内核上开启BBR
要在新安装好的CentOS7上面启用新内核,只需要复制下面的代码执行就可以了。
echo 'net.core.default_qdisc=fq' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv4.tcp_congestion_control=bbr' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
然后输入下面的命令查看是否开启BBR成功
sudo sysctl net.ipv4.tcp_available_congestion_control
成功的话应该是下面这种输出
net.ipv4.tcp_available_congestion_control = bbr cubic reno
继续验证
sudo sysctl -n net.ipv4.tcp_congestion_control
输出应该是
bbr
最后看内核模块是否加载
lsmod | grep bbr
输出应该是类似下面这种
tcp_bbr 16384 0
开启BBR有什么用?
简单来说,开启BBR可以对你网站访问速度起到一定的优化。BBR是Google开源的一种TCP网络拥塞优化算法,TCP BBR 致力于解决两个问题:在有一定丢包率的网络链路上充分利用带宽。降低网络链路上的 buffer 占用率,从而降低延迟。TCP 拥塞控制的目标是最大化利用网络上瓶颈链路的带宽。
搬瓦工推荐方案
如果您有选择困难症,直接选中间的 CN2 GIA-E方案,季付 $49.99,多达 12 个机房任意切换方案 | CPU/内存 | 硬盘 | 流量/带宽 | 机房 | 价格 | 购买 |
---|---|---|---|---|---|---|
CN2 (最便宜) | 1核/1GB | 20GB | 1TB/1Gbps | DC3 CN2 DC8 ZNET | $49.99/年 | 链接 |
CN2 | 1核/2GB | 40GB | 2TB/1Gbps | $52.99/半年 $99.99/年 | 链接 | |
CN2 GIA-E (最推荐) | 2核/1GB | 20GB | 1TB/2.5Gbps | DC6 CN2 GIA-E DC9 CN2 GIA 日本软银 JPOS_1 荷兰 EUNL_9 | $49.99/季度 $169.99/年 | 链接 |
CN2 GIA-E | 3核/2GB | 40GB | 2TB/2.5Gbps | $89.99/季度 $299.99/年 | 链接 | |
HK | 2核/2GB | 40GB | 0.5TB/1Gbps | 中国香港 CN2 GIA 日本东京 CN2 GIA | $89.99/月 $899.99/年 | 链接 |
HK | 4核/4GB | 80GB | 1TB/1Gbps | $155.99/月 $1559.99/年 | 链接 | |
TOKYO | 2核/2GB | 40GB | 0.5TB/1.5Gbps | 日本大阪 CN2 GIA | $49.99/月 $499.99/年 | 链接 |
TOKYO | 4核/4GB | 80GB | 1TB/1.5Gbps | $86.99/月 $869.99/年 | 链接 | |
搬瓦工优惠码:BWHCGLUKKB | 搬瓦工购买教程:《2024 年最新搬瓦工购买教程和支付宝支付教程》 |