Google BBR黑科技,讓你的下載速度翻倍!

weixin_33807284發表於2018-11-18

一月遇見你
百家號17-11-09 13:53
在搜尋平臺上搜一搜“網盤”兩個字,被大家吐槽最多的就是網盤下載速度難以保證,每秒鐘都在以不均衡的速度呈心電圖的架勢搖擺不定,即使是充值了某雲的會員,效果仍然是不理想的。一個大水池只能用小水管來放水,真的會等到天荒地老。不過這個下載速度慢的問題現在可以進行優化了,用的就是谷歌的“黑科技”-Google BBR擁塞控制演算法。讓使用者的檔案下載速度翻倍。
在介紹這個“黑科技”之前,我們先來看看,普通的下載是怎麼實現的。
我們以遊樂園排隊為例給大家解釋:
當遊樂園客流量並不是很多的時候,很多娛樂專案是不用排隊的。直接就可以綁好安全帶坐上過山車,老司機帶著開一波。
遊樂園流量稍微有點多的時候,我們就意識到哎呀,可能會排隊,就會自動放慢了我們的腳步,力圖可以達到走到排隊口的時候恰好前面排隊的渣渣被消耗完。我們也直接不用排隊。可以慢慢的綁好安全帶坐上過山車,老司機帶著開一波。
當遊樂園流量很大的時候,我們這時候已經接受到了訊號,oops,堵住了,需要排隊。那我們也會放慢我們的腳步甚至急剎車停留在原地等待堵住的隊伍有新的進展(雖然真實世界我們並不會立刻停下腳步看隊伍慢慢消耗殆盡,看細水長流)再繼續前行,然後等排到了自己再綁好安全帶坐上過山車,老司機帶著開一波。

這就是一般網路裡經常發生的狀況,
傳輸一個資料,丟出去的有反饋,證明是綠色通道,沒有人和你搶管道,資料分分鐘傳輸完畢。
在稍微忙碌的環境下,丟出去的有反饋,但是,相同反饋回來了兩三次。這時候就知道水管有點擠,傳輸資料緩慢行駛。
在較忙碌的環境下,丟一個都沒有反饋回來,那就是前方擁擠,啟動應急預案,傳輸變慢甚至停滯不前,避免擁堵撞在一起。
這就是網路下TCP(網路傳輸協議)堵塞控制。
TCP 一直都是想要走一個公平穩健的下載環境,所以擬定的特點也都是,慢啟動,在遇到比較擁擠的小水管的時候,默默地放慢速度甚至停下來。這些公平原則給了一些流氓下載軟體提供了有機之乘,拼命的狂加塞不排隊,還會增加丟包的風險。真是呵呵噠~。這就會造成網路世界裡下載一拖再拖。
而從另外一方面來說,
從知乎上搜尋“BBR”出來最多的就是詢問使用者如何利用BBR來加速架梯子的速度,達到YouTube 秒開甚至是流暢的觀看4K,8K超清視訊。YouTube作為谷歌的骨肉,自然首先會用上新技術。據數字統計,用BBR 技術優化過的YouTube流量增長了4%

所以從上面這些資訊來看,BBR 是一項加速TCP的新演算法,可以加速網路的傳輸速度。他的原理和TCP 的不同。
如果說剛才遊樂園排隊是靠肉眼的反饋來決定這個隊伍怎麼排,是加快腳步直接上車,還是加快腳步然後突然急剎車,等排隊再上車,那麼BBR 技術就是在遊樂園安插了眼線,一直不斷有遊樂園內部員工通風報信,告知前方有多少人,大概需要多久處理完這些小渣渣。那這時候心裡就有譜了嘛,你就可以自己算一下怎麼排隊,用什麼速度可以在勻速前進的前提下,可以慢慢的綁好安全帶坐上過山車,又不會堵車然後老司機還可以帶著開一波。
所以,谷歌的這項技術BBR的最大特點就是儘量跑滿頻寬,不要有排隊的情況產生,從而優化自己的傳輸速度。這就是為啥用了這項技術就可以速度開的飛起。一個情景下,以一定的速度不斷測試往返流量時間,然後再以網路可以處理的速度發出流量,避免排隊撞車。
這種模式還會有個好處,提防小人,勻速前進,不會突然急剎車,跑滿頻寬不留空隙,不給流氓軟體留機會加塞。所以網路傳輸資料會很快。
現在,這項技術被運用到了堅果雲資料傳輸上。
不管小檔案,大檔案,統統跑滿頻寬,檔案盡最大化下載下來。不用心疼買的百兆光纖最後沒發揮出功效變小水管,空浪費了那麼多的錢。堅果雲網盤會利用Google BBR傳輸協議,進行核心引數調優,使用者完全不需要在客戶端進行任何操作,預設開啟buff模式。這就是為啥我們網盤能做到下的又快,存的又穩。

相關文章