延時(shí)牛哺、丟包陋气、抖動,用盡洪荒之力也傳不到引润,該怎么辦巩趁?

互聯(lián)網(wǎng)大概可以算是最近幾十年人類最重要的發(fā)明之一。最早人們用互聯(lián)網(wǎng)發(fā)送電子郵件淳附,接著普及了網(wǎng)頁瀏覽议慰,后來又流行即時(shí)文字聊天,人們工作生活的方式在這寫年里發(fā)生了巨大的變化奴曙”鸢迹可是當(dāng)人們想更進(jìn)一步實(shí)現(xiàn)實(shí)時(shí)音視頻通話時(shí),卻發(fā)現(xiàn)互聯(lián)網(wǎng)有點(diǎn)不給力了洽糟÷疲卡頓、掉線坤溃、延時(shí)太高等等拍霜,這些問題始終伴阻礙實(shí)時(shí)音視頻通話的發(fā)展。而這根本上的原因是薪介,互聯(lián)網(wǎng)一開始并不是針對實(shí)時(shí)通信而設(shè)計(jì)的祠饺。

人們常把互聯(lián)網(wǎng)比喻成“信息高速公路”,其實(shí)更確切的比喻應(yīng)該是“信息公路網(wǎng)”汁政〉劳担互聯(lián)網(wǎng)就像現(xiàn)實(shí)中的路網(wǎng)一樣交錯(cuò)復(fù)雜缀旁,有像連接兩地的高速公路一樣快速的骨干網(wǎng),也有像是難走的崎嶇山路一樣糟糕的網(wǎng)絡(luò)環(huán)境试疙。而在互聯(lián)網(wǎng)上傳輸數(shù)據(jù)就像是從一個(gè)地方開車到另一個(gè)地方一樣诵棵。

現(xiàn)在我們就借這個(gè)比喻來解釋一下互聯(lián)網(wǎng)傳輸?shù)娜齻€(gè)非常重要的特點(diǎn):延時(shí)、丟包祝旷、抖動履澳。


假設(shè)我們現(xiàn)在有一百輛車從北京鳥巢開往上海東方明珠,并且每隔一分鐘出發(fā)一輛怀跛。

延時(shí)

“延時(shí)”指的是每輛車從鳥巢開到東方明珠花的平均時(shí)間距贷。顯然,車隊(duì)走高速公路肯定要比走各種小公路快很多吻谋,而且從鳥巢出發(fā)沿著怎樣的路線開上高速公路也有很大影響忠蝗,萬一堵在了三環(huán)可就要多花好幾個(gè)小時(shí)了。所以這個(gè)值和車隊(duì)選擇的行駛路線有關(guān)漓拾「笞睿互聯(lián)網(wǎng)傳輸也是一樣的道理,需要傳輸數(shù)據(jù)的兩點(diǎn)之間經(jīng)常是有很多可選路徑的骇两,而這些路徑的延時(shí)往往相差很大速种。

丟包

“丟包”指的是有的車無法在有效時(shí)間內(nèi)無法達(dá)到終點(diǎn),甚至可能永遠(yuǎn)也到不了終點(diǎn)低千。有的車可能永遠(yuǎn)堵在北京的三環(huán)上了配阵,有的車可能中途出了車禍。假如我們的一百輛車?yán)镉形遢v車因?yàn)楦鞣N原因沒能按時(shí)到達(dá)上海示血,我們這次車隊(duì)傳輸?shù)摹皝G包率”就是5%棋傍。是的,互聯(lián)網(wǎng)傳輸也一樣难审,它并不是百分百可靠的瘫拣,總有數(shù)據(jù)無法按時(shí)傳輸?shù)侥康牡亍?/p>

抖動

“抖動”指的是車子到達(dá)的順序、間隔和出發(fā)時(shí)的差異告喊。雖然我們的一百輛車在北京是等間隔的一分鐘一輛出發(fā)的麸拄,但是它們到達(dá)上海時(shí)卻并不是按順序一分鐘一輛到達(dá)的,甚至可能有晚出發(fā)的車比早出發(fā)的車先到的情況葱绒「兴В互聯(lián)網(wǎng)傳輸也一樣,如果簡單地按照收到的音視頻數(shù)據(jù)順序直接播放出來地淀,就會出現(xiàn)失真的現(xiàn)象失球。

延時(shí)、丟包、抖動是互聯(lián)網(wǎng)這個(gè)信息公路網(wǎng)無法避免的三個(gè)特點(diǎn)实苞。以前電子郵件豺撑、網(wǎng)頁瀏覽、文字聊天的場景下黔牵,這三個(gè)特點(diǎn)并不是太大的問題聪轿,畢竟人們可以接受電子郵件晚幾分鐘到達(dá)對方的郵箱。但在實(shí)時(shí)音視頻通信的場景下猾浦,不要說幾分鐘陆错,就算只有幾秒鐘的延遲,音視頻交流的體驗(yàn)就會大打折扣金赦。

聲網(wǎng)Agora.io是怎么做的

為了解決這三個(gè)問題對實(shí)時(shí)音視頻通信的影響音瓷,聲網(wǎng)Agora.io以多種技術(shù)手段并用,建立了自己的虛擬通信網(wǎng)夹抗。我們?nèi)匀挥们懊孳囮?duì)的比喻绳慎,聲網(wǎng)Agora.io的虛擬通信網(wǎng)就像是一個(gè)車隊(duì)調(diào)度中心,指引車隊(duì)沿著速度最快漠烧、路況最好的線路通行杏愤。

就近接入

當(dāng)車隊(duì)從鳥巢出發(fā)的時(shí)候,調(diào)度中心首先給出一條從鳥巢通往高速公路入口的最優(yōu)路徑已脓,讓車隊(duì)盡快離開擁擠的市區(qū)珊楼。同樣的,聲網(wǎng)Agora.io虛擬通信網(wǎng)根據(jù)用戶所在地分配最近的接入點(diǎn)摆舟,讓音視頻數(shù)據(jù)包盡快到達(dá)快速的骨干網(wǎng)絡(luò)亥曹,這就叫做“就近接入”邓了。

動態(tài)路由

當(dāng)我們的車隊(duì)上了高速公路后恨诱,理想情況下只要沿著最短路線向上海行駛就可以了。但現(xiàn)實(shí)情況是骗炉,在最短路線上可能會有路段在維修無法通行照宝,會有路段車輛太多非常擁堵,會有路段收費(fèi)站太多通行效率低下等等情況句葵。調(diào)度中心會根據(jù)實(shí)時(shí)的全國路況厕鹃,給車隊(duì)規(guī)劃高速公路上的行駛路徑,保證車隊(duì)以最快的速度到達(dá)上海的高速公路出口乍丈。同樣的剂碴,骨干網(wǎng)絡(luò)也會有線路暫時(shí)不可用,線路擁堵轻专,跨運(yùn)營商線路質(zhì)量差等情況忆矛。聲網(wǎng)Agora.io虛擬通信網(wǎng)會根據(jù)全球的主干網(wǎng)絡(luò)狀況,為需要傳輸?shù)囊粢曨l數(shù)據(jù)包實(shí)時(shí)規(guī)劃傳輸路徑,這就叫做“動態(tài)路由”催训。

當(dāng)車隊(duì)沿著高速公路到達(dá)上海后洽议,調(diào)度中心再次給出一條從高速公路出口通往東方明珠的最優(yōu)路徑。也即當(dāng)數(shù)據(jù)沿著骨干網(wǎng)傳輸?shù)綄Ψ降牡貐^(qū)后漫拭,聲網(wǎng)Agora.io虛擬通信網(wǎng)再次使用“就近接入”的技術(shù)讓數(shù)據(jù)包盡快到達(dá)目標(biāo)設(shè)備亚兄。

丟包重傳

“延時(shí)”的問題解決了,“丟包”怎么辦呢采驻?假設(shè)正好遇到上下班高峰审胚,北京的路況非常糟糕,即使調(diào)度中心規(guī)劃了最優(yōu)的離開北京的線路礼旅,100輛車?yán)镆仓挥?0輛按時(shí)到達(dá)了高速公路入口菲盾,“丟包率”達(dá)到了20%。在這種情況下調(diào)度中心的辦法是各淀,通知鳥巢再補(bǔ)發(fā)20輛車出來懒鉴!即使這20輛車仍然有20%(4輛)無法離開北京,最終也能有總共96輛車駛上高速公路碎浇,最終的丟包率從20%降到了4%临谱。這一技術(shù)在聲網(wǎng)Agora.io虛擬通信網(wǎng)中被稱為“丟包重傳”。無論是從用戶到接入點(diǎn)奴璃,還是我們的服務(wù)器之間悉默,還是最終從接入點(diǎn)到用戶,丟失的數(shù)據(jù)包都有機(jī)會通過重傳機(jī)制得到及時(shí)的恢復(fù)苟穆。

由此抄课,聲網(wǎng)Agora.io虛擬通信網(wǎng)通過“就近接入”、“動態(tài)路由”等技術(shù)雳旅,有效降低了數(shù)據(jù)傳輸?shù)难訒r(shí)跟磨,使得中美之間端到端傳輸?shù)钠骄訒r(shí)只有0.15秒;又通過“丟包重傳”的機(jī)制對抗網(wǎng)絡(luò)丟包攒盈,使得中美之間端到端的數(shù)據(jù)包有效到達(dá)率超過了99%抵拘。再加上聲網(wǎng)Agora.io引擎內(nèi)部專門的模塊針對網(wǎng)絡(luò)的“抖動”進(jìn)行處理,互聯(lián)網(wǎng)上實(shí)時(shí)音視頻傳輸?shù)娜箅y題得以解決型豁。

通過這些硬性的技術(shù)手段僵蛛,加上完備的報(bào)警系統(tǒng)、豐富的問題調(diào)查工具迎变、詳細(xì)的統(tǒng)計(jì)報(bào)表等軟性的技術(shù)工具充尉,聲網(wǎng)Agora.io虛擬通信網(wǎng)為互聯(lián)網(wǎng)用戶提供了穩(wěn)健可靠的實(shí)時(shí)音視頻傳輸解決方案。

本文作者

龔宇華 ?聲網(wǎng)Agora.io 資深移動開發(fā)專家

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末衣形,一起剝皮案震驚了整個(gè)濱河市驼侠,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖泪电,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件般妙,死亡現(xiàn)場離奇詭異,居然都是意外死亡相速,警方通過查閱死者的電腦和手機(jī)碟渺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來突诬,“玉大人苫拍,你說我怎么就攤上這事⊥叮” “怎么了绒极?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蔬捷。 經(jīng)常有香客問我垄提,道長,這世上最難降的妖魔是什么周拐? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任怕磨,我火速辦了婚禮翅阵,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘亮瓷。我一直安慰自己硝岗,他們只是感情好抡草,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布恍涂。 她就那樣靜靜地躺著哑舒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪播急。 梳的紋絲不亂的頭發(fā)上脓钾,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天,我揣著相機(jī)與錄音旅择,去河邊找鬼惭笑。 笑死侣姆,一個(gè)胖子當(dāng)著我的面吹牛生真,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播捺宗,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼柱蟀,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蚜厉?” 一聲冷哼從身側(cè)響起长已,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后术瓮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體康聂,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年胞四,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了恬汁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,953評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡辜伟,死狀恐怖氓侧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情导狡,我是刑警寧澤约巷,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站旱捧,受9級特大地震影響独郎,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜枚赡,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一囚聚、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧标锄,春花似錦顽铸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至践剂,卻和暖如春鬼譬,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背逊脯。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工优质, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人军洼。 一個(gè)月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓巩螃,卻偏偏與公主長得像,于是被迫代替她去往敵國和親匕争。 傳聞我的和親對象是個(gè)殘疾皇子避乏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容