BBR ( 瓶颈带宽和RTT )是Google软件工程师编写的一种相对较新的拥塞控制算法。 这是Google持续尝试通过TCP协议(互联网的主力)更快地实现互联网的最新解决方案。
BBR的主要目的是引导网络利用率并减少队列(导致网络活动缓慢):它应该部署在服务器上,而不是部署在网络或客户端。 在Linux中,BBR在内核版本4.9或更高版本中实现。
在本文中,我们将简要介绍一下TCP BBR ,然后介绍如何在Linux中使用TCP BBR拥塞控制来提升Linux服务器的Internet速度。
要求
您应该安装Linux内核版本4.9或以上,使用这些选项(作为模块或内置)编译:
- CONFIG_TCP_CONG_BBR
- CONFIG_NET_SCH_FQ
如何检查Linux中的内核模块
要检查上述选项是否在内核中编译,请运行以下命令:
# grep 'CONFIG_TCP_CONG_BBR' /boot/config-$(uname -r) # grep 'CONFIG_NET_SCH_FQ' /boot/config-$(uname -r)
检查内核模块
要更新内核,请查看以下指南:
在Linux中启用TCP BBR拥塞控制
BBR有效地起搏,所以它必须与fq qdisc无类数据包调度程序一起用于流量起搏。 要查找有关fq qdisc的更多信息,请键入:
# man tc-fq
通过对BBR的了解,您现在可以在服务器上进行配置。 使用您喜欢的编辑器打开/etc/sysctl.conf文件。
# vi /etc/sysctl.conf
在文件末尾添加以下选项。
net.core.default_qdisc=fq net.ipv4.tcp_congestion_control=bbr
在Linux中启用TCP BBR
保存并关闭文件。 然后使用sysctl命令来影响系统中的更改。
# sysctl --system
从屏幕截图,您可以看到选项已添加适当的值。
验证内核参数
测试TCP BBR拥塞控制配置
执行必要的配置后,可以测试是否实际工作。 有几种测量带宽速度的工具,如Speedtest-CLI :
其他工具包括bmon(bandwith监视器) , nload , 基于Wget命令的文件下载器和cURL ,它们都显示网络带宽; 您可以使用它们进行测试。
BBR Github资源库: https : //github.com/google/bbr
您也可以阅读以下相关文章。
在本文中,我们展示了如何在Linux中使用TCP BBR拥塞控制来提升Linux服务器的Internet速度。 在不同的情况下全面测试,并通过下面的评论表格给我们任何重要的反馈。