建站资源分享
网络热门资源分享

在Debian系统启用Google TCP BBR v3进行网络优化详细教程

Google TCP BBR对于经常使用国外云服务器的用户来说并不陌生,如果是玩国外服务器或者建站有先年头的老站长,基本在购买了国外云服务器后第一步就是为自己的Linux云服务器启用BBR进行网络优化!目前在Linux系统当中启用Google TCP BBR提高云服务器的网络利用率并不是什么难事情,因为有一键更换内核启用BBR脚本可以使用,目前建站经验分享常用的一键更换内核启用BBR脚本是:Linux系统服务器如何进行网络优化?试试这个目前最好用的Linux一键启用BBR、BBR2、BBR Plus网络优化脚本,此脚本支持在常用的CentOS 7+、Debian 10+、Ubuntu 16.04+系统当中使用,并且可以为系统一键更换支持BBR、BBR2BBR Plus的内核和一键启用BBR、BBR2、BBR Plus进行网络优化!如果还不会启用Google TCP BBR的可以查看上面提到的文章。

前段时间Google发布了BBR v3版本,如果想尝鲜体验Google TCP BBR v3,想体验Google TCP BBR v3网络优化效果怎么样?Linux系统当中如何安装启用Google TCP BBR v3进行网络优化?建站经验分享在此文章当中记录了自己在Debian 12系统启用Google TCP BBR v3进行网络优化的详细过程,如果想使用最新版本的Google TCP BBR v3来优化Linux云服务器或者独立服务器的网络,可以按下面步骤来安装启用Google TCP BBR v3试试!

如想在Debian 12系统中启用Google TCP BBR v3可以参考下面步骤进行。理论上Debian和Ubuntu系统都可以使用下面方法来启用最新版本的Google TCP BBR v3!但是还是建议使用Debian 12系统!关于云服务器商家没有提供Debian 12镜像可以选择怎么办?建站经验分享介绍了几篇在线升级为Debian 12系统的文章,详情可以参考:

 

1、使用下面命令更新软件包管理器的数据库。在Debian和Ubuntu系统当中都可以使用下面命令更新。

apt -y update

关于“apt -y update”命令是什么意思?apt -y update命令在Debian和Ubuntu系统当中是做什么用的。apt -y update 是一个在 Linux 系统中使用的命令,用于更新软件包管理器的数据库。下面是对于该命令的详细解释。

  • apt(Advanced Package Tool)是 Debian 和 Ubuntu 等基于 Debian 的 Linux 发行版中使用的软件包管理器。它提供了一种方便的方式来安装、删除和管理软件包。
  • -y 是一个选项,表示在执行命令时自动回答 “yes”,即在更新过程中不需要确认操作。
  • update 是 apt 的一个子命令,用于从软件源获取最新的软件包列表并更新本地数据库。它会从软件源下载新的软件包列表,并将其与本地已缓存的软件包列表进行比较,然后更新过时的软件包。

因此,apt -y update 的意思是使用 apt 工具自动更新软件包管理器的数据库,无需手动确认更新操作。

命令使用效果如下:

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图

2、使用下面命令在系统当中安装启用Google TCP BBR v3需要的依赖程序。

apt -y install build-essential libncurses-dev libssl-dev libelf-dev bison bc flex rsync debhelper dwarves git

关于“apt -y install build-essential libncurses-dev libssl-dev libelf-dev bison bc flex rsync debhelper dwarves git”命令的解释:

使用上面命令是为了在Linux系统当中安装一系列开发工具和软件包。具体如下:

  • apt -y install build-essential: 这条命令使用 apt 工具自动安装 “build-essential” 软件包。这个软件包包含了构建大多数软件所需的工具和库。
  • libncurses-dev: 这个软件包提供了开发 ncurses 应用程序所需的库和头文件。
  • libssl-dev: 这个软件包提供了开发 SSL 应用程序所需的库和头文件。
  • libelf-dev: 这个软件包提供了开发 ELF 文件格式处理程序所需的库和头文件。
  • bison: 这个软件包提供了 GNU Bison 工具,用于将语法文件编译为词法分析器。
  • bc: 这个软件包提供了 Basic Calculator(基本计算器)工具,可以进行高精度计算。
  • flex: 这个软件包提供了 Flex 工具,用于将词法分析器编译为 C 代码。
  • rsync: 这个软件包提供了 rsync 工具,用于在不同文件系统之间同步和复制文件和目录。
  • debhelper: 这个软件包提供了一组工具,用于帮助构建 Debian 格式的软件包。
  • dwarves: 这个软件包提供了用于处理苹果 Mac OS X dwarves 文件的工具。
  • git: 这个软件包提供了 Git 版本控制系统,可以用于管理和跟踪代码版本。

命令使用效果如下:

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图1

3、依次使用下面从github上克隆Google BBR v3源码,并进入到克隆好的BBR v3源码目录。

git clone -b v3 https://github.com/google/bbr.git

关于“git clone -b v3 https://github.com/google/bbr.git”命令的解释:

  • git clone 来从一个 Git 仓库复制一个本地版本库。
  • -b v3 选项指定要克隆的分支为 “v3″。
  • https://github.com/google/bbr.git 是要克隆的 Git 仓库的 URL

所以,这个命令的含义是从 https://github.com/google/bbr.git 这个 Git 仓库克隆分支 “v3” 到本地,创建一个新的本地版本库。

命令使用效果如下图:

文件有点大,如果硬盘太小还不够用。云服务器带宽过小也不太友好。一共有2G多的内容需要拉取下载。耐心等待吧。

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图2

cd bbr/

关于“cd bbr/”命令的解释:这个命令使用cd命令进入上一步克隆的bbr目录。所以,这个命令的含义是改变当前工作目录到bbr目录。

命令使用效果如下图:

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图3

4、将 /boot目录下系统默认的内核配置文件复制到当前目录。

cp /boot/config-$(uname -r) .config

这条命令是在 Linux 系统中使用的,用于复制文件并重命名。下面是该命令的解释:

  • cp 是复制命令,用于将一个文件或目录复制到另一个位置。
  • /boot/config-$(uname -r) 是要复制的文件路径。$(uname -r) 是一个命令替换,它执行 uname -r 命令来获取当前正在运行的 Linux 内核的版本号,并将该版本号插入到文件路径中。
  • . 是当前目录的代称,表示目标复制位置为当前目录。
  • config-$(uname -r) 是复制后的文件名,它包含了当前正在运行的内核版本号。

因此,该命令的含义是将 /boot 目录下名为 config- 后面跟着当前正在运行的内核版本号的文件复制到当前目录,并将复制后的文件命名为 config-$(uname -r)

5、执行如下命令保留旧.config文件中的所有选项,并将新选项设置为推荐(即默认)值:

make olddefconfig

make olddefconfig 是一个在 Linux 系统中用于编译和配置软件的命令。它的含义是根据一个旧的默认配置文件来配置软件。

具体来说,make olddefconfig 会尝试使用一个名为 olddefconfig 的默认配置文件来配置软件。这个文件通常包含了在某个较旧的版本或默认设置下的软件配置信息。使用这个文件作为配置的基础,可以使得软件在重新编译时保持与旧版本相似的默认设置。

通过执行 make olddefconfig 命令,软件将根据 olddefconfig 文件中的配置选项进行编译和设置,从而使得软件在运行时具有与旧版本相似的行为和功能。

6、使用下面命令打开配置菜单。

make menuconfig

进入搭配菜单后,在如下图依次进入“Networking support->Networking options->TCP: advanced congestion control”,然后把BBR TCP选项设置为编译成模块!

如下图按小键盘的上下光标键可以选择选项,选好后按回车进入。

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图4

如上图依次从Networking support进入到Networking options,在找到TCP: advanced congestion control进入,然后选择把BBR TCP选项设置为编译成模块!然后选择Save保存并推出。

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图5

7、另外可通过下面设置来缩短编译时间和减少磁盘占用,再次使用“make menuconfig”命令进入到配置菜单!和上面步骤一样,分别进入到“Kernel hacking->Compile-time checks and compiler options->Debug information (Disable debug information)”,找到“Disable debug information”设置为如图下!设置完成后选择Save保存并推出。

 

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图6

8、编译并创建deb软件包:

make bindeb-pkg -j$(nproc)

关于“make bindebpkg j$(nproc)命令的解释:

make bindeb-pkg -j$(nproc) 是一个在 Linux 系统中用于编译和打包软件的命令,其中 make 是编译管理工具,bindeb-pkg 是编译目标,-j$(nproc) 是使用并行编译的选项。

具体来说,make bindeb-pkg 命令告诉 make 要编译的目标是 bindeb-pkgbindeb-pkg 是一个特定的编译目标,用于将软件打包成 .deb 格式的 Debian 软件包。

-j$(nproc) 是传递给 make 的选项,用于指定并行编译的线程数。$(nproc) 是一个命令替换,它获取系统的 CPU 核心数作为并行编译的线程数。通过指定 -j$(nproc)make 将使用与系统 CPU 核心数相等的并行编译线程数来加速编译过程。

因此,该命令的含义是使用 make 工具编译并打包软件,使用与系统 CPU 核心数相等的并行编译线程数来加速编译过程,最终生成 .deb 格式的 Debian 软件包。

执行后效果如下图,编译过程有点长,需要耐心等待!

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图7

9、编译完成后分别执行下面命令返回上级目录去安装新的内核并重启系统。

cd ..
apt install ./linux-image-6.4.0+_6.4.0-g6e321d1c986a-1_amd64.deb
apt install ./linux-headers-6.4.0+_6.4.0-g6e321d1c986a-1_amd64.deb
systemctl reboot

10、重启后使用下面命令查看tcp_bbr模块信息是否是v3版本。

modinfo tcp_bbr

如果范围信息如下图,表示tcp_bbr模块信息是v3版本。

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图8

11、如果前面的所有步骤都正确,最后使用下面命令启用Google TCP BBR v3

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

12、执行下面命令查看是否启用Google TCP BBR v3

lsmod

返回如下图信息表示Google TCP BBR v3安装启用成功。

在Debian系统启用Google TCP BBR v3进行网络优化详细教程插图9

赞(1)
未经允许不得转载:建站经验分享 » 在Debian系统启用Google TCP BBR v3进行网络优化详细教程