CentOS 7 自己手動開啟 BBR 加速教程
最新內核查看這裏:http://elrepo.org/linux/kernel/el7/x86_64/RPMS/
運行以下代碼:
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
查看內核是否安裝成功
rpm -qa | grep kernel
kernel-tools-libs-3.10.0-693.21.1.el7.x86_64
kernel-ml-4.17.2-1.el7.elrepo.x86_64
kernel-3.10.0-693.el7.x86_64
kernel-3.10.0-693.11.6.el7.x86_64
kernel-tools-3.10.0-693.21.1.el7.x86_64
kernel-headers-3.10.0-693.21.1.el7.x86_64
kernel-3.10.0-693.21.1.el7.x86_64
kernel-devel-3.10.0-693.21.1.el7.x86_64
刪除舊內核(可選),根據上面內容輸入舊內核的前面幾個字母,用tab鍵補全
rpm -ev 舊內核
更新 grub 系統引導文件並重啟,下面的【default 2】表示將第三個內核設置為默認運行, 選擇最新內核就對了,至於你的是哪個,請運行下面的第一行代碼後,自己認真觀察,換成正確的數字,請務必記得,是從0開始算起。執行以下代碼:
egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
grub2-set-default 2
去你的vps管理面板重啟你的機器。
註意,某些服務商(如Digital Ocean)可能需要首先將VPS配置為可自定義內核,然後grub2的配置才會生效。
另外,如果你是設置了默認內核後,再刪除舊內核,請務必在開機前先重新設置一次默認內核,因為,位置變了,不再是原來的2了。
開啟bbr
開機後 uname -r 查看內核
[root@ss ~]# uname -r
4.17.2-1.el7.elrepo.x86_64
[root@ss ~]# lsmod |grep bbr
[root@ss ~]# modprobe tcp_bbr
[root@ss ~]# echo "tcp_bbr" >> /etc/modules-load.d/modules.conf
[root@ss ~]# echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
[root@ss ~]# echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
[root@ss ~]# sysctl -p
net.ipv6.conf.all.accept_ra = 2
net.ipv6.conf.eth0.accept_ra = 2
sysctl: setting key "net.ipv4.icmp_echo_ignore_all": Invalid argument
net.ipv4.icmp_echo_ignore_all = 0net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control = bbr
[root@ss ~]# lsmod |grep bbr
tcp_bbr 20480 1
觀察BBR是否開啟成功,執行以下代碼:
[root@ss ~]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic bbr
[root@ss ~]# sysctl net.ipv4.tcp_congestion_control
net.ipv4.tcp_congestion_control = bbr
如果結果都有bbr, 則證明你的內核已開啟bbr
看到有 tcp_bbr 模塊即說明bbr已啟動
CentOS 7 自己手動開啟 BBR 加速教程