前言

听说这很快就完事了

linux

linux中新的内核已经自带bbr,只需要启动即可,老旧内核需要先升级到4.9或者更高版本就可以开启,先检查内核版本:

uname -r

若内核版本大于4.9:

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

应用更改:

sudo sysctl -p

检查BBR是否启用:

sysctl net.ipv4.tcp_available_congestion_control

返回值一般为:

net.ipv4.tcp_available_congestion_control = reno cubic bbr
sysctl net.ipv4.tcp_congestion_control

返回值一般为:

net.ipv4.tcp_congestion_control = bbr
sysctl net.core.default_qdisc

返回值一般为:net.core.default_qdisc = fq

lsmod | grep bbr

返回值有类似:tcp_bbr 20480 10则BBR模块已启动

如果需要关闭bbr则在/etc/sysctl.conf注释掉刚刚添加的两行并应用更改即可。

内核版本小于4.9:

这里用一键脚本安装bbr:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
lsmod | grep bbr

windows

管理员运行cmd,输入以下命令:

netsh int tcp set supplemental Template=Internet CongestionProvider=bbr2
netsh int tcp set supplemental Template=Datacenter CongestionProvider=bbr2
netsh int tcp set supplemental Template=Compat CongestionProvider=bbr2
netsh int tcp set supplemental Template=DatacenterCustom CongestionProvider=bbr2
netsh int tcp set supplemental Template=InternetCustom CongestionProvider=bbr2

输入以下命令检测是否生效:

Get-NetTCPSetting | Select SettingName, CongestionProvider

提别提醒:windows下开启bbr可能会导致部分游戏出现网络延迟忽高忽低的情况,也可能会导致虚拟机网络异常,如果开启之后导致的出现网络异常请用下面的命令恢复。

windows恢复命令:

netsh int tcp set supplemental template=internet congestionprovider=CUBIC
netsh int tcp set supplemental template=internetcustom congestionprovider=CUBIC
netsh int tcp set supplemental template=Compat congestionprovider=NewReno
netsh int tcp set supplemental template=Datacenter congestionprovider=CUBIC
netsh int tcp set supplemental template=Datacentercustom congestionprovider=CUBIC 

Q.E.D.


味无味处求吾乐,材不材间过此生。