不要在生产环境使用一键脚本,建议手动安装,进不了系统用vnc切内核
一键脚本(全系统):
Linux-NetSpeed

wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh"
chmod +x tcp.sh
./tcp.sh

全功能版:

wget https://www.ijguo.cn/usr/uploads/2022/05/tcpx.sh
chmod 755 tcpx.sh
./tcpx.sh

一键脚本(仅CentOS):

wget "https://github.com/cx9208/bbrplus/raw/master/ok_bbrplus_centos.sh" && chmod +x ok_bbrplus_centos.sh && ./ok_bbrplus_centos.sh

安装后,执行

uname -r

显示4.14.129-bbrplus则切换内核成功
执行

lsmod | grep bbr

显示有bbrplus则开启成功。

手动安装方法:
卸载本机的锐速(如果有)
下载内核

wget https://github.com/cx9208/bbrplus/raw/master/centos7/x86_64/kernel-4.14.129-bbrplus.rpm

安装内核

yum install -y kernel-4.14.129-bbrplus.rpm

切换启动内核

grub2-set-default 'CentOS Linux (4.14.129-bbrplus) 7 (Core)'

设置FQ

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf

设置BBRplus

echo "net.ipv4.tcp_congestion_control=bbrplus" >> /etc/sysctl.conf

重启

reboot

检查内核版本

uname -r

显示4.14.129-bbrplus则成功
检查bbrplus是否已经启动

lsmod | grep bbrplus

显示有tcp_bbrplus则成功

卸载方法:
安装别的内核bbrplus自动失效,卸载内核自行谷歌即可
内核编译:
只能用于4.14.x内核,更高版本的tcp部分源码有改动,要移植到高版本内核得自己研究
下载4.14内核源码

wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.14.91.tar.xz

解压

tar -Jxvf linux-4.14.91.tar.xz -C /root/

修改linux-4.14.91/include/net/inet_connection_sock.h,139行

u64 icsk_ca_priv[112 / sizeof(u64)];
define ICSK_CA_PRIV_SIZE (14 * sizeof(u64))

这两段数值改为112和14,如上
修改/net/ipv4/tcp_output.c#L,1823行

tcp_snd_wnd_test函数大括号后}

换行添加

EXPORT_SYMBOL(tcp_snd_wnd_test);

添加

tcp_bbrplus.c,

删除

/net/ipv4/tcp_bbr.c

修改

linux-4.14.91/net/ipv4/Makefile,
obj-$(CONFIG_TCP_CONG_BBR) += tcp_bbrplus.o,bbr改为bbrplus

安装依赖
centos

yum -y groupinstall Development tools
yum -y install ncurses-devel bc gcc gcc-c++ ncurses ncurses-devel cmake elfutils-libelf-devel openssl-devel rpm-build redhat-rpm-config asciidoc hmaccalc perl-ExtUtils-Embed xmlto audit-libs-devel binutils-devel elfutils-devel elfutils-libelf-devel newt-devel python-devel zlib-devel

debian

wget -qO- git.io/superupdate.sh | bash
apt-get install build-essential libncurses5-dev
apt-get build-dep linux

切换到目录

cd /root/linux-4.14.91

配置

make oldconfig

或者

make menuconfig

确保

CONFIG_TCP_CONG_BBR=m

禁用签名调试

scripts/config --disable MODULE_SIG
scripts/config --disable DEBUG_INFO

开始编译

centos:make rpm-pkg
debian:make deb-pkg
BBRPlus
最后编辑:2025年03月10日 ©著作权归作者所有

发表评论