linux从4.9的内核开始引入,让TCP尽可能充分利用网络带宽,同时减少不必要的排队延迟

查看可用算法是否有bbr

1
2
sysctl net.ipv4.tcp_available_congestion_control # 查看可用算法
sysctl net.ipv4.tcp_congestion_control # 查看当前算法

如果没有bbr可以尝试加载

1
sudo modprobe tcp_bbr

开启bbr(结合fair queue,一种网络队列调度算法)

1
2
3
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
1
2
3
sysctl net.core.default_qdisc # 默认队列算法
tc qdisc show # 当前网卡使用的算法
tc qdisc replace dev eth0 root fq # 修改当前网卡eth0算法,重启后失效

默认的应该是bbrv1,其他的魔改版本或者bbrv2/bbrv3有待探究