一個問題,如果在您的面前有2個選擇:
一個網絡帶寬是100 Mbps,丟包率在 1%以上
一個網絡帶寬只有1 Mbps,丟包率在0.1%%以下
您會選擇哪一個?
憑著直覺,99%+的人會選擇100 Mbps,包括我自己!
請大家看一幅圖片
大家看下方那條黑色的曲線,代表網絡吞吐速率(TCP Cubic算法)與丟包率的關系。
物理帶寬 = 100Mbps
當丟包率= 0.001%時,實際的吞吐速率(Delivery Rate)≈100 Mbps
當丟包率= 0.01%時,實際的吞吐速率(Delivery Rate) = 35 Mbps
當丟包率= 0.1%時,實際的吞吐速率(DeliveryRate) < 10 Mbps
當丟包率= 1%時,實際的吞吐速率(Delivery Rate) < 1 Mbps
當丟包率=10%時,實際的吞吐速率(Delivery Rate)≈0
物理帶寬 = 1 Mbps
當丟包=0.001%時,實際的吞吐速率(Delivery Rate)≈1Mbps
結論
丟包率 ≈ 0的1 Mbps要比丟包率 > 1% 的100 Mbps真實速率要快!
這個實驗結果來自于Google TCP BBR研究團隊千百次的實驗統計,實驗結果基應該真實可信!
即使神勇如TCP BBR算法(上方綠色曲線),5%以內的丟包率影響不大。一旦丟包率超過15%,真實吞吐速率直線下降。
丟包率達到20%左右,真實吞吐速率無限接近于0!
通過這個圖表,大家可以清晰地看到,丟包率很大程度上決定著真實的數據吞吐速率!
一位企業老總,知道我懂點網絡,時常和我抱怨說,工作日下午1點左右公司的網絡特別慢,幫助查查是哪里出了問題?
檢查下來發現,1點鐘之后無線的丟包率 > 5 % 。我告訴他,這是由于無線網絡的高丟包率而造成網絡吞吐速率指數級下降而造成的。
他不信地說,即使有5%的丟包率,100個IP報文也不過有5個丟了,不是還有95個到達目的地了嗎?
我耐心地解釋,我們經常使用的網絡應用,包括瀏覽網頁、收發郵件、文件共享、文件下載,都是使用TCP來保證數據的可靠傳輸。而當前使用的TCP流量調度算法,為人謙讓、過分敏感,一旦檢測到丟包,立馬降速1/2。
如果降速1/2,丟包通過快速重傳到達了目的地,不再丟包。那就從1/2速率繼續傳輸,接下來會線性的增長。所謂線性增長,就是每一個RTT時間周期內,多傳輸一個TCP報文。
如果降速1/2,丟包通過快速重傳,依然無法修復丟包造成的字節流的不連續。說明網絡依然擁堵,TCP會繼續在原有的1/2速率的基礎上,繼續降速1/2。
當丟包率較高時,TCP會連續觸發1/2降速的動作。大家不要小看1/2的威力。
100000000連續乘以16個1/2,還有多少?
100000000 / 65536 = 1526 = 1.5 Kbps
看看,一個最高速率=100 Mbps的TCP連接,只要遭遇16次降速,最后的網速接近于0!
我和老總說,互聯網并沒有擁堵,公司局域網也沒有擁堵,造成網絡慢的原因,恰恰是無線信號互相干擾而造成的丟包,而丟包又觸發了TCP的流量抑制算法(1/2降速)!
老總將信將疑,既然無線丟包率高,為何工作日上午總是好的?
我把自己的觀察告訴了他,上午大家都忙于處理工作,打電話、寫文檔、寫郵件,此時網絡流量很小,無線數據不是那么密集。所以,即使無線信號干擾,沖突的概率較小,丟包率也沒有那么嚴重,所以即使速率有一些下降,員工也感覺不到。
下午1點,大家剛吃完午飯,昏昏欲睡,需要放松一下,很多同事會在線看視頻、購物、瀏覽論壇等等,無線數據高度密集,沖突概率加大,丟包率直線攀升!
老總臉上的疑慮消失了一大半說,怎么解決呢?
企業級的無線解決方案
棄用2.4GHZ頻段,使用5GHZ頻段。為了彌補5G穿透性差、覆蓋范圍小的不足,可以通過密集部署AP來補償信號的不足!
企業級的無線解決方案,還可以讓員工的電腦在AP點之間自由漫游。誰的信號強就連接誰,但是IP地址保持不變,漫游切換的過程不會影響TCP的連接,不會中斷當前的應用。
老總一聽說要掏錢,面有難色,就用2.4GHZ頻段,有什么好的辦法?
讓相鄰的AP熱點,使用沒有頻段重疊的信道,這需要手動設置。
商用AP,支持自適應優化選擇自己的信道,無需手動設置,盡可能避開有頻段重疊的信道。
選擇無線信號強的AP,這樣信號沖突時,會“狹路相逢勇者勝”!
最后再說一句,如果明顯感覺網絡慢,那就使用網線訪問網絡。
有線的丟包率遠遠好于無線!
推薦閱讀:
深圳電信寬帶、重慶電信寬帶、昆明電信寬帶、貴陽電信寬帶、長沙電信寬帶、成都電信寬帶、廈門電信寬帶、上海電信寬帶、北京電信寬帶、呼和浩特電信寬帶、拉薩電信寬帶、石家莊電信寬帶、沈陽電信寬帶、長春電信寬帶、哈爾濱電信寬帶、濟南電信寬帶、合肥電信寬帶、杭州電信寬帶、武漢電信寬帶、福州電信寬帶、南昌電信寬帶、?陔娦艑拵、南京電信寬帶、南寧電信寬帶、貴陽電信寬帶、烏魯木齊電信寬帶、蘭州電信寬帶