導(dǎo)讀:如果將整個(gè)網(wǎng)絡(luò)看成一片汪洋大海,那我們能夠順利上網(wǎng),就是一艘艘船不斷出發(fā)和返航的結(jié)果。今天我們一起了解一下影響網(wǎng)絡(luò)質(zhì)量的四個(gè)要素。
相信很多人,都有過這樣的經(jīng)歷:
追熱劇,即將出現(xiàn)轉(zhuǎn)折,人物被按下暫停鍵,場(chǎng)面有點(diǎn)尷尬甚至好笑。
看球賽,關(guān)鍵球已出手,畫面突然一片抖動(dòng),讓人氣到想直接扔手機(jī)。
玩游戲,就要閃現(xiàn)放大,網(wǎng)絡(luò)信號(hào)突然變?nèi)?,結(jié)果被對(duì)方英雄成功反殺。
如果將整個(gè)網(wǎng)絡(luò)看成一片汪洋大海,那我們能夠順利上網(wǎng),就是一艘艘船不斷出發(fā)和返航的結(jié)果。船從我們的手機(jī)出發(fā),在海洋/湖泊/河道中穿梭后到目的地,再帶著新的數(shù)據(jù)返航至我們的手機(jī)。
這個(gè)航行的過程并非一帆風(fēng)順,也會(huì)遇到航道堵塞、船只迷航的情況。一旦數(shù)據(jù)傳送出現(xiàn)問題,就會(huì)造成網(wǎng)絡(luò)卡頓,給我們帶來不好的網(wǎng)絡(luò)體驗(yàn)。
今天我們一起了解一下影響網(wǎng)絡(luò)質(zhì)量的4個(gè)要素:
01 帶寬:航道寬度
一般用帶寬(Throughput)來形容網(wǎng)絡(luò)的速率,帶寬越大,數(shù)據(jù)傳輸?shù)乃俾示驮酱?。帶寬,代表了航道的寬度。航道越寬,可以通過船只數(shù)量就越多,數(shù)據(jù)傳輸?shù)倪^程就越順利。帶寬從幾Kbits到1000 Mbps,就是一船獨(dú)行和千帆競(jìng)發(fā)之間的天差地別。
02 時(shí)延:航行時(shí)間
一般用時(shí)延(Latency)來形容數(shù)據(jù)從遠(yuǎn)端到本地之間的傳送時(shí)間,而且計(jì)算的是來回的時(shí)間之和。時(shí)延,代表了一艘船的航行總時(shí)長(zhǎng)。時(shí)延越大,代表數(shù)據(jù)傳輸耗費(fèi)的時(shí)間越多。一般時(shí)延超過50 ms,網(wǎng)絡(luò)質(zhì)量就算是不好了。一旦超過300 ms,網(wǎng)絡(luò)的卡頓感就比較明顯。
時(shí)延的大小,需要計(jì)算以下四種時(shí)延的總和:處理時(shí)延:網(wǎng)絡(luò)設(shè)備處理數(shù)據(jù)的時(shí)間。每艘船出發(fā)前,都需要調(diào)度中心(網(wǎng)絡(luò)設(shè)備)進(jìn)行一些必要的處理,比如:確定目的地、確定傳送時(shí)要走的航線。
傳輸時(shí)延:船在數(shù)據(jù)海洋河流中的航行時(shí)間。哪怕裝載滿數(shù)據(jù)的船以光速(30萬公里每秒)航行,走過地球兩端的4萬公里,最低的時(shí)延也得130 ms。
隊(duì)列時(shí)延:不同航道擁有不同的寬度(帶寬),成千上萬的船要通過某一段航道時(shí),還需要排隊(duì)等候調(diào)度中心(網(wǎng)絡(luò)設(shè)備)的處理。
串行化時(shí)延:滿載數(shù)據(jù)的船,也是有一定的長(zhǎng)度的。從船頭(數(shù)據(jù)第一個(gè)bit)出發(fā)到船尾(數(shù)據(jù)最后一個(gè)bit)出發(fā),這個(gè)時(shí)間也需要計(jì)算。
03 丟包:到不了終點(diǎn)的船
一般用丟包(Loss)來形容網(wǎng)絡(luò)中數(shù)據(jù)的丟失情況。丟包,代表了哪些到達(dá)不了終點(diǎn)的船。丟包的原因有很多,可能是調(diào)度中心繁忙導(dǎo)致無法處理船只的請(qǐng)求、排隊(duì)等候調(diào)度的船只數(shù)量過多、航路中的各個(gè)航道(鏈路)關(guān)閉導(dǎo)致船只繞路或者迷路。
在一次傳送數(shù)據(jù)的過程中,有可能派出100艘船,經(jīng)過層層磨難后只有80艘船順利返航,可以計(jì)算出丟包率為20%。
丟包率是衡量網(wǎng)絡(luò)質(zhì)量的一個(gè)關(guān)鍵指標(biāo),丟包率一般不能大于2%,用戶感覺不到太大的影響。一旦超過10%,網(wǎng)絡(luò)質(zhì)量就會(huì)迅速劣化,網(wǎng)絡(luò)卡頓的感覺就比較明顯。
4. 抖動(dòng):航行耗時(shí)的分布
一般用抖動(dòng)(Jitter)來形容不同數(shù)據(jù)到達(dá)目的地時(shí)的最大時(shí)間差。抖動(dòng),代表了一個(gè)船隊(duì)中每一艘船返航的時(shí)間差異。上網(wǎng)過程中的數(shù)據(jù)傳送是持續(xù)不斷的,一艘艘的船出發(fā),就會(huì)一艘艘的船到達(dá)目的地。前一艘船的時(shí)延是60 ms,后一艘船時(shí)延是30 ms,抖動(dòng)就是60 ms-30 ms=30 ms。抖動(dòng)一旦出現(xiàn)在語音會(huì)議/視頻會(huì)議中,就可能導(dǎo)致聲音無法聽清楚,圖像無法看清楚。
『 網(wǎng)絡(luò)想穩(wěn)住,抓住四要素 』
在不同的應(yīng)用中,帶寬、時(shí)延、丟包、抖動(dòng)這4個(gè)因素對(duì)網(wǎng)絡(luò)質(zhì)量的影響大小,也不盡相同:
語音/視頻會(huì)議,對(duì)4個(gè)因素都很敏感;
在線游戲,對(duì)帶寬、時(shí)延、丟包比較敏感;
郵箱/新聞等HTTP應(yīng)用,往往只對(duì)帶寬、時(shí)延敏感。
為了保證網(wǎng)絡(luò)質(zhì)量,我們可以想盡辦法保證帶寬、降低時(shí)延、降低丟包率,常見的處理方式包括:
(1) 提供差異化的帶寬
網(wǎng)絡(luò)設(shè)備為不同的應(yīng)用提供不同的帶寬,比如:語音/視頻會(huì)議、游戲這些應(yīng)用,可以分配大一些的帶寬;郵箱、新聞資訊這些應(yīng)用,可以分配小一些的帶寬。通過這種方式,帶寬得到了高效利用,而且避免了不同應(yīng)用的網(wǎng)絡(luò)擁堵。
(2) 優(yōu)先處理高優(yōu)先級(jí)的應(yīng)用
為不同的應(yīng)用分配不同的優(yōu)先級(jí),網(wǎng)絡(luò)設(shè)備優(yōu)先處理高優(yōu)先級(jí)的應(yīng)用,可以降低這些應(yīng)用的處理時(shí)延、隊(duì)列時(shí)延等。而隊(duì)列中優(yōu)先級(jí)低的應(yīng)用,則只能在沒有高優(yōu)先級(jí)應(yīng)用的情況下,才可以得到處理。
保障網(wǎng)絡(luò)質(zhì)量的技術(shù)仍在不斷的研究和改進(jìn),而具體的應(yīng)用也在持續(xù)探索中。例如:運(yùn)營(yíng)商已經(jīng)通過QoS技術(shù)為“王者榮耀”玩家提供帶寬保障,保障次數(shù)達(dá)到1100萬次/天。
期待在不久的將來,所有游戲、視頻會(huì)議應(yīng)用再也不用擔(dān)心網(wǎng)絡(luò)卡頓了。
掃一掃在手機(jī)上閱讀本文章