通過啟用TCP BBR輕鬆提升Ubuntu網絡性能

本教程向您展示如何在Ubuntu上啟用TCP BBR。 TCP BBR是Google開發的TCP擁塞控制算法。 它解決了傳統TCP擁塞控制算法(Reno或CUBIC)的缺點。 據谷歌稱,它可以實現更高數量級的帶寬和更低的延遲。 自2017年7月以來,TCP BBR已在Google.com,YouTube和Google Cloud Platform上使用,互聯網工程任務組(IETF)已對該算法進行了標準化。BBR代表瓶頸帶寬和RTT。

BBR僅需要在發送方進行更改。 您可以在Linux桌面上啟用TCP BBR,以改善整體Web衝浪體驗。 如果您有Linux Web服務器,TCP BBR可以為您的網站訪問者實現更快的網頁下載。

如何在Linux上檢查TCP擁塞控制算法

默認情況下,Linux使用 RenoCUBIC 擁塞控制算法。 要檢查可用的擁塞控制算法,請運行以下命令。

sysctl net.ipv4.tcp_available_congestion_control

輸出:

net.ipv4.tcp_available_congestion_control = cubic reno

要檢查當前使用的擁塞控制算法,請運行

sysctl net.ipv4.tcp_congestion_control

輸出:

net.ipv4.tcp_congestion_control = cubic

安裝Linux內核4.9或更高版本

從內核版本4.9開始,Linux支持TCP BBR。 使用以下命令檢查您的Linux內核版本。

uname -r

Ubuntu 18.04的內核為4.13。

4.13.0-16-generic

在Ubuntu 16.04桌面上,內核版本為4.10。

4.10.0-40-generic

在Ubuntu 16.04服務器上,情況有所不同,具體取決於您的VPS提供商。 例如,Linode VPS提供了內核4.9。

4.9.50-x86_64-linode86

DigitalOcean提供了內核4.4。

4.4.0-81-generic

非常容易安裝 Linux內核4.10 在Ubuntu 16.04上。 您無需從Ubuntu網站手動下載內核。 只需安裝 硬件啟用堆棧 (HWE),它為Ubuntu LTS版本提供了更新的內核。

sudo apt update

sudo apt install --install-recommends linux-generic-hwe-16.04

您的VPS提供商可能使用自定義Linux內核,而不是Ubuntu提供的內核。 如果您使用Linode VPS,則需要轉到Linode VPS控制面板,編輯您的配置文件。

在啟動設置中,將內核設置為 GRUB2

啟用bbr ubuntu

保存您的更改。 然後重新啟動以使用新的4.10內核。

sudo shutdown -r now

在Ubuntu中啟用TCP BBR

擁有4.9或更高版本的內核後,請編輯sysctl.conf文件。

sudo nano /etc/sysctl.conf

在文件末尾添加以下兩行。

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

保存並關閉文件。 然後重新加載sysctl配置。

sudo sysctl -p

現在檢查使用中的擁塞控制算法。

sysctl net.ipv4.tcp_congestion_control

輸出:

net.ipv4.tcp_congestion_control = bbr

恭喜! 您已在Ubuntu上成功啟用TCP BBR。

速度改進

我在低端VPS上使用了Shadowsocks代理來測試TCP BBR。 速度提升巨大。 以下屏幕快照顯示了在我的代理服務器上啟用TCP BBR之前的YouTube連接速度。 如您所見,速度僅為400Kb / s(50KB / s)左右。

在Ubuntu 16.04上啟用TCP BBR

這是在我的代理服務器上啟用TCP BBR後的YouTube連接速度。 9878 Kb / s約為1234 KB / s。 我的代理服務器快了24倍!

啟用google tcp bbr ubuntu

在第二個Shadowsocks代理服務器上,啟用TCP BBR後,速度從大約10Mbit / s增至大約62Mbit / s(64172Kbit / s)。

TCP BBR性能提升

而已! 我希望本教程可以幫助您在Ubuntu上啟用TCP BBR。 與往常一樣,如果您發現這篇文章很有用,請訂閱我們的免費新聞通訊以獲取更多有用的提示和技巧。

Sidebar