• Ubuntu 17.04 开启 TCP BBR 拥塞控制算法


     

    概述

    TCP BBR 由谷歌开发,即 TCP 拥塞控制算法,其目的在于最大化利用网络链路。知乎上的解释非常贴切,一条网络链路就像一根水管,最大化利用这根水管的办法则是用水将其充满。TCP BBR 要解决的问题:

    1. 充分利用存在一定丢包率的网络链路;
    2. 降低网络延迟;

    Linux kernel 4.9+ 已经集成 TCP BBR 算法,本文将介绍如何在 Ubuntu Server 17.04 x86_64 上开启 TCP BBR 算法。

    准备工作

    本文是针对海外云服务器的技术指南,如果你还没有云服务器,请创建

    检查系统内核

    截止本文发布,Ubuntu 17.04 x86_64 发行版内核版本为 GNU/Linux 4.10.0-24-generic x86_64,只需确保内核版本大于等于 Linux 4.9 即可,使用以下命令。

    # uname -r
    4.10.0-24-generic
    

    开启 BBR

    执行命令

    echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
    echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
    

    执行命令,使设置生效执行

    # sysctl -p
    net.core.default_qdisc = fq
    net.ipv4.tcp_congestion_control = bbr

    检查 BBR 是否开启成功

    执行命令,结果中有 bbr 即表示内核已开启 BBR 算法。

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

    执行命令,结果有 tcp_bbr 一行表示 BBR 已成功启动。

    # lsmod | grep bbr
    tcp_bbr                20480  0
    

    禁用 BBR

    依次执行命令

    # sed -i '/net.core.default_qdisc=fq/d' /etc/sysctl.conf
    # sed -i '/net.ipv4.tcp_congestion_control=bbr/d' /etc/sysctl.conf
    # sysctl -p

    重启系统

    # reboot

    总结

    由于 Ubuntu 17.04 采用了最新的 Linux 内核,因此开启 TCP BBR 非常简单,开启后带宽提升会相当明显。版本较低的操作系统要先升级内核到 Linux 4.9 及以上才能开启 BBR 算法。

  • 相关阅读:
    洛谷 1498 南蛮图腾——模拟
    bzoj 4198 [Noi2015]荷马史诗——哈夫曼树
    bzoj 1026 [SCOI2009]windy数——数位dp水题
    bzoj 1045 [HAOI2008] 糖果传递——设变量推式子
    bzoj 4521 [Cqoi2016]手机号码——数位dp
    bzoj1044 [HAOI2008]木棍分割——前缀和优化DP
    bzoj1090 [SCOI2003]字符串折叠——区间DP
    bzoj1911 [Apio2010]特别行动队——斜率优化DP
    bzoj1025 [SCOI2009]游戏——因数DP
    bzoj1207 [HNOI2004]打鼹鼠——LIS
  • 原文地址:https://www.cnblogs.com/73tong/p/8371356.html
Copyright © 2020-2023  润新知