知乎专栏 |
内存与交换分区分配相关
https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Performance_Tuning_Guide/s-memory-captun.html
vm.overcommit_memory = 1
https://github.com/google/bbr
2017 年之后已经集成近 linux 内核
查看当前算法
neo@netkiller ~ % sudo sysctl -a | egrep "net.ipv4.tcp_congestion_control|net.core.default_qdisc" net.core.default_qdisc = fq_codel net.ipv4.tcp_congestion_control = cubic neo@netkiller ~ % cat /proc/sys/net/ipv4/tcp_congestion_control cubic
确认内核已经含有 tcp_bbr 模块
root@netkiller ~ % lsmod | grep tcp_bbr tcp_bbr 20480 1
切换到bbr算法
: sudo -s sysctl -w "net.core.default_qdisc=fq" sysctl -w "net.ipv4.tcp_congestion_control=bbr"
切回cubic
sysctl -w "net.core.default_qdisc=fq_codel" sysctl -w "net.ipv4.tcp_congestion_control=cubic"
写入 /etc/sysctl.conf 文件
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
修改系统变量
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
保存生效
sysctl -p
查看内核是否已开启BBR
[root@localhost ~]# sysctl net.ipv4.tcp_available_congestion_control net.ipv4.tcp_available_congestion_control = bbr cubic reno
查看BBR模块是否加载成功
[root@localhost ~]# lsmod | grep bbr tcp_bbr 20480 14