通過啟用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使用 Reno
和 CUBIC
擁塞控制算法。 要檢查可用的擁塞控制算法,請運行以下命令。
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。
保存您的更改。 然後重新啟動以使用新的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)左右。
這是在我的代理服務器上啟用TCP BBR後的YouTube連接速度。 9878 Kb / s約為1234 KB / s。 我的代理服務器快了24倍!
在第二個Shadowsocks代理服務器上,啟用TCP BBR後,速度從大約10Mbit / s增至大約62Mbit / s(64172Kbit / s)。
而已! 我希望本教程可以幫助您在Ubuntu上啟用TCP BBR。 與往常一樣,如果您發現這篇文章很有用,請訂閱我們的免費新聞通訊以獲取更多有用的提示和技巧。