開啟 TCP BBR 擁塞控制算法

BBR目的是要盡量跑滿帶寬,並且盡量不要有排隊的情況,效果並不比速銳差

Linux kernel 4.9已支持tcp_bbr下面簡單講述基於KVM架構VPS如何開啟

更新:
OpenVZ架構VPS開啟BBR

Debian 8 / Ubuntu 14

下載最新內核,最新內核查看這裡

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10/linux-image-4.10.0-041000-generic_4.10.0-041000.201702191831_amd64.deb

安裝內核
dpkg -i linux-image-4.10.0*.deb

刪除舊內核(可選)
dpkg -l|grep linux-image

apt-get purge 旧内核

更新grub系統引導文件並重啟

update-grub
reboot

CentOS 6

更換下載內核
最新內核查看這裡
rpm –import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm
yum –enablerepo=elrepo-kernel install kernel-ml -y
查看內核是否安裝成功
rpm -qa | grep kernel
刪除舊內核(可選)
rpm -ev 旧内核
更新grub系統引導文件並重啟
sed -i ‘s:default=.*:default=0:g’ /etc/grub.conf
reboot
開不了機的打開vps後台控制面板的vnc,開機卡在grub引導,只需要手動選擇內核就可以了

CentOS 7

更換下載內核
最新內核查看這裡
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
刪除舊內核(可選)
rpm -ev 旧内核
更新grub系統引導文件並重啟
egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \’
grub2-set-default 0 #default 0表示第一个内核设置为默认运行, 选择最新内核就对了
reboot
注意,某些服務商(如Digital Ocean)可能需要首先將VPS配置為可自定義內核,然後grub2的配置才會生效。
開啟bbr

開機後uname -r 看看是不是內核4.9

執行

echo “net.core.default_qdisc=fq” >> /etc/sysctl.conf
echo “net.ipv4.tcp_congestion_control=bbr” >> /etc/sysctl.conf
保存生效
sysctl -p

執行

sysctl net.ipv4.tcp_available_congestion_control
sysctl net.ipv4.tcp_congestion_control
如果結果都有bbr,則證明你的內核已開啟bbr

執行
lsmod | grep bbr
看到有tcp_bbr模塊即說明bbr已啟動
聯繫GitHub API 訓練 店 博客 關於

https://github.com/iMeiji/shadowsocks_install/wiki/%E5%BC%80%E5%90%AFTCP-BBR%E6%8B%A5%E5%A1%9E%E6%8E%A7%E5%88%B6%E7%AE%97%E6%B3%95