為VPS開啟BBR擁塞控制演算法

BBR是來自於Google的黑科技,目的是要盡量跑滿帶寬, 並且盡量不要有排隊的情況, 充分利用帶寬並降低延遲,起到神奇般的加速效果。 在BBR之前,比較有名的就是國產的銳速了,不過,由於銳速是個國產的閉源軟體,所以一直糾結不想裝在VPS上。正好,BBR的出現,又成為一個可供折騰的對象。

BBR 這個特性其實是在 Linux 內核 4.9 才計劃加入的。所以,要開啟BBR,需要內核版本在Linux kernel 4.9以上。下面紀錄一下如何升級Linux內核,並且開啟BBR:

Debian 8 / Ubuntu 14 / Ubuntu 16

友情提示:如果安裝最新的Ubuntu 17版本,有可能內核已經為4.10了,可以不用再升級內核了

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

wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.11.4/linux-image-4.11.4-041104-generic_4.11.4-041104.201706071003_amd64.debn

  • 安裝內核

dpkg -i linux-image-4.*.debn

  • 清理不用的舊內核(可選)

apt-get autoremoven

  • 更新 grub 系統引導文件並重啟

update-grubnrebootn

CentOS 7

  • 下載更換內核

    最新內核查看這裡

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.orgnrpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpmnyum --enablerepo=elrepo-kernel install kernel-ml -yn

  • 查看內核是否安裝成功

rpm -qa | grep kerneln

  • 刪除舊內核(可選)

rpm -ev 舊內核n

  • 更新 grub 系統引導文件並重啟

egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d ngrub2-set-default 0 #default 0表示第一個內核設置為默認運行, 選擇最新內核就對了nrebootn

注意,某些服務商(如Digital Ocean)可能需要首先將VPS配置為可自定義內核,然後grub2的配置才會生效。

開啟BBR

開機後 uname -r 看看是不是內核4.9、4.10或4.11

執行 lsmod | grep bbr,如果結果中沒有 tcp_bbr 的話就先執行

modprobe tcp_bbrnecho "tcp_bbr" >> /etc/modules-load.d/modules.confn

再執行

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

保存生效

sysctl -pn

最後執行

sysctl net.ipv4.tcp_available_congestion_controlnsysctl net.ipv4.tcp_congestion_controln

如果結果都有bbr, 則證明你的內核已開啟bbr。看到有 tcp_bbr 模塊即說明bbr已啟動,這樣,就可以開始體驗Google的黑科技加速了……

搬瓦工VPS開啟BBR的新姿勢

搬瓦工的VPS預裝系統裡面,有的模板已經自帶了BBR了,也就是說,你也不需要額外的配置了,選擇這種帶BBR的預裝系統,就能直接啟用BBR加速了:

最後,用Google Cloud台灣和搬瓦工CN2的主機試了一下,上油管,1080P不卡,1440P也不卡,速度快到飛起!很棒!

推薦閱讀:

有哪些好用的美國 VPS 或者獨立主機?
有哪些價格不貴網速又快的vps?
推薦一個搭建vps玩亞服絕地求生?

TAG:谷歌Google | VPS | 搬瓦工 |