配置 BBR 拥塞控制算法,改善 Shadowsocks 性能
BBR ("Bottleneck Bandwidth and Round-trip propagation time") 是由 Google 研发的新拥塞控制算法,以改善 TCP 连接的带宽和延迟为目标,同时也在 Google 自家产品 Google 搜索,YouTube,以及 Google Cloud Platform 上使用。
要想在我们自己的服务器上配置使用 BBR 也非常简单,一分钟即能搞定。
服务器内核要求
首先,在配置 BBR 之前,我们需要确认运行 Shadowsocks 服务的 Linux 内核的版本大于等于 4.9:
uname -r
如果内核版本低于 4.9 则需要升级内核,或选择重新安装自带大于 4.9 内核的发行版,如:Ubuntu 17.04, Debian Stretch, Arch Linux, Manjaro。
要想查找所有包含大于等于 4.9 内核软件包的发行版,也可以查阅 DistroWatch.com
配置 BBR
配置 BBR 只需三行命令即可,(使用 root 运行以下命令):
echo 'net.core.default_qdisc = fq' > /etc/sysctl.d/99-bbr.conf
echo 'net.ipv4.tcp_congestion_control = bbr' >> /etc/sysctl.d/99-bbr.conf
sysctl --system
以上改动立即生效,且重启后会自动重新应用。
验证配置
配置完成后,我们可以运行以下命令来验证配置是否成功,如果控制台有相应输出,则说明配置成功。
lsmod | grep tcp_bbr
配置完成后,测试可使用 Fast.com 或其他测速工具。