注意: > > 1. 由于是使用最新版系統(tǒng)內(nèi)核,最好請勿在生產(chǎn)環(huán)境安裝,以免產(chǎn)生不可預(yù)測之后果。 > > 2. BBR 不支持虛擬方式為 OpenVZ 和 LXC 的服務(wù)器。如果你的服務(wù)器使用以下命令返回 `o" />
摘要:,是在年開發(fā)的擁塞控制算法,可以使服務(wù)器顯著地提高吞吐量和減少連接的延遲。在上應(yīng)用該算法,將全球平均的網(wǎng)絡(luò)吞吐量提高了,在一些國家超過了。返回值有模塊即說明已啟動(dòng)。比如注意并不是所有的都會(huì)有此返回值,若沒有也屬正常。
Bottleneck Bandwidth and Round-trip propagation time(BBR),是 Google 在 2016 年開發(fā)的 TCP 擁塞控制算法,可以使 Linux 服務(wù)器顯著地提高吞吐量和減少 TCP 連接的延遲。
注意:
TCP BBR(Bottleneck Bandwidth and Round-trip propagation time)是由 Google 設(shè)計(jì),于 2016 年發(fā)布的擁塞算法。以往大部分擁塞算法是基于丟包來作為降低傳輸速率的信號,而 BBR 則基于模型主動(dòng)探測。該算法使用網(wǎng)絡(luò)最近出站數(shù)據(jù)分組當(dāng)時(shí)的最大帶寬和往返時(shí)間來創(chuàng)建網(wǎng)絡(luò)的顯式模型。數(shù)據(jù)包傳輸?shù)拿總€(gè)累積或選擇性確認(rèn)用于生成記錄在數(shù)據(jù)包傳輸過程和確認(rèn)返回期間的時(shí)間內(nèi)所傳送數(shù)據(jù)量的采樣率。[39]該算法認(rèn)為隨著網(wǎng)絡(luò)接口控制器逐漸進(jìn)入千兆速度時(shí),與緩沖膨脹相關(guān)的延遲相比丟包更應(yīng)該被認(rèn)為是識別擁塞的主要決定因素,所以基于延遲模型的擁塞控制算法(如 BBR)會(huì)有更高的吞吐量和更低的延遲,可以用 BBR 來替代其他流行的擁塞算法,例如 CUBIC。Google 在 YouTube 上應(yīng)用該算法,將全球平均的 YouTube 網(wǎng)絡(luò)吞吐量提高了 4%,在一些國家超過了 14%。[40]BBR 之后移植入 Linux 內(nèi)核 4.9 版本,41并且對于 QUIC 可用。
BBR 效率很高,速度也很快,但是它與非 BBR 的流的公平性有爭議。雖然谷歌的展示顯示 BBR 與 CUBIC 共存良好,但像杰夫·休斯頓和霍克、布利斯和齊特巴特等研究者發(fā)現(xiàn)它對其他流不公平,并且不可擴(kuò)展。[43]霍克等人還發(fā)現(xiàn),在 Linux 4.9 的 BBR 實(shí)現(xiàn)中"存在一些嚴(yán)重的固有問題,如排隊(duì)延遲增加、不公平和大量數(shù)據(jù)包丟失"。[44]
索海爾·阿巴斯洛等人(C2TCP 的作者)指出,BBR 在動(dòng)態(tài)環(huán)境中表現(xiàn)不佳,比如蜂窩網(wǎng)絡(luò)。45他們還表明 BBR 存在不公平問題。例如,當(dāng)一個(gè) CUBIC 流(在 Linux、Android 和 MacOS 中是默認(rèn)的 TCP 實(shí)現(xiàn))與網(wǎng)絡(luò)中的 BBR 流共存時(shí),BBR 流可以支配 CUBIC 流并從中獲得整個(gè)鏈路帶寬[45]。
以下一鍵腳本內(nèi)容轉(zhuǎn)載于:一鍵安裝最新內(nèi)核并開啟 BBR 腳本 | 秋水逸冰
使用 root 用戶登錄,運(yùn)行以下命令:
wget --no-check-certificate -O /opt/bbr.sh https://github.com/teddysun/across/raw/master/bbr.sh
chmod 755 /opt/bbr.sh
/opt/bbr.sh
安裝完成后,腳本會(huì)提示需要重啟 VPS,輸入 y 并回車后重啟。
重啟完成后,進(jìn)入 VPS,驗(yàn)證一下是否成功安裝最新內(nèi)核并開啟 TCP BBR,輸入以下檢查:
查看內(nèi)核版本
uname -r
查看內(nèi)核版本,顯示為新版內(nèi)核就表示 OK 了。
驗(yàn)證是否成功開啟了 BBR。
sysctl net.ipv4.tcp_available_congestion_control
# 返回值一般為:
# net.ipv4.tcp_available_congestion_control = bbr cubic reno
# 或者:
# net.ipv4.tcp_available_congestion_control = reno cubic bbr
sysctl net.ipv4.tcp_congestion_control
# 返回值一般為:
# net.ipv4.tcp_congestion_control = bbr
sysctl net.core.default_qdisc
# 返回值一般為:
# net.core.default_qdisc = fq
查看內(nèi)核模塊是否加載。
lsmod | grep bbr
返回值有 tcp_bbr 模塊即說明 bbr 已啟動(dòng)。比如:
tcp_bbr 20480 3
注意:并不是所有的 VPS 都會(huì)有此返回值,若沒有也屬正常。
如果你使用的是 Google Cloud Platform (GCP)更換內(nèi)核,有時(shí)會(huì)遇到重啟后,整個(gè)磁盤變?yōu)橹蛔x的情況。只需執(zhí)行以下命令即可恢復(fù):
mount -o remount rw /
由于開啟 BBR 需 4.10 以上版本 Linux 內(nèi)核,如果您的 Linux 服務(wù)器內(nèi)核低于 4.10(例如:騰訊云控制臺(tái)安裝的 CentOS 7 系統(tǒng)內(nèi)核是 3.10
,低于開啟 BBR 最低要求的版本 4.10
,所以我們需要手動(dòng)更換為默認(rèn)內(nèi)核后再作升級)。
手動(dòng)更換內(nèi)核的步驟可以看我之前的文章:CentOS 手動(dòng)更換內(nèi)核。
編輯 /etc/sysctl.conf
文件,添加如下內(nèi)容。
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
#bash
sudo sed -i /net.core.default_qdisc/d /etc/sysctl.conf
sudo sed -i /net.ipv4.tcp_congestion_control/d /etc/sysctl.conf
sudo echo "net.core.default_qdisc = fq" >> /etc/sysctl.conf
sudo echo "net.ipv4.tcp_congestion_control = bbr" >> /etc/sysctl.conf
從配置文件中加載內(nèi)核參數(shù)設(shè)置。
sysctl -p >/dev/null 2>&1
驗(yàn)證是否成功開啟了 BBR。
sysctl net.ipv4.tcp_available_congestion_control | grep -o net.ipv4.tcp_available_congestion_control = reno cubic bbr
sysctl net.ipv4.tcp_available_congestion_control | grep -o net.ipv4.tcp_available_congestion_control = bbr cubic reno
# 高亮顯示如下任意一條內(nèi)容即可:
# net.ipv4.tcp_available_congestion_control = reno cubic bbr
# net.ipv4.tcp_available_congestion_control = bbr cubic reno
sysctl net.ipv4.tcp_congestion_control | grep -o net.ipv4.tcp_congestion_control = bbr
# 高亮顯示如下內(nèi)容即可:
# net.ipv4.tcp_congestion_control = bbr
sysctl net.ipv4.tcp_available_congestion_control | grep -o net.ipv4.tcp_available_congestion_control = reno cubic bbr
# 高亮顯示如下內(nèi)容即可:
# net.ipv4.tcp_available_congestion_control = reno cubic bbr
查看內(nèi)核模塊是否加載。
$ lsmod | grep bbr
tcp_bbr 20480 1
更改文件權(quán)限。
sudo chmod 644 /etc/sysctl.conf
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/126000.html
摘要:如何開啟通過開啟加速可以有效提升訪問和下載速度。如何開啟步驟支持要先升級成或最新內(nèi)核才行,在終端分別輸入以下命令執(zhí)行上述命令之后,內(nèi)核就安裝好了,但默認(rèn)不是最新的,需要自己修改。阿里云產(chǎn)品新用戶每個(gè)賬戶僅限一次購買Centos7如何開啟bbr?通過開啟bbr加速可以有效提升訪問和下載速度。使用美國VPS時(shí),很多朋友可能會(huì)發(fā)現(xiàn)網(wǎng)站訪問速度慢或者下載速度慢,如果你用的是Centos7系統(tǒng)的話,不...
摘要:如果是用來做網(wǎng)站,我一般會(huì)選擇,因?yàn)橐话闱闆r下只要跑環(huán)境下的相關(guān)軟件,而且自帶內(nèi)核可以快速開啟,對網(wǎng)絡(luò)的要求不會(huì)非常高,不需要折騰各種其他東西,不會(huì)出現(xiàn)系統(tǒng)上的兼容問題。檢查進(jìn)程是否存在,存在即代表已開啟加速。如果是用來做網(wǎng)站,我一般會(huì)選擇 CentOS 8,因?yàn)橐话闱闆r下只要跑 LNMP 環(huán)境下的相關(guān)軟件,而且 CentOS 8 自帶內(nèi)核可以快速開啟 BBR,對網(wǎng)絡(luò)的要求不會(huì)非常高,不需要...
摘要:現(xiàn)在使用云服務(wù)器,為了加快訪問速度和跑滿帶寬,可通過加速魔改版銳速騰訊等擁塞算法達(dá)到加速目的。一鍵加速腳本加速是騰訊早前發(fā)布的加速策略,騰訊已刪除資源。建站講究穩(wěn)定,可以使用原版和騰訊?,F(xiàn)在使用VPS云服務(wù)器,為了加快訪問速度和跑滿帶寬,可通過bbr加速、bbr魔改版、bbrplus、銳速、騰訊tcpa等擁塞算法達(dá)到加速目的。通過一鍵腳本來安裝和啟用這些加速策略。 ? 為什么要加速?...
摘要:本文老劉博客就給大家分享一個(gè)加速腳本,可以一鍵安裝并開啟這些加速策略,這里會(huì)以一臺(tái)的華盛頓通用型云主機(jī)來演示。在租用國外VPS的時(shí)候,由于地理位置距離中國較遠(yuǎn),訪問和下載速度受限,安裝BBR加速功能就是比較好的方法之一。有人會(huì)問BBR是什么?BBR是Google提出的一種新型擁塞控制算法,可使得Linux系統(tǒng)服務(wù)器顯著地提高吞吐量和減少TCP連接的延遲,能夠顯著國外VPS訪問和下載速度。什么...
閱讀 3540·2023-04-25 20:09
閱讀 3743·2022-06-28 19:00
閱讀 3064·2022-06-28 19:00
閱讀 3087·2022-06-28 19:00
閱讀 3178·2022-06-28 19:00
閱讀 2883·2022-06-28 19:00
閱讀 3051·2022-06-28 19:00
閱讀 2641·2022-06-28 19:00