如何在 Ubuntu 22.04 上启用 BBR?

由于购买的VPS或者主机数据中心都在国外,经常会发生网络拥堵的情况,我们可以通过启用BBR来优化。 在Ubuntu系统上启用BBR可以提升网络连接速度,优化网络拥堵情况。

BBR代表瓶颈带宽,RTT是拥塞控制系统。 您可以在 Linux 桌面上启用 TCP BBR 以改善整体网上冲浪体验。 默认情况下,Linux 使用 Reno 和 CUBIC 拥塞控制算法。

BBR(Bottleneck Bandwidth and Round-trip propagation time)是由Google设计,于2016年发布的拥塞算法。该算法使用网络最近出站数据分组当时的最大带宽和往返时间来创建网络的显式模型。数据包传输的每个累积或选择性确认用于生成记录在数据包传输过程和确认返回期间的时间内所传送数据量的采样率。该算法认为随着网络接口控制器逐渐进入千兆速度时,与缓冲膨胀相关的延迟相比丢包更应该被认为是识别拥塞的主要决定因素,所以基于延迟模型的拥塞控制算法(如BBR)会有更高的吞吐量和更低的延迟,可以用BBR来替代其他流行的拥塞算法,例如CUBIC。Google在YouTube上应用该算法,将全球平均的YouTube网络吞吐量提高了4%,在一些国家超过了14%。

运行以下命令检查可用的拥塞控制算法,

sysctl net.ipv4.tcp_available_congestion_control

输出:

sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic bbr

运行以下命令检查系统中使用的当前拥塞控制算法,

sysctl net.ipv4.tcp_congestion_control

输出:

sysctl net.ipv4.tcp_congestion_control
net.ipv4.tcp_congestion_control = bbr

在 Ubuntu 中启用 TCP BBR

打开以下配置文件/etc/sysctl.conf 启用TCP BBR。

 nano /etc/sysctl.conf

在配置文件的末尾,添加以下行。

net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr

保存文件,并使用此命令刷新您的配置,

sysctl -p

输出:

root@abc:~# sysctl -p
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

现在,验证您的系统是否启用了 BBR,

sysctl net.ipv4.tcp_congestion_control

输出:

root@abc:~# sysctl net.ipv4.tcp_congestion_control
net.ipv4.tcp_congestion_control = bbr

如果输出的结果是bbr,说明已经成功启用了BBR。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/11394

(0)
郭靖的头像郭靖
上一篇 2024年3月8日 下午3:58
下一篇 2024年3月15日 下午3:25

相关推荐

  • 云服务器上的目录定时同步到Github

    具体操作与脚本 第一 在Github上创建私有仓库这一步相信大家都知道怎么操作 第二 在服务器拉取Github仓库并把.git目录复制到需要同步的目录下假设服务器需要同步的目录为:/usr/share/nginx/html/imgs 第三 编写定时同步脚本具体脚本如下,如脚本位置: /root/script/sync_to_github.sh 第四 通过Li…

    2023年5月15日
    93400
  • CentOS 使用speedtest命令行测试网速

    安装speedtest-cli speedtest-cli是一个用Python编写的轻量级Linux命令行工具,在Python2.4至3.4版本下均可运行。它基于Speedtest.net的基础架构来测量网络的上/下行速率。安装speedtest-cli很简单——只需要下载其Python脚本文件。 使用speedtest-cli测试网速 输入这个命令后,它会…

    2022年6月28日
    91700
  • HTTPS 下使用WebSocket的一些实践

    问题描述: HTTPS 下发起WS连接,连接失败,Chrom 浏览器报错。 socket.js:19 Mixed Content: The page at ‘https://app.XXX.com’ was loaded over HTTPS, but attempted to connect to the insecure WebSocket endpoi…

    2023年1月20日
    89800
  • Windows 操作系统命令行 netsh winsock reset 的作用详解

    这个命令是一个用于 Windows 操作系统中的网络故障排除工具,它用于重置 Winsock 相关的配置,以解决与网络连接和通信相关的问题。 命令解释: 使用场景:命令netsh winsock reset在以下情况下非常有用: 命令示例:假设您的计算机无法通过浏览器访问互联网。您可以按照以下步骤使用netsh winsock reset命令来尝试解决问题:…

    2023年8月28日
    1.8K00
  • Zabbix的Mysql数据库内存占用高问题分析与处理

    问题:1、Zabbix内存使用率高;2、MariaDB没有开启独享表空间 ibdata1是InnoDB的共有表空间,默认情况下会把表空间存放在一个文件ibdata1中,会造成这个文件越来越大. 原因1:使用InnoDB共享表空间存储数据 参数innodb_file_per_table,控制innodb引擎采用共享表空间存储还是独立表空间存储。 参数innod…

    2022年12月30日
    1.1K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信