雙十一剛剛過去,你的快遞都收到了嗎?好像曾經(jīng)因流量激增,導致各地中轉(zhuǎn)及收件點爆倉,快遞遲遲不到,延遲甚至長達半個月的新聞幾乎絕跡。當運輸速度恒定,中轉(zhuǎn)站點的多寡、分揀能力的強弱、是否丟包重發(fā),決定了你的快遞能否如期到達。
那么,如果 IM 消息是物,音視頻內(nèi)容是物,那么全球通信網(wǎng)就是負責傳輸?shù)奈锪飨到y(tǒng)。在物理距離恒定的前提下,對于路由跳數(shù)、網(wǎng)絡(luò)帶寬、網(wǎng)絡(luò)質(zhì)量和緩存隊列的設(shè)計和優(yōu)化,決定了系統(tǒng)能否做到高質(zhì)量、低延遲的傳輸。
這是融云首席架構(gòu)師李淼在 WICC 廣州“出海分論壇”中分享的話題引子。也因此,李淼關(guān)于《全球低延遲通信網(wǎng)絡(luò)的設(shè)計與優(yōu)化》的話題分享變得更加具象。
RTC 與 IM 全球網(wǎng)絡(luò)的設(shè)計有所同,有所不同
融云全球通信網(wǎng)絡(luò)分為 RTC 全球網(wǎng)絡(luò)和 IM 全球通信絡(luò)兩個部分,這是由于 RTC 和 IM 在傳輸中不同的加速特點所決定。
(RTC 網(wǎng)絡(luò)與 IM 網(wǎng)絡(luò))
相同點在于:二者可在數(shù)據(jù)中心、節(jié)點等多項物理設(shè)施上進行復用,并且都必須保證高質(zhì)量、低延遲的傳輸,從而為用戶帶來的場景體驗。
不同點在于:RTC 基于 UTP 協(xié)議運行,對于用戶體驗而言,允許有一定的丟包率,但對于延時要求苛刻;而 IM 基于 TCP 協(xié)議進行業(yè)務承載,在要求消息不能丟失的同時,需要消息的集中存儲,不僅能為用戶不在線時存儲離線消息,還要根據(jù)業(yè)務類型,進行歷史消息的存儲。
因此,融云對于 RTC 的設(shè)計,是完全去中心化的分布式通信網(wǎng)絡(luò)。好處是在后續(xù)進行網(wǎng)絡(luò)優(yōu)化時,可以隨意增加媒體節(jié)點部署,而不影響用戶的任何使用體驗。
融云 IM 的網(wǎng)絡(luò)設(shè)計采用的是將數(shù)據(jù)流量導入到數(shù)據(jù)中心的方式,已陸續(xù)在國內(nèi)、北美和新加坡分別設(shè)立了數(shù)據(jù)中心,目前已迭代至基于Anycast 的一體化加速網(wǎng)。特點在于多協(xié)議支持、多數(shù)據(jù)中心支持,并且,基于 SmartDNS & Anycast的加速原理可以更高質(zhì)量地保證在全球范圍內(nèi),節(jié)點分配的準確度。此外,IM 的許多全球鏈路優(yōu)化工作,都可以在 RTC 上復用。
了解完以上架構(gòu),重點來了:融云是如何進行延時優(yōu)化的呢?這需要分別從 RTC 和 IM 兩個方向進行解析。
如何降低 RTC 的網(wǎng)絡(luò)延時
(RTC 通信過程)
對于 RTC 而言,能降低延時的辦法,就是提高 RTC 節(jié)點的覆蓋率,目的在于縮短用戶與邊緣節(jié)點的物理距離,也就意味著以更少的跳數(shù)完成連接。
融云對于節(jié)點的選擇先是要保證大洲級的全覆蓋,再是對熱門區(qū)域進行重點覆蓋。所選節(jié)點基于一線 IaaS 廠商的公有云服務搭建,每個節(jié)點之間都可通過專線互聯(lián)。不但可以提升鏈路傳輸?shù)姆(wěn)定性,還可以降低 RTC 節(jié)點的跳數(shù),甚至可以做到 0 跳或者 1 跳。
優(yōu)化的難點在于:如何讓用戶選擇到質(zhì)量的節(jié)點。通常最直觀的辦法是通過智能 DNS 解析,但融云經(jīng)過驗證發(fā)現(xiàn),準確度率只在 80% 左右。為此,融云在之后增加了 IP Anycast,它跟 DNS 原理完全不同,可直接通過 IP 的方式來進行分配,這個分配是運營商級的。
在鏈路探測方面,物理距離最近的IDC 未必就是質(zhì)量的節(jié)點,即便采用 smart DNS+IP Anycast,準確度依然無法達到。為此,融云增加了客戶端的探測能力,在用戶連接時下發(fā) N 個地址?蛻舳烁鶕(jù)下發(fā)地址進行探測,擇優(yōu)選擇鏈路連接。據(jù)日志分析,準確度達99.5% 以上。
同云連接可以通過鏈路優(yōu)化來保證,那么跨云又該怎么辦呢?
融云的做法是通過二級級聯(lián),將數(shù)據(jù)中心之間的流量通過所采購的 SD-WAN 進行導入導出。這其中,級聯(lián)優(yōu)化至關(guān)重要。
比如,一個北美用戶跟一個國內(nèi)用戶通信,融云會先在北美與香港之間進行專線互聯(lián),然后香港再與國內(nèi)的節(jié)點進行專線互聯(lián)。這種通過香港節(jié)點進行轉(zhuǎn)發(fā)的方案,能夠在保證質(zhì)量的前提下,達到低延時的網(wǎng)絡(luò)優(yōu)化效果。
但難點在于:故障降級。傳輸過程中,同云的專線和SD-WAN都可能會出現(xiàn)故障。盡管故障的概率極低,但一旦故障發(fā)生,就必須有所取舍,為了保證用戶能夠正常接聽互通,只能選擇將整個通訊鏈路進行降級。比如當專線出問題時,會通過二級級聯(lián)的方式,進行節(jié)點的跳轉(zhuǎn),或者直接通過互聯(lián)網(wǎng)公網(wǎng)的方式進行數(shù)據(jù)的轉(zhuǎn)發(fā)。
此外,要降延就要有完善的網(wǎng)絡(luò)延時監(jiān)控系統(tǒng)。融云在客戶端建設(shè)了各種標準的 QoS 監(jiān)測系統(tǒng),包括數(shù)據(jù)實時上報和后臺分析。
如何降低 IM 的網(wǎng)絡(luò)延時
IM 的網(wǎng)絡(luò)延時優(yōu)化途徑主要集中于節(jié)點間數(shù)據(jù)轉(zhuǎn)發(fā)和證書計算前置兩個方面。
在節(jié)點數(shù)據(jù)的轉(zhuǎn)發(fā)方面:由于 IM 數(shù)據(jù)基于 TCP 協(xié)議傳輸,但 TCP 的擁塞控制和丟包重傳策略并不友好,因此融云將部分 TCP 協(xié)議替換成 QUIC 協(xié)議,也就是說,從物理距離最遠的邊緣節(jié)點到路由節(jié)點數(shù)據(jù)的傳輸,融云都通過 QUIC 進行了優(yōu)化。
(IM 全球網(wǎng)絡(luò)的歷程)
通過 QUIC 優(yōu)化,首先可以避免在邊緣點跟路由節(jié)點之間,TCP 的三次握手,直接將 TLS RTT 降為 0;其次是當網(wǎng)絡(luò)抖動時,QUIC 有更友好的丟包重傳策略,可以做到丟哪個包就補哪個包,而不會像 TCP 那樣,一旦丟包,后續(xù)所有的包都要進行重傳。內(nèi)測表明,這一優(yōu)化,使整個網(wǎng)絡(luò)延時降低了 15% 左右。
在證書計算前置方面:融云采取將TLS 證書和 SSL 的證書,在邊緣節(jié)點上直接進行交換的方式。這樣一來,首先是減少了用戶數(shù)據(jù)到數(shù)據(jù)中心之間的整體的 RTT,可將 RTT直接降到 0。其次,IM 多有小包通訊的場景,例如一個信令包只有 10-20個字節(jié),通過在邊緣點上將數(shù)據(jù)包進行解密,明文傳遞到融云的路由節(jié)點,再進行加密傳到數(shù)據(jù)中心,大大降低了兩個最遠物理距端點間的數(shù)據(jù)傳輸量。
需要說明的是,用戶完全無需擔心數(shù)據(jù)的安全問題。因為融云的邊緣節(jié)點和路由節(jié)點全部由融云控制,均為受信網(wǎng)絡(luò)。但如果是必須要在公網(wǎng)完成數(shù)據(jù)傳輸,融云仍然會通過傳統(tǒng) TLS 方式來進行數(shù)據(jù)鏈路加密。
當然,融云對 IM 的優(yōu)化策略遠不止于此,更多表現(xiàn)在客戶端及服務端日志的收集、zero copy、多路復用、IP 直連和 QoS 保證等多個方面。
比如對日志的收集,融云每發(fā)一個 SDK 版本,都會增加新的日志埋點,用于分析業(yè)務、分析網(wǎng)絡(luò)等,以此進行一些定向或定點區(qū)域的優(yōu)化。
在談及未來計劃時,李淼指出,融云將不計成本,不遺余力地繼續(xù)加大網(wǎng)絡(luò)建設(shè)力度,為開發(fā)者提供更加優(yōu)質(zhì)的服務。就研發(fā)而言,將持續(xù)提升軟件本身的處理能力,不斷豐富數(shù)據(jù)收集的手段,同時提升數(shù)據(jù)預估的準確性。
免責聲明:本文僅代表作者個人觀點,與每日科技網(wǎng)無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實,對本文以及其中全部或者部分內(nèi)容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關(guān)內(nèi)容。
本網(wǎng)站有部分內(nèi)容均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責,若因作品內(nèi)容、知識產(chǎn)權(quán)、版權(quán)和其他問題,請及時提供相關(guān)證明等材料并與我們聯(lián)系,本網(wǎng)站將在規(guī)定時間內(nèi)給予刪除等相關(guān)處理.
精彩推薦
-
采購拿回扣問題,教你一個小妙招,看看怎么做!
2017-09-18 11:09 廣告 閱讀
-
苦逼的老板,教你一個小妙招,怎么防采購拿回扣!
2017-09-18 11:09 廣告 閱讀
-
廣告采購與招標網(wǎng)正式上線 傳播易技術(shù)創(chuàng)新廣告
2019-05-07 18:00:09 更新 閱讀
-
尖貨爆料!速來【數(shù)碼預爆臺】領(lǐng)取618福利和AI新
2024-06-21 18:33:22 更新 閱讀
-
喜獲國際設(shè)計大獎丨十字勛章減重大師Pro商務背包
2024-06-12 14:04:28 更新 閱讀
-
Baseus倍思音頻品鑒會:一場產(chǎn)品與技術(shù)的對話
2024-05-29 11:13:32 更新 閱讀
-
212攜手極致軍工品質(zhì),煥新出發(fā)
2024-05-22 21:16:00 更新 閱讀
-
第四屆全球應用算法BPAA大賽再度升級,增添三大
2024-05-17 17:55:36 更新 閱讀
-
三維天地助力實驗室質(zhì)量管理工作無紙化、流程化
2024-05-09 15:35:04 更新 閱讀