google開源的網絡優化算法,替換銳速

Google GRUB Wget Linux 北嗅 2017-04-04

這是 google 2016 年 9 月份才開源的一個優化網絡擁堵的算法。 google 出品,值得信賴

  • 目前最新版本的 Linux 內核(4.9-rc8)中已經集成了該算法。

google開源的網絡優化算法,替換銳速

開源地址

  • https://github.com/google/bbr

    注意這不是 Google 官方的產品。

安裝方式

Debian8/Ubuntu14

  • 下載最新內核, 最新內核查看這裡

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9-rc8/linux-image-4.9.0-040900rc8-generic_4.9.0-040900rc8.201612051443_amd64.deb
  • 安裝內核

dpkg -i linux-image-4.9.0*.deb
  • 刪除其餘內核

dpkg -l|grep linux-image
  • 更新 grub 系統引導文件並重啟

update-grub
  • 開啟 bbr

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
  • 保存生效 sysctl -p

  • 執行 sysctl net.ipv4.tcp_available_congestion_control

    如果結果中有 bbr, 則證明你的內核已開啟 bbr

    執行lsmod | grep bbr, 看到有 tcp_bbr 模塊即說明 bbr 已啟動。

CentOS 7

  • 評論有人已經成功。

wget http://mirrors.kernel.org/debian/pool/main/l/linux/linux-image-4.9.0-rc8-amd64-unsigned_4.9~rc8-1~exp1_amd64.deb
  • 然後修改系統啟動引導文件:

vi /etc/grub.conf
  • 需要修改 Grub 引導順序,讓新安裝的內核作為默認內核。

或者執行:

grub2-set-default "CentOS Linux (4.9.0-rc8-amd64) 7 (Core)"
  • 然後重啟 reboot

  • 重啟後,查看內核是否安裝成功。uname -r

  • 開啟 bbr, 據人反饋:先把/etc/sysctl.conf 文件中 關於 net.ipv4.tcp_congestion_control的配置註釋掉。

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
  • 保存生效 sysctl -p

  • 執行 sysctl net.ipv4.tcp_available_congestion_control

    如果結果中有 bbr, 則證明你的內核已開啟 bbr

  • 執行lsmod | grep bbr, 看到有 tcp_bbr 模塊即說明 bbr 已啟動。

CentOS6

RMP 安裝 (推薦)

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
  • CAC CentOS6 系統可直接執行以下代碼

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
  • 安裝完成,修改啟動引導。(自己百度 vi 命令用法)

vi /etc/grub.conf

修改成 default=0

google開源的網絡優化算法,替換銳速

  • 保存然後重啟 reboot

  • 重啟後,查看內核是否安裝成功。uname -r

  • 開啟 bbr, 據人反饋:先把/etc/sysctl.conf 文件中 關於 net.ipv4.tcp_congestion_control的配置註釋掉。

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
  • 保存生效 sysctl -p

  • 執行 sysctl net.ipv4.tcp_available_congestion_control

    如果結果中有 bbr, 則證明你的內核已開啟 bbr

  • 執行lsmod | grep bbr, 看到有 tcp_bbr 模塊即說明 bbr 已啟動。

google開源的網絡優化算法,替換銳速

編譯安裝(不推薦)

速度較慢。

yum install vim wget gcc gcc-c++ xz bc ncurses-devel hmaccalc zlib-devel binutils-devel elfutils-libelf-devel openssl-devel -ycd /usr/local/src/
  • 修改 Grub 引導順序,讓新安裝的內核作為默認內核。default = 0

vi /boot/grub/menu.lst #修改啟動項
  • 保存然後重啟 reboot

  • 重啟後,查看內核是否安裝成功。uname -r

  • 開啟 bbr, 據人反饋:先把/etc/sysctl.conf 文件中 關於 net.ipv4.tcp_congestion_control的配置註釋掉。

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
  • 保存生效 sysctl -p

  • 執行 sysctl net.ipv4.tcp_available_congestion_control

    如果結果中有 bbr, 則證明你的內核已開啟 bbr

  • 執行lsmod | grep bbr, 看到有 tcp_bbr 模塊即說明 bbr 已啟動。

測試效果

  • 參見各大論壇討論,基本看下來與銳速差別不大

  • 對建站而言,則影響很大,比如 ovh 大幅度改善。

相關推薦

推薦中...