孫立峰,胡 文,馬 茗,龐海天
(清華大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)系,北京100084)
當(dāng)前全球網(wǎng)絡(luò)數(shù)據(jù)流量呈爆發(fā)式增長(zhǎng),視頻已經(jīng)成為網(wǎng)絡(luò)流量的主要載體。得益于互聯(lián)網(wǎng)帶寬的持續(xù)增加、多媒體壓縮技術(shù)的進(jìn)步和爆發(fā)式的用戶需求,多媒體視頻內(nèi)容正變成互聯(lián)網(wǎng)中的“殺手級(jí)”應(yīng)用[1]。思科的網(wǎng)絡(luò)預(yù)測(cè)指數(shù)[2]顯示,2017年全球數(shù)據(jù)流量的75%是視頻內(nèi)容,而這一數(shù)字被預(yù)測(cè)將在2022年到達(dá)82%。除了爆發(fā)式增長(zhǎng)的視頻數(shù)據(jù)量,多媒體視頻內(nèi)容正呈現(xiàn)出以下3個(gè)趨勢(shì)。
(1) 高質(zhì)量的視頻觀看需求
隨著互聯(lián)網(wǎng)的帶寬不斷增加,視頻觀看的清晰度需求也在持續(xù)上升。用戶在享受高清視頻(720p)和全高清視頻(1080p)的同時(shí),對(duì)于更高清晰度視頻的需求也隨之產(chǎn)生。4K 超高清視頻(Ultra-High-Definition,UHD)對(duì)于帶寬的需求在15~18 Mbps,這是高清視頻帶寬需求的2倍。思科預(yù)計(jì)到2022年UHD視頻將會(huì)占據(jù)22% 的視頻流量。與此同時(shí),虛擬現(xiàn)實(shí)和增強(qiáng)現(xiàn)實(shí)視頻(VR,AR)的數(shù)據(jù)量也會(huì)在2017-2022 年間增長(zhǎng)12倍,這種多媒體視頻可以讓用戶自由轉(zhuǎn)換觀看角度。為了提供良好的用戶體驗(yàn),需要在用戶視角變換的情況下提供高清的多方向視頻塊,這給高質(zhì)量的視頻分發(fā)提出了更高的挑戰(zhàn)。
(2) 實(shí)時(shí)互動(dòng)需求
在過去幾年里,實(shí)時(shí)互動(dòng)直播大量興起,比如美國的Twitch TV,中國的斗魚、映客及快手等。在這些平臺(tái)上,普通用戶可以通過移動(dòng)設(shè)備提供視頻直播服務(wù),并且可以通過伴隨直播的聊天室與觀眾進(jìn)行互動(dòng)。在這種服務(wù)中,普通用戶不僅僅作為內(nèi)容的消費(fèi)者,還作為內(nèi)容的生產(chǎn)者。這種服務(wù)與傳統(tǒng)的直播服務(wù)不同點(diǎn)在于:第一,主播的直播設(shè)備是以普通網(wǎng)絡(luò)進(jìn)行連接的設(shè)備(如個(gè)人電腦、手機(jī)等),較低的準(zhǔn)入門檻使得移動(dòng)直播的頻道數(shù)量遠(yuǎn)遠(yuǎn)大于傳統(tǒng)的直播服務(wù);第二,觀眾不僅僅觀看視頻直播,還可以參與到直播當(dāng)中,甚至這種觀眾與主播之間的互動(dòng)就是移動(dòng)直播服務(wù)所提供的用戶體驗(yàn)中很重要的一部分;第三,由于大量的視頻源是由非專業(yè)主播提供的,源視頻的質(zhì)量(分辨率等)呈現(xiàn)出高度異構(gòu)性。例如,在我們對(duì)映客平臺(tái)的測(cè)量中,在大約3個(gè)月的時(shí)間中就有120萬個(gè)主播共計(jì)建立了2 500萬次直播會(huì)話,吸引了15億次用戶觀看。在Twitch平臺(tái)的Twitch Plays Pokemon頻道中,游戲進(jìn)程的走向甚至是由直播間中大多數(shù)觀眾的意見來決定的。
(3) 視頻服務(wù)移動(dòng)性
隨著高速無線網(wǎng)絡(luò)(WiFi,4G等)的廣泛部署和移動(dòng)數(shù)據(jù)流量?jī)r(jià)格持續(xù)降低,用戶使用移動(dòng)無線網(wǎng)絡(luò)觀看多媒體視頻服務(wù)的比重逐漸增加。思科的報(bào)告[2]顯示2017年移動(dòng)視頻流量占據(jù)了移動(dòng)網(wǎng)絡(luò)總流量的59%,而這一比例會(huì)持續(xù)上升,預(yù)計(jì)至2022 年該比例會(huì)上升至79%。隨著5G 網(wǎng)絡(luò)的快速發(fā)展,未來的無線網(wǎng)絡(luò)將會(huì)支持更多超高清視頻、360°全景視頻和互動(dòng)直播視頻等多媒體形式。用戶觀看視頻的載體也正在轉(zhuǎn)向移動(dòng)智能設(shè)備。
以上分析說明,網(wǎng)絡(luò)多媒體特別是網(wǎng)絡(luò)視頻不僅在數(shù)據(jù)流量上出現(xiàn)爆發(fā)式增長(zhǎng),其呈現(xiàn)出的新趨勢(shì)也給內(nèi)容分發(fā)提出了更高的挑戰(zhàn)。如何迎接這種挑戰(zhàn),進(jìn)而有效地解決內(nèi)容分發(fā)的問題,是學(xué)術(shù)界和工業(yè)界都在關(guān)注的問題。
視頻流媒體的分發(fā)已經(jīng)有了很長(zhǎng)的歷史,在不同的時(shí)期也有不同的分發(fā)系統(tǒng)架構(gòu)演化出來,其發(fā)展主要經(jīng)過了以下幾個(gè)階段。
1.1.1 客戶端服務(wù)器架構(gòu)(Client-server)
在20世紀(jì)90年代,互聯(lián)網(wǎng)的流行開始促使將視頻流媒體分發(fā)給大量客戶端的需求。當(dāng)時(shí)學(xué)術(shù)界和工業(yè)界的研究工作聚焦于為專用的流媒體服務(wù)器設(shè)計(jì)和實(shí)現(xiàn)新的網(wǎng)絡(luò)流媒體協(xié)議。當(dāng)時(shí)發(fā)展的技術(shù)主要有傳輸層的流媒體協(xié)議、碼率控制、錯(cuò)誤控制、代理緩存、IP 層多播及應(yīng)用層多播。
1.1.2 對(duì)等網(wǎng)絡(luò)架構(gòu)(Peer-to-Peer,P2P)
客戶端服務(wù)器架構(gòu)的視頻分發(fā)系統(tǒng)在擴(kuò)展性上還是有限的,為了滿足更多用戶的需求,對(duì)等網(wǎng)絡(luò)架構(gòu)被廣泛應(yīng)用到直播和視頻點(diǎn)播流媒體當(dāng)中。對(duì)等網(wǎng)絡(luò)的設(shè)計(jì)是基于終端用戶(也可被稱為對(duì)等方),可以既做客戶端又做服務(wù)器端,這與客戶端服務(wù)器的系統(tǒng)架構(gòu)是完全不同的。對(duì)等網(wǎng)絡(luò)的設(shè)計(jì)架構(gòu)有兩大優(yōu)勢(shì):第一,它不需要部署特定的網(wǎng)絡(luò)設(shè)施,因此易于部署且節(jié)省資源;第二,在對(duì)等網(wǎng)絡(luò)設(shè)計(jì)中,對(duì)等方不僅下載視頻流,也會(huì)上傳視頻流供其他觀看相同內(nèi)容的對(duì)等方使用。這樣系統(tǒng)的服務(wù)能力就會(huì)隨著用戶群的擴(kuò)大而擴(kuò)大,因?yàn)楦嗟男枨髸?huì)產(chǎn)生更多的供給。
1.1.3 內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network,CDN)
內(nèi)容分發(fā)網(wǎng)絡(luò)會(huì)將大量的服務(wù)器部署在多個(gè)地理位置不同的地點(diǎn),通過多個(gè)網(wǎng)絡(luò)運(yùn)營商(Internet Service Provider)做分發(fā)。CDN 允許用戶從最近的服務(wù)器接收視頻流媒體,即用戶請(qǐng)求會(huì)基于地理位置的接近和服務(wù)器負(fù)載被重定向到最好的可用服務(wù)器上。CDN 分發(fā)架構(gòu)目前廣泛被工業(yè)界采納,如Netflix,Youtube,Hulu。
1.1.4 基于云的分發(fā)架構(gòu)(Cloud)
用戶產(chǎn)生的內(nèi)容(User Generated Content,UGC)已經(jīng)根本地改變了視頻流媒體的格局。用戶產(chǎn)生的視頻內(nèi)容平臺(tái),例如YouTube,與用戶產(chǎn)生的直播視頻內(nèi)容平臺(tái),例如映客、快手、Twitch 等正在以爆發(fā)式和高度動(dòng)態(tài)的方式產(chǎn)生大量的數(shù)據(jù)流量。云計(jì)算的設(shè)計(jì)邏輯是與P2P 系統(tǒng)完全相反的。由于云中有豐富的網(wǎng)絡(luò)資源和基于用量的定價(jià)模型,基于云計(jì)算平臺(tái)的視頻流媒體服務(wù)數(shù)量正在增加。舉例來說,最領(lǐng)先的視頻流媒體服務(wù)提供商之一Netflix已經(jīng)被報(bào)道使用了云服務(wù)[3]?;谠朴?jì)算模式的視頻流媒體分發(fā)迅速超過了對(duì)于P2P網(wǎng)絡(luò)架構(gòu)的關(guān)注。云計(jì)算平臺(tái)可以提供可靠、彈性和成本低廉的資源,并且能夠支持可擴(kuò)展和動(dòng)態(tài)的網(wǎng)絡(luò)服務(wù)。與此同時(shí),因?yàn)樵品?wù)和用戶需求在全球分布的異構(gòu)性,云這種中心式的分發(fā)架構(gòu)也無法很好地服務(wù)地理位置分布過于分散的需求。
因?yàn)橐曨l分發(fā)需求的爆發(fā)式增長(zhǎng),核心網(wǎng)絡(luò)與內(nèi)容分發(fā)網(wǎng)絡(luò)升級(jí)的速度很難支撐如此大的需求增長(zhǎng)。同時(shí),用戶對(duì)多媒體視頻服務(wù)質(zhì)量的期望持續(xù)增加,即高碼率低延遲的網(wǎng)絡(luò)內(nèi)容分發(fā)。當(dāng)前的骨干網(wǎng)絡(luò)負(fù)載過重,網(wǎng)絡(luò)擁塞時(shí)常發(fā)生,因此依靠邊緣側(cè)設(shè)備的網(wǎng)絡(luò)、計(jì)算、存儲(chǔ)能力進(jìn)行內(nèi)容分發(fā)成了潛在的解決方案。
邊緣計(jì)算是指在靠近請(qǐng)求源頭的一側(cè),采用網(wǎng)絡(luò)、計(jì)算、存儲(chǔ)能力,就近提供最近端服務(wù)。其用戶請(qǐng)求在邊緣側(cè)發(fā)起,服務(wù)在邊緣側(cè)執(zhí)行,產(chǎn)生更快的網(wǎng)絡(luò)服務(wù)響應(yīng),節(jié)省帶寬。因邊緣計(jì)算的架構(gòu)有望降低視頻內(nèi)容對(duì)骨干網(wǎng)的帶寬壓力,并提供給用戶更好的觀看體驗(yàn),因此基于邊緣計(jì)算的內(nèi)容分發(fā)方案正在成為學(xué)術(shù)界的研究熱點(diǎn)。邊緣計(jì)算的基礎(chǔ)設(shè)施有幾類:第一,移動(dòng)邊緣計(jì)算(Mobile Edge Computing,MEC)成為5G 中重要的使能技術(shù)。通過在5G 網(wǎng)絡(luò)的通信基站中部署有計(jì)算和存儲(chǔ)能力的邊緣設(shè)備,為車聯(lián)網(wǎng)、工業(yè)互聯(lián)網(wǎng)及VR/AR 等應(yīng)用提供超低延遲與可靠的服務(wù)。第二,當(dāng)前很多有計(jì)算存儲(chǔ)能力的WiFi 熱點(diǎn)與專用的邊緣存儲(chǔ)設(shè)備。例如,迅雷作為中國最大的在線內(nèi)容下載服務(wù)提供商之一,在用戶側(cè)部署了大量邊緣網(wǎng)絡(luò)設(shè)備構(gòu)建“星云CDN”[4]用于緩存和分發(fā)內(nèi)容。以上的基礎(chǔ)設(shè)施使得邊緣計(jì)算成為可能,通過邊緣計(jì)算來進(jìn)行內(nèi)容分發(fā)也有如下的優(yōu)勢(shì):存儲(chǔ)在邊緣側(cè)的內(nèi)容離用戶更近,這可以大量減少核心網(wǎng)絡(luò)的傳輸開銷;因?yàn)樵诟拷脩舻奈恢锰峁┓?wù),可以大幅降低用戶的延遲。具體地,利用邊緣節(jié)點(diǎn)的存儲(chǔ)空間,可以做局域的內(nèi)容緩存,然后通過邊緣的網(wǎng)絡(luò)能力進(jìn)行內(nèi)容分發(fā)。同時(shí),利用邊緣節(jié)點(diǎn)的計(jì)算能力還能夠提供視頻轉(zhuǎn)碼、分布式智能決策等計(jì)算資源消耗大的服務(wù)。
基于邊緣計(jì)算的視頻內(nèi)容分發(fā),已經(jīng)成為當(dāng)前學(xué)術(shù)界、產(chǎn)業(yè)界關(guān)注的熱點(diǎn)[5],目前存在很多有挑戰(zhàn)性的內(nèi)容沒有被完全解決,具體體現(xiàn)在資源、用戶、內(nèi)容三個(gè)方面。
2.1.1 不均勻性
小型基站(Small Base Station)[6]、毫微微蜂窩(femto-cell)[7]等蜂窩網(wǎng)絡(luò)資源以及機(jī)頂盒[8]、家庭智能路由器[9]等用戶資源作為靠近用戶的“最后一公里”資源,由于受運(yùn)營商部署更新和用戶自主安裝的限制,邊緣網(wǎng)絡(luò)資源呈現(xiàn)出地域分布分散、資源密度不均、缺乏統(tǒng)一管理規(guī)劃等特征。網(wǎng)絡(luò)狀態(tài)動(dòng)態(tài)時(shí)變,邊緣可用網(wǎng)絡(luò)資源也呈現(xiàn)動(dòng)態(tài)變化特性。
2.1.2 多樣性
邊緣節(jié)點(diǎn)具有不同的網(wǎng)絡(luò)接入和計(jì)算存儲(chǔ)資源,且受用戶在線時(shí)間影響,導(dǎo)致邊緣節(jié)點(diǎn)資源異構(gòu)多樣,對(duì)于實(shí)現(xiàn)高效的邊緣資源調(diào)度,以及支持高質(zhì)量、低延遲的視頻傳輸與分發(fā)帶來嚴(yán)峻的挑戰(zhàn)。
2.2.1 觀看行為差異
用戶的視頻觀看行為直接決定視頻傳送的方式,不同的觀看行為決定內(nèi)容復(fù)制和傳輸策略。同時(shí),有研究表明,網(wǎng)絡(luò)接入方式(WiFi,3G/4G)對(duì)于用戶行為(如觀看時(shí)長(zhǎng))等產(chǎn)生一定的影響[10]。相比3G/4G用戶,通過WiFi觀看視頻的用戶會(huì)觀看更多視頻,并且平均觀看時(shí)間更長(zhǎng)。因此,邊緣內(nèi)容傳送策略需要考慮用戶行為的差異性。
2.2.2 區(qū)域偏好差異
不同地理區(qū)域存在商業(yè)屬性和該區(qū)域用戶職業(yè)、年齡、文化程度的不同,不同區(qū)域的視頻流行度呈現(xiàn)出較高的差異性。單純基于全局流行度部署和復(fù)制視頻內(nèi)容到網(wǎng)絡(luò)邊緣節(jié)點(diǎn),將降低整個(gè)系統(tǒng)的效率。低訪問量視頻內(nèi)容的邊緣復(fù)制,導(dǎo)致用戶請(qǐng)求被重定向到中央服務(wù)器,造成服務(wù)器負(fù)載增加,用戶延遲增加引起體驗(yàn)下降,同時(shí)內(nèi)容復(fù)制開銷帶來網(wǎng)絡(luò)資源浪費(fèi)。
2.2.3 小群體特性
利用邊緣設(shè)備分發(fā)視頻內(nèi)容,單個(gè)邊緣節(jié)點(diǎn)服務(wù)的用戶數(shù)量遠(yuǎn)遠(yuǎn)少于全局用戶數(shù),導(dǎo)致邊緣網(wǎng)絡(luò)用戶請(qǐng)求、用戶行為等數(shù)據(jù)更加稀疏,隨機(jī)性更大。傳統(tǒng)的基于內(nèi)容流行度的內(nèi)容復(fù)制模式難以刻畫小群體用戶特征。圖1顯示了在不同區(qū)域劃分粒度下區(qū)域間內(nèi)容流行度的平均相似性,從圖中可以看出相似性系數(shù)隨著區(qū)域不斷細(xì)分而變小,表明小區(qū)域之間用戶視頻偏好差異性大的特征。這種小群體行為特性需要實(shí)時(shí)預(yù)測(cè)小群體行為下的視頻內(nèi)容流行度及相應(yīng)的內(nèi)容邊緣復(fù)制策略。
圖1 不同劃分粒度下區(qū)域內(nèi)容相似指數(shù)熱度圖Fig.1 Content similarity between neighbor regions under different geography granularity
邊緣計(jì)算設(shè)備因具有存儲(chǔ)功能,可以被用來緩存視頻內(nèi)容。通過邊緣緩存來進(jìn)行視頻分發(fā)有以下好處:第一,節(jié)省核心網(wǎng)絡(luò)帶寬;第二,降低用戶訪問內(nèi)容的延遲。由于多媒體視頻內(nèi)容(如實(shí)時(shí)互動(dòng)直播)的形式對(duì)于延遲要求越來越高,同時(shí)對(duì)帶寬要求也越來越高(如超高清視頻),邊緣緩存可以很好地滿足這兩個(gè)要求。然而,因?yàn)橛脩魧?duì)內(nèi)容請(qǐng)求的模式具有高度動(dòng)態(tài)性,如何準(zhǔn)確預(yù)測(cè)內(nèi)容請(qǐng)求模式并針對(duì)性地做邊緣緩存策略就成為很大的挑戰(zhàn)。具體地,用戶在不同狀態(tài)和不同地區(qū)請(qǐng)求視頻的類型會(huì)有很大的異構(gòu)性,如果沒有對(duì)用戶群體行為的精確刻畫,將導(dǎo)致邊緣緩存資源很大的浪費(fèi)。另外,因?yàn)檫吘壒?jié)點(diǎn)之間有網(wǎng)絡(luò)連接,如何在大量互聯(lián)的邊緣節(jié)點(diǎn)之間形成高效的協(xié)同就成為另一個(gè)重要問題。舉例來說,如果一個(gè)熱門視頻內(nèi)容在區(qū)域內(nèi)的大多數(shù)邊緣節(jié)點(diǎn)上都進(jìn)行了緩存,由于邊緣節(jié)點(diǎn)的互聯(lián)性,會(huì)造成內(nèi)容緩存的大量冗余,即導(dǎo)致資源浪費(fèi)。
與CDN 和云計(jì)算相比,邊緣計(jì)算架構(gòu)[11]強(qiáng)調(diào)在最接近終端用戶的地方,部署密集并且地理位置廣泛分布的,擁有存儲(chǔ)、計(jì)算和網(wǎng)絡(luò)資源的邊緣服務(wù)節(jié)點(diǎn)“最近”服務(wù)用戶,以節(jié)省骨干網(wǎng)絡(luò)帶寬,降低服務(wù)延遲,提供更好的服務(wù)質(zhì)量(Quality of Service,QoS)。目前主要有兩類邊緣設(shè)施資源:
① 移動(dòng)邊緣計(jì)算(Mobile Edge Computing,MEC)是一項(xiàng)新技術(shù),已經(jīng)在歐洲電信標(biāo)準(zhǔn)協(xié)會(huì)(European Telecommunications Standards Institute,ETSI)的行業(yè)規(guī)范組中進(jìn)行標(biāo)準(zhǔn)化[12]。移動(dòng)邊緣計(jì)算節(jié)點(diǎn)部署在移動(dòng)網(wǎng)絡(luò)邊緣的無線接入網(wǎng)絡(luò)(Radio Access Network,RAN)內(nèi),與5G基站直連,可以為附近用戶提供互聯(lián)網(wǎng)服務(wù)環(huán)境和云計(jì)算服務(wù)。AT&T、華為等網(wǎng)絡(luò)基礎(chǔ)設(shè)施服務(wù)提供商均宣布在2018 年開始逐步商業(yè)化運(yùn)營此類5G基站。
② 擁有存儲(chǔ)計(jì)算資源的定制化邊緣智能設(shè)備,例如,國內(nèi)在線視頻服務(wù)提供商優(yōu)酷和CDN提供商ChinaCache合作推出了可在用戶家庭進(jìn)行內(nèi)容緩存和分發(fā)的優(yōu)酷路由寶,內(nèi)容提供商迅雷同樣通過激勵(lì)用戶家庭部署專屬設(shè)備(迅雷水晶賺錢寶)輔助其內(nèi)容分發(fā)。
邊緣節(jié)點(diǎn)的引入,為視頻內(nèi)容分發(fā)系統(tǒng)設(shè)計(jì)帶來了新的思路,基于邊緣計(jì)算的視頻分發(fā)體系架構(gòu)主要包括面向“最后一公里”的邊緣分發(fā)網(wǎng)絡(luò)、面向“第一公里”的內(nèi)容收集網(wǎng)絡(luò)以及云-邊協(xié)同的計(jì)算遷移與內(nèi)容分發(fā)架構(gòu)3個(gè)組成部分,如圖2所示。
圖2 基于邊緣計(jì)算的視頻分發(fā)體系架構(gòu)Fig.2 Architecture of edge computing based video delivery
網(wǎng)絡(luò)最后一跳的質(zhì)量通常決定了用戶感知到的服務(wù)質(zhì)量,面向“最后一公里”的邊緣分發(fā)網(wǎng)絡(luò)利用邊緣節(jié)點(diǎn)的緩存能力,將內(nèi)容部署到更靠近用戶的邊緣設(shè)備上進(jìn)行緩存和分發(fā),方便用戶就近獲取內(nèi)容,提升用戶體驗(yàn)。邊緣內(nèi)容分發(fā)需要研究面向邊緣節(jié)點(diǎn)的內(nèi)容復(fù)制和緩存替換策略。
內(nèi)容復(fù)制策略主要解決在邊緣節(jié)點(diǎn)上緩存哪些內(nèi)容、在什么時(shí)候緩存內(nèi)容以及如何將緩存內(nèi)容部署在邊緣節(jié)點(diǎn)的問題。按照內(nèi)容部署方式的不同,邊緣節(jié)點(diǎn)上的內(nèi)容復(fù)制策略可以分為內(nèi)容推送和內(nèi)容預(yù)取。
緩存替換策略解決在何時(shí)對(duì)本地緩存中的內(nèi)容進(jìn)行替換,以及替換哪些內(nèi)容的問題。實(shí)際系統(tǒng)中廣泛使用最近最少使用算法(Least Recently Used,LRU),具有實(shí)現(xiàn)簡(jiǎn)單、運(yùn)行高效的優(yōu)點(diǎn),但沒有考慮內(nèi)容流行度等影響用戶訪問模式的因素,因此緩存命中率較低,需要針對(duì)邊緣內(nèi)容訪問特性研究新的替換策略。
Twitch TV 和映客等移動(dòng)直播服務(wù)近年來已成為重要的網(wǎng)絡(luò)視頻應(yīng)用。這種流媒體服務(wù)中的視頻傳輸包括兩個(gè)步驟:① 視頻上傳,即視頻主播生成的視頻流(即直播間)被上傳到服務(wù)器,稱之為網(wǎng)絡(luò)傳輸?shù)摹暗谝还铩保虎?視頻分發(fā),即視頻流從服務(wù)器傳輸?shù)街辈ラg中的觀眾。今天的移動(dòng)直播服務(wù)通常使用傳統(tǒng)的CDN 解決方案來解決視頻分發(fā)問題,而很少關(guān)注第①步中提高視頻上傳質(zhì)量的問題。通過對(duì)大規(guī)模移動(dòng)直播上傳的網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行分析發(fā)現(xiàn),“第一公里”的網(wǎng)絡(luò)質(zhì)量會(huì)極大地影響用戶觀看體驗(yàn),如圖3和圖4所示。直播過程中17%的大規(guī)模用戶卡頓是由主播上傳鏈路故障導(dǎo)致,進(jìn)而引發(fā)大量用戶退出直播。
圖3 現(xiàn)有移動(dòng)直播視頻分發(fā)架構(gòu)Fig.3 Existing mobile live video broadcasting distribution architecture
因此,需要針對(duì)現(xiàn)有系統(tǒng)未考慮主播上傳網(wǎng)絡(luò)優(yōu)化的缺陷,研究基于邊緣中繼構(gòu)建面向“第一公里”的內(nèi)容收集網(wǎng)絡(luò)和邊緣網(wǎng)絡(luò)傳輸優(yōu)化策略,從而有效降低用戶訪問延遲,提升觀看體驗(yàn)。
圖4 用戶體驗(yàn)受網(wǎng)絡(luò)故障影響統(tǒng)計(jì)結(jié)果Fig.4 Statistics of user experience impacted by network failure
支持普通用戶做為內(nèi)容生產(chǎn)者的移動(dòng)直播服務(wù)正在日益流行。在這一新型的服務(wù)平臺(tái)中,觀眾與內(nèi)容生產(chǎn)者的實(shí)時(shí)互動(dòng)使較高的內(nèi)容傳輸延遲不可容忍;同時(shí),由邊緣用戶產(chǎn)生的海量異質(zhì)視頻源帶來了龐大的內(nèi)容轉(zhuǎn)碼和分發(fā)需求。現(xiàn)有基于中央云的視頻轉(zhuǎn)碼與分發(fā)系統(tǒng)架構(gòu)可能存在3個(gè)關(guān)鍵缺陷:
① 運(yùn)營成本過高:同時(shí)在線主播數(shù)量的快速增長(zhǎng)甚至使服務(wù)提供商無法承擔(dān)基于核心云的系統(tǒng)運(yùn)營成本。但在實(shí)際系統(tǒng)運(yùn)行過程中,作者通過大規(guī)模數(shù)據(jù)測(cè)量揭示了移動(dòng)直播平臺(tái)中絕大部分主播都是本地流行且極其活躍的,同時(shí)這些本地流行的主播占用了核心網(wǎng)絡(luò)中很大一部分計(jì)算和帶寬資源。例如,大多數(shù)觀眾和主播在同一地區(qū)的直播內(nèi)容消耗了45% 的計(jì)算資源,如圖5和圖6所示。
② 無法保證低直播延遲實(shí)時(shí)交互:在基于核心云的架構(gòu)中,由于服務(wù)部署或運(yùn)營預(yù)算限制,服務(wù)提供商為內(nèi)容的攝取和轉(zhuǎn)碼租用的物理服務(wù)器有限,很可能遠(yuǎn)離內(nèi)容生產(chǎn)者,這不可避免地產(chǎn)生更高和不穩(wěn)定的內(nèi)容傳輸延遲。
③ 加重骨干網(wǎng)傳輸負(fù)擔(dān):在基于核心云的系統(tǒng)架構(gòu)中,邊緣產(chǎn)生的直播內(nèi)容將跨約網(wǎng)絡(luò)到達(dá)遠(yuǎn)端的云服務(wù)器,經(jīng)過云轉(zhuǎn)碼后再通過CDN 分發(fā)給邊緣用戶,大量的數(shù)據(jù)密集型視頻流量分發(fā)需求極大地加重了骨干網(wǎng)絡(luò)和CDN 的內(nèi)容傳輸負(fù)擔(dān)。
圖5 現(xiàn)有基于核心云的視頻轉(zhuǎn)碼分發(fā)系統(tǒng)架構(gòu)Fig.5 Existing video transcoding distribution system architecture based on core cloud
圖6 本地計(jì)算與帶寬消耗占比Fig.6 Proportion of local computing and bandwidth consumption
針對(duì)上述局限,需要尋求更具成本效益的低延遲視頻分發(fā)解決方案來更靈活有效地服務(wù)更多的內(nèi)容生產(chǎn)者。邊緣計(jì)算輔助的內(nèi)容分發(fā)系統(tǒng)將邊緣內(nèi)容生產(chǎn)者生成的視頻推送到有閑置計(jì)算資源的邊緣設(shè)備上進(jìn)行轉(zhuǎn)碼任務(wù),能夠降低遠(yuǎn)距離核心網(wǎng)絡(luò)云計(jì)算資源的租用成本。新的架構(gòu)除了要考慮傳統(tǒng)視頻服務(wù)中觀眾的內(nèi)容訪問,還要考慮面向大規(guī)模異構(gòu)內(nèi)容生產(chǎn)者的計(jì)算資源調(diào)度,同時(shí)必須考慮為內(nèi)容轉(zhuǎn)碼的資源位置,以減少端到端的整體內(nèi)容傳輸延遲。
針對(duì)邊緣緩存復(fù)制,Ma等[13]在真實(shí)數(shù)據(jù)集上開展了數(shù)據(jù)測(cè)量工作來證明邊緣緩存的有效性,并且基于測(cè)量結(jié)果設(shè)計(jì)了一個(gè)緩存策略。Leconte等[14]調(diào)研了小區(qū)域緩存的挑戰(zhàn),并即時(shí)估計(jì)內(nèi)容流行度以及從小樣本中推斷流行內(nèi)容,設(shè)計(jì)了基于壽命的閾值策略來估計(jì)動(dòng)態(tài)內(nèi)容流行度。Liu等[15]通過契約理論來優(yōu)化緩存服務(wù)中服務(wù)提供商、內(nèi)容提供商和用戶的收益。Poularakis等[16]設(shè)計(jì)了一種近似算法,以最大化小小區(qū)服務(wù)的內(nèi)容請(qǐng)求。Li等[17]介紹了一個(gè)小基站之間有效的協(xié)同緩存機(jī)制。針對(duì)邊緣緩存替換,目前實(shí)際系統(tǒng)中大多數(shù)部署的緩存算法仍然是FIFO,LFU,LRU及其變體。針對(duì)LRU等算法的不足,Einziger等[18]提出了根據(jù)緩存中內(nèi)容的實(shí)時(shí)流行度來確定被替換內(nèi)容的策略,然而其沒有考慮內(nèi)容流行度的變化趨勢(shì)。Li等[19]提出了一種動(dòng)態(tài)流行度驅(qū)動(dòng)的緩存替換策略,通過在線學(xué)習(xí),對(duì)每個(gè)被請(qǐng)求內(nèi)容的流行度做出預(yù)測(cè),并根據(jù)預(yù)測(cè)結(jié)果替換本地緩存中流行度最低的內(nèi)容。Sengupta 和Blasco[20-21]使用多臂賭博機(jī)方法來決定小基站覆蓋范圍中的緩存替換策略。
本文通過大規(guī)模數(shù)據(jù)測(cè)量分析,結(jié)合區(qū)域性內(nèi)容流行差異以及邊緣節(jié)點(diǎn)地理分布特性,提出了邊緣節(jié)點(diǎn)內(nèi)容緩存與替換策略[22]。
4.1.1 基于區(qū)域劃分的邊緣節(jié)點(diǎn)緩存復(fù)制策略
面對(duì)大量分散的邊緣節(jié)點(diǎn),內(nèi)容緩存復(fù)制策略需要綜合考慮用戶體驗(yàn)和系統(tǒng)開銷之間的平衡。為達(dá)到低時(shí)延、高帶寬的整體用戶體驗(yàn),需要盡可能多地從服務(wù)器復(fù)制內(nèi)容到邊緣節(jié)點(diǎn)上,以保證大部分用戶請(qǐng)求能夠被邊緣節(jié)點(diǎn)服務(wù);但是,從服務(wù)器復(fù)制內(nèi)容到邊緣節(jié)點(diǎn)將產(chǎn)生流量開銷,調(diào)度粒度過細(xì)會(huì)導(dǎo)致重復(fù)的內(nèi)容復(fù)制到更多邊緣節(jié)點(diǎn)上,增大網(wǎng)絡(luò)負(fù)載。
因此本文提出了基于區(qū)域劃分的邊緣節(jié)點(diǎn)緩存復(fù)制策略,包括邊緣資源按需部署、資源全局調(diào)度和內(nèi)容協(xié)同復(fù)制3個(gè)主要模塊。基于用戶請(qǐng)求強(qiáng)度感知的邊緣資源按需部署策略,綜合考慮部署成本和用戶體驗(yàn)兩個(gè)因素,將邊緣節(jié)點(diǎn)部署形式化為設(shè)施放置問題(Facility Location Problem),以最小化節(jié)點(diǎn)部署和用戶請(qǐng)求分配總開銷為優(yōu)化目標(biāo)進(jìn)行啟發(fā)式求解,基于邊緣節(jié)點(diǎn)緩存的內(nèi)容分發(fā)架構(gòu)如圖7所示。 基于區(qū)域劃分的調(diào)度算法,針對(duì)已部署邊緣節(jié)點(diǎn)的組織管理調(diào)度,為了同時(shí)滿足用戶體驗(yàn)的提升并減少邊緣復(fù)制開銷,將每個(gè)區(qū)域的邊緣節(jié)點(diǎn)作為一個(gè)整體,進(jìn)行一次內(nèi)容復(fù)制以消除冗余傳輸,采用類Voronoi區(qū)域分割算法求解用戶體驗(yàn)和復(fù)制開銷聯(lián)合優(yōu)化問題。如圖8所示,基于區(qū)域用戶請(qǐng)求預(yù)測(cè)的主動(dòng)內(nèi)容復(fù)制策略,在決策不同區(qū)域所需復(fù)制內(nèi)容的同時(shí),考慮服務(wù)器帶寬狀態(tài)及相鄰區(qū)域的內(nèi)容流行相似性,實(shí)現(xiàn)峰值負(fù)載轉(zhuǎn)移和網(wǎng)絡(luò)邊緣區(qū)域間內(nèi)容協(xié)同復(fù)制,降低核心網(wǎng)絡(luò)峰值負(fù)載38%,提升用戶體驗(yàn)40%。
圖7 基于邊緣節(jié)點(diǎn)緩存的內(nèi)容分發(fā)架構(gòu)Fig.7 Content distribution architecture based on edge node buffering
圖8 用戶請(qǐng)求匹配的區(qū)域資源劃分Fig.8 User-request matched regional resource partition
4.1.2 基于深度長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)的緩存替換
由數(shù)據(jù)分析可知,現(xiàn)有緩存替換算法存在預(yù)測(cè)準(zhǔn)確率不高、跨數(shù)據(jù)集性能不穩(wěn)定的問題。研究發(fā)現(xiàn),現(xiàn)有的基于規(guī)則的緩存替換策略和基于人工特征提取的緩存替換策略都過度依賴人工干預(yù)或者難以應(yīng)對(duì)變化的內(nèi)容訪問模式?;诖?,本文提出了基于深度長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)模型的緩存替換算法(DeepCache),可以在無人工干預(yù)和數(shù)據(jù)預(yù)處理的情況下從內(nèi)容請(qǐng)求序列中自動(dòng)學(xué)習(xí)緩存策略。緩存替換LSTM網(wǎng)絡(luò)結(jié)構(gòu)如圖9所示,邊緣節(jié)點(diǎn)緩存替換系統(tǒng)結(jié)構(gòu)如圖10所示。經(jīng)過精心設(shè)計(jì)的神經(jīng)網(wǎng)絡(luò)模型采用近似的訓(xùn)練方法來逼近實(shí)際情況,通過異步訓(xùn)練機(jī)制解決模型訓(xùn)練計(jì)算量過大問題,為實(shí)際中動(dòng)態(tài)的內(nèi)容庫提供了相應(yīng)的解決方案。DeepCache是一種基于深度神經(jīng)網(wǎng)絡(luò)的緩存替換策略,可以從請(qǐng)求序列中實(shí)時(shí)自動(dòng)學(xué)習(xí)緩存策略,而無需使用任何數(shù)據(jù)預(yù)處理或特征工程。鑒于短期和長(zhǎng)期視頻訪問模式的動(dòng)態(tài),DeepCache 采用深度LSTM 網(wǎng)絡(luò)[23],這是一種具有記憶結(jié)構(gòu)的高級(jí)神經(jīng)網(wǎng)絡(luò)架構(gòu),用于表征序列模式。實(shí)驗(yàn)表明,這種方法可以將單個(gè)BS的緩存命中率提高20%~30%。
圖9 緩存替換LSTM網(wǎng)絡(luò)結(jié)構(gòu)Fig.9 Buffer replacing LSTM network architecture
圖10 邊緣節(jié)點(diǎn)緩存替換系統(tǒng)結(jié)構(gòu)Fig.10 Edge node buffer replacing system structure
邊緣節(jié)點(diǎn)主動(dòng)內(nèi)容預(yù)取的目的是支持用戶就近訪問視頻內(nèi)容,并降低峰值時(shí)段視頻內(nèi)容分發(fā)的網(wǎng)絡(luò)資源需求。邊緣節(jié)點(diǎn)內(nèi)容預(yù)取需要考慮兩方面動(dòng)態(tài)因素:① 預(yù)取哪些視頻。區(qū)域用戶視頻訪問行為具有動(dòng)態(tài)性,需要選擇用戶后續(xù)最可能訪問的視頻進(jìn)行預(yù)取,以提升命中率。② 何時(shí)預(yù)取。內(nèi)容預(yù)取需要消耗網(wǎng)絡(luò)資源,增加服務(wù)器負(fù)載。為減少服務(wù)器負(fù)載峰值,需要控制視頻預(yù)取操作隨著服務(wù)器負(fù)載變化動(dòng)態(tài)調(diào)整,在空閑時(shí)期進(jìn)行預(yù)取。
綜合考慮服務(wù)器負(fù)載動(dòng)態(tài)變化規(guī)律以及不同用戶的視頻觀看模式,針對(duì)具有時(shí)序特性的連續(xù)劇視頻內(nèi)容,我們提出基于強(qiáng)化學(xué)習(xí)的用戶跳轉(zhuǎn)行為預(yù)測(cè)與內(nèi)容預(yù)取算法,將預(yù)取視頻個(gè)數(shù)以及預(yù)取視頻內(nèi)容的選擇抽象為馬爾科夫決策優(yōu)化問題,基于系統(tǒng)反饋和服務(wù)器負(fù)載的變化,動(dòng)態(tài)地學(xué)習(xí)、調(diào)整最優(yōu)預(yù)取操作,實(shí)現(xiàn)視頻分發(fā)所涉及的資源開銷和用戶視頻觀看體驗(yàn)的聯(lián)合優(yōu)化;針對(duì)普通視頻應(yīng)用場(chǎng)景,通過建立用戶-視頻-時(shí)間三個(gè)維度的張量模型和基于視頻相關(guān)文本信息(標(biāo)題、類型、簡(jiǎn)介、角色等)的話題模型,對(duì)視頻內(nèi)容流行度進(jìn)行預(yù)測(cè),決策不同用戶群組在不同時(shí)間段的視頻預(yù)取操作。連續(xù)兩次視頻觀看之間的劇集差異統(tǒng)計(jì)如圖11所示,緩存預(yù)取系統(tǒng)架構(gòu)如圖12所示。
圖11 連續(xù)兩次視頻觀看之間的劇集差異統(tǒng)計(jì)Fig.11 Episode difference statistics between 2 consecutive video observation
圖12 緩存預(yù)取系統(tǒng)架構(gòu)Fig.12 Buffer preliminary access system architecture
基于對(duì)直播視頻服務(wù)中海量主播的行為數(shù)據(jù)與網(wǎng)絡(luò)傳輸數(shù)據(jù)的分析,本文提出了基于邊緣網(wǎng)絡(luò)傳輸?shù)闹辈ヒ曨l分發(fā)策略。通過對(duì)有代表性的直播視頻服務(wù)提供商的直播會(huì)話數(shù)據(jù)、主播上傳日志、觀眾數(shù)據(jù)、觀眾下載日志進(jìn)行數(shù)據(jù)分析,結(jié)果反映了主播的上傳網(wǎng)絡(luò)狀況會(huì)嚴(yán)重影響觀眾的視頻觀看體驗(yàn)。進(jìn)一步分析引入邊緣網(wǎng)絡(luò)的情況之后,結(jié)果表明通過邊緣網(wǎng)絡(luò)進(jìn)行主播上傳視頻流收集能夠有效提高主播上傳網(wǎng)絡(luò)的性能指標(biāo)。因此,本文提出邊緣網(wǎng)絡(luò)輔助的直播視頻分發(fā)框架,基于邊緣節(jié)點(diǎn)中繼的內(nèi)容收集網(wǎng)絡(luò)架構(gòu)如圖13所示。一方面,根據(jù)網(wǎng)絡(luò)測(cè)量的性能和邊緣網(wǎng)絡(luò)資源的約束,進(jìn)行系統(tǒng)級(jí)的優(yōu)化調(diào)度;另一方面,為了平衡全局的優(yōu)化調(diào)度與每個(gè)主播的及時(shí)響應(yīng),采用了中心式和分布式聯(lián)合的混合式邊緣網(wǎng)絡(luò)調(diào)度機(jī)制。在集中式中繼分配問題中本文實(shí)現(xiàn)了多目標(biāo)優(yōu)化,即低延遲、低丟包率和足夠的帶寬;使用輪詢技術(shù)設(shè)計(jì)近似算法,實(shí)現(xiàn)了多項(xiàng)式時(shí)間的計(jì)算;在動(dòng)態(tài)邊緣中繼分配策略中使用基于多臂賭博機(jī)的方法進(jìn)行直播間網(wǎng)絡(luò)分配的實(shí)時(shí)決策,該方法會(huì)根據(jù)歷史信息持續(xù)決策以最大化累積的獎(jiǎng)勵(lì)。使用該混合優(yōu)化方法之后,觀眾的觀看體驗(yàn)得到大幅提升。實(shí)際系統(tǒng)數(shù)據(jù)分析顯示,該設(shè)計(jì)可以將邊緣網(wǎng)絡(luò)的良好性能用于主播上傳網(wǎng)絡(luò)優(yōu)化。
圖13 基于邊緣節(jié)點(diǎn)中繼的內(nèi)容收集網(wǎng)絡(luò)架構(gòu)Fig.13 Edge relay based content harvest network
以映客直播為代表應(yīng)用,通過對(duì)內(nèi)容生產(chǎn)者的直播日志、觀眾的觀看日志以及社交數(shù)據(jù)進(jìn)行細(xì)致分析,由測(cè)量結(jié)果可知,內(nèi)容生產(chǎn)者背景、直播內(nèi)容類型、追隨者分布等特征強(qiáng)烈地影響觀眾的內(nèi)容觀看偏好,使內(nèi)容的地域流行分布具有可預(yù)測(cè)性。進(jìn)一步分析了不同流行特性的內(nèi)容對(duì)系統(tǒng)的帶寬和計(jì)算資源消耗。結(jié)果表明,很大一部分局部流行且活躍的內(nèi)容生產(chǎn)者正在消耗相當(dāng)多的核心云系統(tǒng)資源,并且將大量邊緣流行的內(nèi)容上傳到遠(yuǎn)端云服務(wù)器再分發(fā)回邊緣會(huì)影響觀眾的整體體驗(yàn)。
本文提出了邊緣計(jì)算輔助的移動(dòng)直播框架,如圖14和圖15所示,利用豐富的邊緣計(jì)算資源協(xié)助內(nèi)容攝取和實(shí)時(shí)轉(zhuǎn)碼滿足大量異構(gòu)且地理廣泛分布的內(nèi)容生產(chǎn)者和內(nèi)容消費(fèi)者的需求,從而有很大的潛力來解決系統(tǒng)有效性和可擴(kuò)展性方面的挑戰(zhàn)。一方面,通過預(yù)測(cè)內(nèi)容流行性,進(jìn)行內(nèi)容生產(chǎn)者的快速調(diào)度;另一方面,通過綜合考慮端到端內(nèi)容傳輸延遲和系統(tǒng)運(yùn)營成本,基于穩(wěn)定匹配策略進(jìn)行用戶體驗(yàn)優(yōu)先的計(jì)算資源分配,同時(shí)考慮負(fù)載均衡問題進(jìn)行內(nèi)容生產(chǎn)者遷移,提升系統(tǒng)整體性能。數(shù)據(jù)驅(qū)動(dòng)的評(píng)估實(shí)驗(yàn)表明,該設(shè)計(jì)可以高效地將內(nèi)容攝取和轉(zhuǎn)碼任務(wù)分流給邊緣計(jì)算資源,從而提供靈活且經(jīng)濟(jì)高效的系統(tǒng)部署。
圖14 邊緣計(jì)算輔助的移動(dòng)直播框架Fig.14 Edge aided mobilelivecast architecture
圖15 系統(tǒng)處理流程Fig.15 System processing flow
本文重點(diǎn)研究了在視頻點(diǎn)播、移動(dòng)視頻直播、互動(dòng)視頻直播迅速發(fā)展,邊緣計(jì)算技術(shù)逐漸得以應(yīng)用的背景下,如何通過邊緣計(jì)算技術(shù)來進(jìn)行多種類型的網(wǎng)絡(luò)視頻內(nèi)容分發(fā),目標(biāo)在于提高觀眾觀看體驗(yàn),降低系統(tǒng)開銷,挖掘并服務(wù)觀眾的個(gè)性化觀看需求。未來可以進(jìn)一步開展的工作包括:
① 本文以視頻點(diǎn)播、視頻直播和互動(dòng)直播為研究對(duì)象,這類視頻已經(jīng)占據(jù)了當(dāng)前網(wǎng)絡(luò)視頻的絕大多數(shù)或正在爆發(fā)式地增長(zhǎng)。在未來的網(wǎng)絡(luò)視頻服務(wù)發(fā)展中,360度視頻、VR 視頻等將成為新興的視頻內(nèi)容形式。如何在本文的研究框架、測(cè)量手段、分發(fā)方法基礎(chǔ)上,對(duì)這些新興多媒體內(nèi)容進(jìn)行分發(fā)優(yōu)化等將會(huì)是今后重要的研究?jī)?nèi)容。
② 作者提出的若干方法初步驗(yàn)證了機(jī)器學(xué)習(xí)方法在基于邊緣計(jì)算的視頻內(nèi)容分發(fā)網(wǎng)絡(luò)設(shè)計(jì)和架構(gòu)優(yōu)化的可行性。面對(duì)日益復(fù)雜的異構(gòu)網(wǎng)絡(luò)環(huán)境、應(yīng)用需求差異、用戶行為模式,如何在云-邊融合的架構(gòu)下引入新的人工智能方法,實(shí)現(xiàn)具有分布式、自學(xué)習(xí)、自調(diào)整能力的智能分發(fā)網(wǎng)絡(luò),將成為未來高效視頻內(nèi)容分發(fā)的關(guān)鍵技術(shù)。