国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多個(gè)網(wǎng)絡(luò)接口的DASH系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2017-08-12 12:22周傳杰徐躍東
關(guān)鍵詞:序號(hào)鏈路客戶端

周傳杰 陳 哲 張 旭 徐躍東

1(復(fù)旦大學(xué)計(jì)算機(jī)科學(xué)技術(shù)學(xué)院 上海 201203) 2(網(wǎng)絡(luò)信息安全審計(jì)與監(jiān)控教育部工程研究中心 上海 201203) 3(復(fù)旦大學(xué)電子工程系 上海 200433)

?

基于多個(gè)網(wǎng)絡(luò)接口的DASH系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

周傳杰1,2陳 哲1,2張 旭1,2徐躍東3

1(復(fù)旦大學(xué)計(jì)算機(jī)科學(xué)技術(shù)學(xué)院 上海 201203)2(網(wǎng)絡(luò)信息安全審計(jì)與監(jiān)控教育部工程研究中心 上海 201203)3(復(fù)旦大學(xué)電子工程系 上海 200433)

對基于HTTP協(xié)議的動(dòng)態(tài)自適應(yīng)流媒體來說,客戶端可以根據(jù)不同的網(wǎng)絡(luò)狀況自適應(yīng)地調(diào)整請求的視頻比特率。當(dāng)前DASH的研究主要集中于單鏈路的比特率切換算法的設(shè)計(jì)。而考慮到移動(dòng)終端擁有多個(gè)網(wǎng)絡(luò)接口以及短視頻的播放流行度,開發(fā)一個(gè)基于LTE/Wi-Fi的多接口DASH系統(tǒng)——PASM(Predictive Adaptive Streaming system over LTE/Wi-Fi Multiple access networks)。PASM從兩個(gè)互補(bǔ)方面提高了DASH性能,一方面,減少了由于兩條鏈路異構(gòu)性造成的視頻塊的亂序到達(dá),充分利用兩條鏈路的帶寬之和進(jìn)行DASH傳輸,提高了請求視頻的質(zhì)量;另一方面,在剩余請求視頻時(shí)長不多時(shí),采用一種更加激進(jìn)的視頻比特率請求算法,減少了帶寬的不充分利用,提高了視頻的平均比特率。實(shí)驗(yàn)結(jié)果表明,在各種鏈路帶寬差異的網(wǎng)絡(luò)下,PASM保證了視頻比特率的平滑切換,同時(shí)提高了視頻平均比特率。

DASH 多接口網(wǎng)絡(luò) 亂序

0 引 言

對于當(dāng)前的網(wǎng)絡(luò)接入商和內(nèi)容服務(wù)商來說,如何提供令人滿意的流媒體服務(wù)質(zhì)量是一件極具挑戰(zhàn)性的工作。其主要困難在于流媒體在傳輸過程中,由于無線移動(dòng)網(wǎng)絡(luò)的信號(hào)衰落、干擾和擁塞的影響,吞吐量會(huì)不斷變化。這促使了流媒體服務(wù)從單一比特率的服務(wù)向基于HTTP協(xié)議的動(dòng)態(tài)自適應(yīng)流媒體(DASH)轉(zhuǎn)變。DASH是一種客戶端驅(qū)動(dòng)的流媒體技術(shù),服務(wù)端不需要復(fù)雜的體系結(jié)構(gòu)。DASH將同樣一個(gè)視頻編碼成多個(gè)版本的比特率,并將每個(gè)版本無縫分割成許多細(xì)小的視頻片段(chunk)。片段的長度通常在2~10秒,客戶端通過感知網(wǎng)絡(luò)條件請求合適比特率的視頻段,從而較好地避免了視頻播放停頓,并提供了相對較高的視頻平均比特率。

近年來,DASH已經(jīng)有了商業(yè)化的應(yīng)用,例如Akamai的HD Streaming,Adobe的OSMF以及Netflix等。這些應(yīng)用的核心部分就是比特率切換算法的設(shè)計(jì),即客戶端動(dòng)態(tài)調(diào)整請求視頻塊的比特率策略設(shè)計(jì)。文獻(xiàn)[3]的作者對多個(gè)經(jīng)典的DASH系統(tǒng)在不同的網(wǎng)絡(luò)變化下進(jìn)行測量和分析,指出了這些系統(tǒng)在比特率切換算法設(shè)計(jì)上的局限性。并且他們還在文獻(xiàn)[2]中進(jìn)行了一系列的實(shí)驗(yàn)并指出了DASH傳輸過程中造成比特率波動(dòng)的根本原因。之前的研究傾向于利用控制或決策理論進(jìn)行高級的比特率控制器設(shè)計(jì),比如文獻(xiàn)[7]通過設(shè)計(jì)比例積分微分(PID)控制器來維持客戶端緩沖隊(duì)列長度的穩(wěn)定,以此獲得更好的用戶體驗(yàn)(QoE)。在文獻(xiàn)[7]的基礎(chǔ)上,文獻(xiàn)[4,9]的作者分別使用了PI控制器和PD控制器對 DASH 系統(tǒng)性能進(jìn)一步優(yōu)化。文獻(xiàn)[11]的作者采用MDP模型進(jìn)行了比特率切換算法設(shè)計(jì),表現(xiàn)了不錯(cuò)的性能。文獻(xiàn)[12]的作者則是利用TCP協(xié)議中AIMD思想設(shè)計(jì)了名為PANDA的比特率切換算法。文獻(xiàn)[13]的作者對DASH的QoE進(jìn)行了公式化,同時(shí)利用MPC控制器設(shè)計(jì)了比特率切換算法。近年來,文獻(xiàn)[6]采用了一種更加簡單有效的比例控制器,只根據(jù)緩沖隊(duì)列長度線性決定請求的視頻比特率。而在MobiCom2015上,針對應(yīng)用層上觀察到LTE網(wǎng)絡(luò)帶寬波動(dòng)的隨機(jī)性,文獻(xiàn)[14]的作者直接根據(jù)LTE網(wǎng)絡(luò)物理層資源塊的分配情況做測量分析,非常準(zhǔn)確地估計(jì)當(dāng)前用戶可擁有的帶寬,很好提升了DASH在LTE網(wǎng)絡(luò)中的性能。以上的工作都是基于HTTP/1.1協(xié)議設(shè)計(jì)DASH系統(tǒng),隨著HTTP/2的正式發(fā)布,部分學(xué)者也基于HTTP/2協(xié)議設(shè)計(jì)了DASH系統(tǒng),例如文獻(xiàn)[8,15]。

本文設(shè)計(jì)并實(shí)現(xiàn)了基于多個(gè)網(wǎng)絡(luò)接口的DASH系統(tǒng)——PASM,對DASH的QoE做了進(jìn)一步的優(yōu)化。PASM主要由兩個(gè)互補(bǔ)部分組成,第一個(gè)部分利用當(dāng)前移動(dòng)終端配有多個(gè)網(wǎng)絡(luò)接口這一現(xiàn)狀,客戶端可以同時(shí)通過LTE和Wi-Fi進(jìn)行視頻塊的傳輸,從而獲得更高的可利用帶寬。然而由于不同網(wǎng)絡(luò)的異構(gòu)性,視頻塊的亂序到達(dá)可能會(huì)造成客戶端緩沖隊(duì)列的波動(dòng),因此,我們設(shè)計(jì)了一系列簡單有效的策略來解決視頻塊的亂序到達(dá)問題,視頻塊的有序到達(dá)保證了視頻緩沖隊(duì)列的穩(wěn)定,進(jìn)而保證了視頻比特率的平滑切換。與之前其他人在多接口方面的工作[5]相比,PASM采用了標(biāo)準(zhǔn)的DASH協(xié)議進(jìn)行比特率切換邏輯的設(shè)計(jì),而不允許將視頻塊切成更小視頻段,進(jìn)而將視頻段請求任務(wù)分配到多個(gè)鏈路。第二部分利用了現(xiàn)有工作常被忽略的額外下載時(shí)間,當(dāng)剩余請求視頻時(shí)長不多的情況下,請求比特率高于當(dāng)前可用帶寬的視頻塊,這種策略有效地提高了視頻平均比特率,同時(shí)減少了視頻比特率的切換,該策略對于短視頻的QoE提升尤為顯著。最后,我們在NS-3仿真平臺(tái)[1]上實(shí)現(xiàn)了PASM,之所以采用NS-3作為開發(fā)環(huán)境,一方面是NS-3比較真實(shí)地模擬了網(wǎng)絡(luò)協(xié)議棧,并且該實(shí)現(xiàn)更容易移植到真實(shí)環(huán)境中;另一方面,在NS-3中可以方便地對實(shí)驗(yàn)網(wǎng)絡(luò)進(jìn)行控制,尤其是LTE網(wǎng)絡(luò),而在真實(shí)環(huán)境中通常沒法對于LTE網(wǎng)絡(luò)加以控制。

1 研究動(dòng)機(jī)

1.1 多網(wǎng)絡(luò)接口DASH的潛在局限性

在DASH系統(tǒng)中,由比特率切換算法決定每次請求的視頻塊比特率。目前比特率切換算法的設(shè)計(jì)主要有兩種思路:一種是基于客戶端實(shí)時(shí)估計(jì)的可用帶寬值決定下一次請求的比特率;另一種是基于客戶端緩沖隊(duì)列長度決定下一次請求的比特率。

基于帶寬估計(jì)的比特率切換算法根據(jù)客戶端測量到的實(shí)時(shí)吞吐量,估計(jì)當(dāng)前可用帶寬,繼而請求比特率與當(dāng)前帶寬匹配的視頻塊。這種算法的優(yōu)點(diǎn)在于可以快速響應(yīng)網(wǎng)絡(luò)帶寬的變化并做出調(diào)整,然而缺點(diǎn)是由于無線網(wǎng)絡(luò)帶寬波動(dòng)頻繁,可能會(huì)引起請求視頻比特率的頻繁波動(dòng)。

基于客戶端緩沖隊(duì)列長度的比特率切換算法根據(jù)客戶端緩沖區(qū)的狀態(tài)確定下次請求的視頻比特率??蛻舳司彌_隊(duì)列越長說明客戶端可以支持更高比特率的視頻請求。相反,如果客戶端緩沖隊(duì)列減少說明當(dāng)前的帶寬無法維持當(dāng)前比特率的視頻請求,所以請求更低比特率的視頻塊。

雖然這兩種類型的算法被廣泛運(yùn)用于目前的單接口DASH系統(tǒng)中,但是把它們部署于多接口無線網(wǎng)絡(luò)中仍十分具有挑戰(zhàn)性。首先,由于無線網(wǎng)絡(luò)的不穩(wěn)定,很難準(zhǔn)確地估計(jì)出當(dāng)前的可用帶寬,用于確定下次請求的視頻比特率;其次,多個(gè)網(wǎng)絡(luò)接口網(wǎng)絡(luò)的異構(gòu)性增加多接口請求算法設(shè)計(jì)的難度。舉個(gè)例子,如果兩條鏈路的可用帶寬相同,系統(tǒng)可以分配給每條鏈路相同比特率的視頻塊請求任務(wù)。否則,如果兩條鏈路帶寬差異明顯,每條鏈路只根據(jù)當(dāng)前鏈路的可用帶寬請求比特率與之匹配的視頻塊,那會(huì)造成嚴(yán)重的比特率波動(dòng)。而在兩條鏈路差異明顯的情況下,每條鏈路請求的視頻塊比特率如果又一致,為了保證視頻塊有序到達(dá)客戶端,帶寬大的鏈路下載完成當(dāng)前視頻塊后必須長時(shí)間地等待帶寬小的鏈路完成視頻塊的請求任務(wù),造成了帶寬大的鏈路的帶寬資源不充分利用。

因此,設(shè)計(jì)基于多無線網(wǎng)絡(luò)接口的DASH系統(tǒng)時(shí),算法設(shè)計(jì)即需要對于無線網(wǎng)絡(luò)變化做出及時(shí)調(diào)整,同時(shí)需要充分考慮每條鏈路的特性以及總的帶寬之和。

1.2 短視頻分析

跟國內(nèi)最大的流媒體服務(wù)提供商之一(騰訊視頻)合作,我們得到了一段時(shí)間用戶通過移動(dòng)終端觀看視頻的行為記錄(從 2014/09/01 至 2014/09/15,超過 30 億條記錄)。通過我們的統(tǒng)計(jì)與測量結(jié)果(見圖1)發(fā)現(xiàn),視頻長度小于500 s的觀看記錄占了52%,在這52%的比例中,又有65%的記錄看完了整個(gè)視頻。因此,不難得出相比于長視頻,短視頻被用戶觀看更頻繁,被看完的概率也更大。短視頻播放時(shí)長短的特性表明了用于短視頻請求的比特率切換算法沒法像長視頻一樣維持一個(gè)非常大的緩存,通過緩存減少網(wǎng)絡(luò)頻繁波動(dòng)對于視頻請求的影響。因此,我們需要設(shè)計(jì)一種快速響應(yīng)的比特率切換算法用于優(yōu)化用戶觀看短視頻的QoE。

圖1 觀看記錄統(tǒng)計(jì)

2 系統(tǒng)設(shè)計(jì)

2.1 設(shè)計(jì)PASM的挑戰(zhàn)與概述

針對多接口的場景,PASM的設(shè)計(jì)有三個(gè)挑戰(zhàn):

1) 視頻塊有序到達(dá)。由于LTE網(wǎng)絡(luò)與Wi-Fi網(wǎng)絡(luò)在鏈路特性上存在明顯的差異,如 RTT、帶寬等。對于大小相同的數(shù)據(jù),兩條鏈路的下載時(shí)間可能相差很大。因此,如何確定請求視頻塊的比特率,如何分配每條鏈路的視頻塊下載任務(wù),從而保證視頻塊的有序到達(dá),是一個(gè)極具挑戰(zhàn)性的工作。

2) 視頻塊比特率的確定。考慮到多條鏈路的帶寬差異,如果僅根據(jù)每條鏈路的帶寬情況去確定每條鏈路請求的視頻塊比特率,對視頻平均比特率的提升意義不大,并可能造成視頻比特率的頻繁波動(dòng);而根據(jù)多條鏈路的帶寬之和去決定請求的視頻塊比特率,可能會(huì)導(dǎo)致帶寬小的鏈路下載視頻塊所花的時(shí)間太長,出現(xiàn)緩沖區(qū)耗竭,視頻播放停頓的情況。因此,在多接口環(huán)境中,視頻比特率的確定是主要挑戰(zhàn)之一。

3) 尾階段的視頻請求處理。目前主流的DASH系統(tǒng)為了保證性能,通常在整個(gè)請求過程中維持視頻緩沖隊(duì)列的穩(wěn)定。這導(dǎo)致整個(gè)視頻請求結(jié)束后存在一段較長只播放視頻而沒有新的下載任務(wù)的時(shí)間。因此,考慮是否可以在尾階段(即剩余請求視頻塊不多的情況下),請求比特率高于當(dāng)前帶寬的視頻塊,減少這段較長時(shí)間,提高帶寬的利用率,進(jìn)而提高視頻的平均比特率。這種做法對于短視頻的QoE優(yōu)化尤為顯著。然而如何在不影響其他DASH性能指標(biāo)的前提下,提高視頻平均比特率,是PASM設(shè)計(jì)的第三個(gè)挑戰(zhàn)。

PASM是一個(gè)客戶端驅(qū)動(dòng)的流媒體系統(tǒng),服務(wù)器采用的是普通的HTTP服務(wù)器。PASM的框架如圖2所示。

圖2 PASM框架

以下是PASM的基本工作步驟:

步驟1系統(tǒng)初始化——主要包括系統(tǒng)初始配置文件的加載以及MPD文件的請求和解析。MPD文件包括了請求視頻的所有信息,比如可請求的比特率版本、視頻塊長度以及視頻塊的請求地址等。該文件在客戶端請求視頻之前被下載。

步驟2帶寬估計(jì)——在請求視頻塊前,需要對每條鏈路的帶寬進(jìn)行估計(jì),本文中采用的帶寬估計(jì)方法為指數(shù)加權(quán)移動(dòng)平均值法[10](EWMA),本文中權(quán)值取0.6。

步驟3請求比特率的選擇——PASM根據(jù)當(dāng)前緩沖隊(duì)列長度確定下次請求的視頻塊比特率。

步驟4鏈路選擇——由于Wi-Fi和LTE的網(wǎng)絡(luò)異構(gòu)性,根據(jù)各自鏈路的帶寬估計(jì),為每條鏈路分配不同序號(hào)的視頻塊請求任務(wù),保證視頻塊的有序到達(dá)。

步驟5異常處理——對請求過程中出現(xiàn)的特殊情況進(jìn)行處理,其中包括亂序處理、饑餓鏈路帶寬探測、視頻時(shí)長感知分析。

步驟6視頻播放——客戶端對接收到的視頻塊進(jìn)行解碼并播放。

其中步驟2至步驟6將重復(fù)執(zhí)行直至整個(gè)視頻會(huì)話結(jié)束,而PASM的設(shè)計(jì)細(xì)節(jié)在下節(jié)會(huì)作進(jìn)一步說明。

2.2 PASM設(shè)計(jì)

PASM共由多個(gè)模塊構(gòu)成(見圖2)。接下來,將會(huì)詳細(xì)介紹這些模塊如何在多網(wǎng)絡(luò)接口環(huán)境下工作。

2.2.1 比特率選擇

在設(shè)計(jì)邏輯上,我們是先確定請求視頻塊的比特率,再確定下載鏈路。這樣做的優(yōu)勢在于不需要為每條鏈路設(shè)計(jì)一個(gè)專門的比特率選擇模塊,簡化了系統(tǒng)設(shè)計(jì)。同時(shí)減少了由于多條鏈路帶寬差異造成對視頻比特率確定的影響。當(dāng)系統(tǒng)中出現(xiàn)至少一條鏈路處于空閑狀態(tài)的時(shí)候,比特率選擇算法會(huì)根據(jù)已有的信息決定下一次請求的視頻比特率。這邊比特率選擇算法的設(shè)計(jì),我們借鑒了文獻(xiàn)[12]中的單接口BBA-0算法。而與BBA-0算法不同的是,在我們的算法中視頻緩存隊(duì)列長度指的是可播放視頻緩存隊(duì)列長度。比如緩存區(qū)緩存了序號(hào)為5、6、7、8、11這5個(gè)視頻塊,那么可播放的視頻塊為5、6、7、8,播放視頻緩存隊(duì)列長度為5×視頻塊長度,而序號(hào)為11的視頻塊由于序號(hào)為9、10的視頻塊未被下載或者正在下載,并不能被播放,也不計(jì)入視頻緩存隊(duì)列長度中。

雖然BBA-0算法本身是一種單接口的比特率切換算法,但是其簡單有效的設(shè)計(jì)思想非常適合于無線多接口網(wǎng)絡(luò)的場景。其優(yōu)勢在于以下兩點(diǎn):

1) 由于無線網(wǎng)絡(luò)帶寬波動(dòng)頻繁,帶寬估計(jì)很難做到非常準(zhǔn)確,通過帶寬估計(jì)決定下次請求視頻比特率,很可能會(huì)造成視頻比特率的頻繁切換,更有可能導(dǎo)致播放出現(xiàn)停頓,而BBA-0算法很好避免這個(gè)問題。

2) 弱化了多條鏈路帶寬差異的影響。不根據(jù)帶寬值,而根據(jù)緩沖區(qū)緩存狀態(tài)決定視頻塊的比特率,可以保證兩條鏈路請求的視頻塊比特率接近,從而不會(huì)造成過多的比特率切換。但是可能會(huì)引入新的問題——視頻塊的亂序到達(dá)。而如何避免視頻塊的亂序到達(dá),這個(gè)問題的解決將在2.2.2節(jié)中做介紹。

2.2.2 鏈路選擇

我們將鏈路的狀態(tài)分為空閑、忙碌兩種狀態(tài)??臻e狀態(tài)是指鏈路當(dāng)前沒有下載任務(wù),允許該鏈路發(fā)起視頻塊的請求;忙碌狀態(tài)是指鏈路當(dāng)前正在請求某個(gè)視頻塊。在我們的系統(tǒng)中,一條鏈路要發(fā)起新的請求,必須等待該鏈路正在請求的視頻塊下載完成。當(dāng)系統(tǒng)中出現(xiàn)一條鏈路為空閑狀態(tài)時(shí),我們需要判斷該鏈路是否合適于新的視頻塊請求。如果當(dāng)前鏈路處于空閑狀態(tài),則只是簡單地把序號(hào)最小的未下載視頻塊(視頻塊的比特率在比特率選擇模塊已經(jīng)確定)分配給該鏈路,很有可能會(huì)造成視頻塊的亂序到達(dá)。為了盡可能地避免亂序問題出現(xiàn),鏈路選擇模塊會(huì)根據(jù)鏈路的帶寬、視頻塊的大小等信息,預(yù)計(jì)下載時(shí)間,把最合適序號(hào)的視頻塊請求分配給空閑鏈路。這里簡單地舉例說明一下如何通過鏈路選擇算法來避免亂序問題。比如,目前客戶端有兩個(gè)網(wǎng)絡(luò)通信接口Wi-Fi和LTE,其中LTE的帶寬遠(yuǎn)高于Wi-Fi,視頻被切成3個(gè)比特率相同的視頻塊{c1,c2,c3}。首先LTE鏈路和Wi-Fi鏈路分別請求c1、c2,LTE鏈路會(huì)很快下載完c1,再去請求c3,由于LTE和Wi-Fi鏈路的帶寬差異,可能導(dǎo)致c3比c2先到達(dá)客戶端,從而造成視頻塊的亂序到達(dá)。而我們的鏈路選擇算法針對這種情況,會(huì)事先考慮鏈路的帶寬差異,把c1先分配給LTE鏈路,c3分配給Wi-Fi鏈路,然后等c1下載完后,再把c2分配給LTE鏈路,從而保證了視頻塊的有序到達(dá)。算法1為鏈路選擇算法的偽代碼實(shí)現(xiàn)。

算法1鏈路選擇算法

輸入:bt:忙碌鏈路的帶寬

l: 分配給忙碌鏈路的視頻塊未下載完部分的大小

ft: 空閑鏈路的帶寬

m: 等待請求的視頻塊的大小

cdeg:可以請求的視頻塊序號(hào)范圍

輸出:id:空閑鏈路請求的視頻塊序號(hào)

1:// 初始化id,返回-1代表不給空閑鏈路分配請求

2:id ←-1

3:// 獲取空閑鏈路請求視頻塊序號(hào)

4:for j ←0…cdegdo

6: id←Indicator(j)

7: break

8: end

9:end

其中cdeg表示當(dāng)前可以請求的視頻塊(即未被下載的視頻塊)序號(hào)范圍。Indicator(j)的功能是返回所有未被下載視頻塊中,序號(hào)為第j+1小的視頻塊序號(hào)。算法1中4-7行用于估計(jì)視頻塊的下載時(shí)間,選擇合適序號(hào)的視頻塊請求分配給空閑鏈路或者不分配,盡可能地使序號(hào)小的視頻塊先到達(dá)客戶端,減少了視頻塊亂序到達(dá)的產(chǎn)生。

2.2.3 亂序處理

雖然在鏈路選擇模塊中,可以通過鏈路選擇算法盡可能地避免亂序的產(chǎn)生。但由于諸多原因,視頻塊的亂序到達(dá)仍可能產(chǎn)生。當(dāng)客戶端緩存的亂序視頻塊的個(gè)數(shù)超過Ntor(Ntor= 3)時(shí),需要進(jìn)行亂序處理。亂序處理的策略是兩條鏈路同時(shí)請求缺失的視頻塊,保證亂序問題及時(shí)解決。

當(dāng)系統(tǒng)進(jìn)行亂序處理時(shí),會(huì)造成一定的流量浪費(fèi),即兩條鏈路都去下載同一序號(hào)的視頻塊,必然會(huì)有一條鏈路先下載完。當(dāng)一條鏈路下載完后,另一條鏈路就會(huì)停止該塊的下載(這部分下載數(shù)據(jù)就沒有用了),導(dǎo)致一定流量的浪費(fèi)。上述亂序處理方法只在亂序問題比較嚴(yán)重的情況下,才進(jìn)行亂序處理,有效地減少了由于亂序處理造成的流量浪費(fèi),降低了系統(tǒng)開銷。

2.2.4 饑餓鏈路探測

饑餓鏈路是指鏈路即使處于空閑狀態(tài),也沒有視頻塊的請求任務(wù)。出現(xiàn)饑餓鏈路的原因是由于該鏈路當(dāng)前的帶寬遠(yuǎn)遠(yuǎn)小于另一條鏈路,導(dǎo)致沒有合適比特率、合適序號(hào)的視頻塊任務(wù)分配給該鏈路。然而,由于無線網(wǎng)絡(luò)帶寬波動(dòng)非常劇烈,長時(shí)間的不分配下載任務(wù)給饑餓鏈路,可能導(dǎo)致對饑餓鏈路的帶寬估計(jì)不準(zhǔn)確。因此設(shè)計(jì)饑餓鏈路探測模塊來解決饑餓鏈路的帶寬估計(jì)問題。帶寬探測的方法是在每次另一條鏈路發(fā)起視頻塊請求的時(shí)候,饑餓鏈路也向服務(wù)器發(fā)起請求,不過請求的內(nèi)容不是視頻塊,而是一個(gè)大小遠(yuǎn)小于視頻塊的文件。比如MPD文件,通過MPD文件的下載情況,分析該鏈路的帶寬情況。

2.2.5 視頻時(shí)長感知

根據(jù)1.2節(jié)的統(tǒng)計(jì)分析,短視頻更加受到用戶的青睞,然而目前已有的DASH算法主要針對長視頻進(jìn)行設(shè)計(jì),沒有對短視頻請求做專門的優(yōu)化。因此為了提升系統(tǒng)的性能,這些算法在用于短視頻請求時(shí),參數(shù)配置和設(shè)計(jì)邏輯需要進(jìn)一步的改進(jìn)。針對1.2節(jié)的用戶行為分析和2.1節(jié)中的第三個(gè)挑戰(zhàn),我們設(shè)計(jì)了視頻時(shí)長感知算法(見算法2)。在尾階段(剩余未被下載視頻時(shí)長小于等于Dt,Dt=20 s)時(shí),調(diào)用視頻時(shí)長感知算法,用于確定下一次請求的視頻塊比特率。

算法2視頻時(shí)長感知算法

輸入: bufnow:已緩存的可以播放的視頻時(shí)長

dt:剩余未被下載的視頻時(shí)長

Δ:防止緩沖區(qū)耗竭的閥值

T1,T2:比特率平滑切換的上下閥值,T1

bwtot:總帶寬(LTE和Wi-Fi的帶寬之和)

sold:客戶端上次請求時(shí)的狀態(tài)

Rateprev:上次請求的視頻塊比特率

輸出:Ratenext:下次請求的視頻塊比特率

1:if bufnow> T1then

2: s←1

3:end

4:else if bufnow> T2then

5: s←2

6:end

7:else

8: s←3

9:end

10:if sold≠ s then

12: Ratenext=max{Ri:Ri< rmax}

13:end

14:else

15: Ratenext= Rateprev

16:end

17:return Ratenext

視頻時(shí)長感知算法的基本思想是視頻塊請求進(jìn)入到尾階段后,可以通過逐漸消耗已緩存的可播放視頻時(shí)長的形式,請求更高比特率的視頻塊。算法2中1-9行用于確定當(dāng)前緩存區(qū)的狀態(tài),T1和T2為設(shè)置兩個(gè)上下門閾值,用于保證比特率的平滑切換,rmax是在視頻塊請求過程中,保證緩沖區(qū)不出現(xiàn)耗竭,理論上可以請求的最高比特率。然而由于可請求的視頻比特率是離散化的,所有只能選擇最接近rmax且不大于rmax的比特率作為了下次請求視頻塊的比特率。

2.3 實(shí) 現(xiàn)

我們在NS-3上部署了PASM,實(shí)現(xiàn)代碼超過了2 500行。目前PASM只支持HTTP/1.1協(xié)議,不支持HTTP/2協(xié)議。實(shí)現(xiàn)過程中需要注意的是,為了讓視頻數(shù)據(jù)可以同時(shí)通過客戶端的Wi-Fi和LTE接口進(jìn)行傳輸,需要對路由表進(jìn)行專門配置。

3 實(shí) 驗(yàn)

本節(jié)對PASM算法與另兩種多接口DASH算法在多種帶寬變化的應(yīng)用場景下進(jìn)行對比分析。首先對RR(Round Robin)算法和PWVLA(PASM Without the Video Length Awareness algorithm)算法做簡單的介紹。

RR算法:先根據(jù)BBA-0算法決定下一次請求的視頻塊比特率。然后在不考慮鏈路帶寬差異的情況下,將所有未下載的視頻塊中序號(hào)最小的那個(gè)視頻塊分配給空閑鏈路(若LTE和Wi-Fi都處于空閑狀態(tài),先分配給帶寬大的空閑鏈路)。而對于下載過程出現(xiàn)了視頻塊亂序到達(dá)情況,處理機(jī)制與2.2.3節(jié)一致。

PWVLA算法:沒有視頻時(shí)長感知處理部分,其他部分設(shè)計(jì)與PASM算法一樣。

PASM算法與RR算法對比,主要是分析PASM的鏈路選擇部分中設(shè)計(jì)的策略是否有效地避免了視頻塊的亂序到達(dá)。PASM算法與PWVLA算法對比,主要是分析在尾階段,PASM算法是否真正地提高了視頻的平均比特率,并且不影響其他DASH性能指標(biāo)。

接下來,我們將對多接口DASH的性能指標(biāo)、實(shí)驗(yàn)參數(shù)配置以及各種帶寬變化下的實(shí)驗(yàn)結(jié)果做進(jìn)一步的介紹。

3.1 性能指標(biāo)

我們主要根據(jù)以下三個(gè)指標(biāo)進(jìn)行性能評估:

1) 平均視頻播放質(zhì)量(APQ):即用戶觀看視頻的平均比特率。APQ的定義如下:

(1)

其中K表示視頻被分成了多少個(gè)小視頻塊,ri表示序號(hào)為i的視頻塊比特率。

2) 視頻平均質(zhì)量波動(dòng)(AQV):描述了視頻比特率切換的平滑度。AQV的定義如下:

(2)

3) 流量浪費(fèi)(WT):由兩部分組成,一部分是亂序處理造成的流量浪費(fèi);另一部分是饑餓鏈路帶寬探測造成的流量(即請求探測文件產(chǎn)生的流量)浪費(fèi)。

3.2 實(shí)驗(yàn)參數(shù)設(shè)置

本實(shí)驗(yàn)中視頻總長度為160 s,視頻塊長度為2 s,提供了7種比特率版本,如表1所示??蛻舳说木彌_區(qū)最多可以存儲(chǔ)30 s的視頻,算法1、算法2中其他參數(shù):cdeg=3,Δ=2,T1=10 s,T2=5 s,Dt=20 s。

表1 視頻比特率

LTE基站的配置如表2所示,Wi-Fi路由器采用了802.11g協(xié)議,信號(hào)發(fā)射功率為20 dBm。

表2 LTE基站參數(shù)

3.3 帶寬不變的應(yīng)用場景

對于帶寬不變的應(yīng)用場景,又進(jìn)行了細(xì)化,分別在Wi-Fi和LTE帶寬比為2∶1、3∶1、6∶1的情景下,對PASM、RR、PWVLA算法進(jìn)行實(shí)驗(yàn)分析。

當(dāng)Wi-Fi和LTE帶寬比為2∶1時(shí),PASM算法、RR算法和PWVLA算法性能比較接近,實(shí)驗(yàn)結(jié)果分別如圖3和表3所示。主要原因是在這種帶寬差異下,亂序問題不是非常嚴(yán)重,只有RR算法進(jìn)行了一次亂序處理(TO表示亂序處理的次數(shù))。從表3得知,一旦進(jìn)行亂序處理,將造成比較嚴(yán)重的流量浪費(fèi)。

圖3 帶寬不變:Wi-Fi∶LTE = 2 000 Kbit/s∶1 000 Kbit/s

表3 性能分析: Wi-Fi∶LTE=2 000 kbit/s∶1 000kbit/s

當(dāng)Wi-Fi和LTE帶寬比為3∶1時(shí),可以認(rèn)為兩條鏈路的帶寬差異比較明顯,從圖4和表4分析,RR算法由于沒有設(shè)計(jì)合適的機(jī)制減少帶寬差異造成的亂序。因此進(jìn)行了多次亂序處理,導(dǎo)致整個(gè)算法性能不是非常高。而PASM算法和PWVLA算法由于很少進(jìn)行亂序處理,因此在AQV均明顯好于RR算法。PASM算法和PWVLA算法相比,由于PASM算法在尾階段采用了視頻時(shí)長感知算法,使得PASM的APQ比PWVLA的APQ提升了約260 Kbit/s。

圖4 帶寬不變:Wi-Fi∶LTE=3 000 Kbit/s∶1 000 Kbit/s

表4 性能分析:Wi-Fi∶LTE=3 000 kbit/s∶1 000 kbit/s

同時(shí)將RR算法在這種帶寬比情況下與BBA-0算法在單接口情況下(Wi-Fi = 3 000 Kbit/s)進(jìn)行性能對比,(分別見圖5和表4),發(fā)現(xiàn)RR算法并沒有因?yàn)槎噫溌返氖褂茫阅鼙葐谓涌贐BA-0算法提升多少,在APQ上有所提高。但是由于視頻塊的亂序問題沒有很好的解決,導(dǎo)致視頻塊的平均比特率波動(dòng)(AQV)劇烈,這顯然與利用多接口傳輸DASH的初衷相違背。

圖5 帶寬不變:RR與BBA-0請求對比

當(dāng)Wi-Fi和LTE的帶寬比為6∶1時(shí),實(shí)驗(yàn)結(jié)果分別如圖6和表5所示。在這種情況下,帶寬差異已經(jīng)非常大,3種算法在流量浪費(fèi)上很接近,原因是RR算法是由于亂序處理造成了大量的流量浪費(fèi),而PASM算法、PWVLA算法是由于饑餓鏈路帶寬探測造成了大量的流量浪費(fèi)。但是相比RR算法造成的流量浪費(fèi),饑餓鏈路帶寬探測造成的流量浪費(fèi)是有意義的,帶寬探測確保了客戶端對鏈路帶寬的可知性,保證鏈路帶寬在發(fā)生巨大變化時(shí),能夠及時(shí)地調(diào)整請求機(jī)制。

圖6 帶寬不變:Wi-Fi∶LTE=6 000 Kbit/s∶1 000 Kbit/s

表5 性能分析:Wi-Fi∶LTE=6 000 kbit/s∶1 000 kbit/s

3.4 帶寬變化的應(yīng)用場景

我們將LTE鏈路的帶寬維持在1 000 Kbit/s,Wi-Fi鏈路的帶寬成ON-OFF狀態(tài)交替變化(其中,ON狀態(tài)時(shí),帶寬為3 000 Kbit/s,持續(xù)40 s;OFF狀態(tài)時(shí),帶寬為1 000 Kbit/s,持續(xù)20 s),在這種場景下,對3種算法進(jìn)行了實(shí)驗(yàn)分析,實(shí)驗(yàn)結(jié)果分別如圖7和表6所示。通過圖7,可以直觀地看到3種算法的性能情況,PASM在最后階段請求的比特率明顯高于PWVLA,而PWVLA和RR相比在視頻比特率波動(dòng)上減少了很多。而通過表6的統(tǒng)計(jì)結(jié)果,從各個(gè)性能指標(biāo)情況驗(yàn)證了圖7看到的結(jié)果。我們還發(fā)現(xiàn)RR、PWVLA、PASM三種算法對于帶寬變化的響應(yīng)還是非常快,當(dāng)Wi-Fi帶寬從ON狀態(tài)變?yōu)镺FF狀態(tài)或從OFF狀態(tài)變?yōu)镺N狀態(tài)時(shí),3種算法都及時(shí)進(jìn)行了平滑切換,這主要得力于將BBA-0算法作為比特率選擇算法。

圖7 帶寬變化:LTE=1 000 kbit/s Wi-Fi∶ON-OFF變化

表6 帶寬變化下性能分析

3.5 存在背景流的應(yīng)用場景

我們在Wi-Fi鏈路存在長TCP背景流的應(yīng)用場景下,對于3種算法進(jìn)行了實(shí)驗(yàn)分析。其中Wi-Fi鏈路的總帶寬仍然是3 000 Kbit/s,LTE鏈路的帶寬為1 000 Kbit/s,實(shí)驗(yàn)結(jié)果如圖8和表7所示。實(shí)驗(yàn)分析得到PASM、PWVLA算法在WT和AQV上都明顯優(yōu)于RR算法,PASM算法在APQ上顯著好于RR算法和PWVLA算法。從圖8,還可以看出這3種算法請求的視頻塊比特率集中在1 500 Kbit/s和2 500 Kbit/s,說明這3種算法在與長TCP流共享帶寬的情況下,表現(xiàn)出了較好的公平性。究其原因:3種算法在整個(gè)下載過程中,客戶端的視頻緩沖區(qū)一直處于未飽和狀態(tài),客戶端不間斷地通過兩條鏈路向服務(wù)器請求視頻塊,這種行為非常像長TCP流。

圖8 背景流:長TCP背景流

表7 長TCP背景流下性能分析

4 結(jié) 語

本文設(shè)計(jì)并實(shí)現(xiàn)了多無線網(wǎng)絡(luò)接口的DASH系統(tǒng)——PASM。利用多接口進(jìn)行DASH的傳輸,一方面可以使客戶端獲得更多的帶寬資源,另一方面也增加了比特率選擇的難度,并引入了視頻塊的亂序到達(dá)問題。我們將單接口場景下的BBA-0算法擴(kuò)展到LTE網(wǎng)絡(luò)和Wi-Fi網(wǎng)絡(luò)的多接口應(yīng)用場景,并設(shè)計(jì)了一系列策略解決視頻塊的亂序到達(dá)問題。

除此之外,我們還設(shè)計(jì)了視頻時(shí)長感知算法,在剩余請求視頻時(shí)長不多的情況下,通過調(diào)用該算法確定下次請求的視頻比特率,極大地提高了視頻的平均比特率。同時(shí)保證了視頻播放的流暢性和視頻比特率的平滑切換,該算法對于短視頻請求的性能優(yōu)化尤為顯著。

[1] Network Simulator Version 3[EB/OL].https://www.nsnam.org/.

[2] Akhshabi S,Anantakrishnan L,Begen A C,et al.What happens when HTTP adaptive streaming players compete for bandwidth?[C]//Proceedings of the 22nd international workshop on Network and Operating System Support for Digital Audio and Video.ACM,2012:9-14.

[3] Akhshabi S,Begen A C,Dovrolis C.An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP[C]//Proceedings of the Second Annual ACM SIGMM Conference on Multimedia Systems,MMSys 2011,Santa Clara,CA,USA,February 23-25,2011.2011:157-168.

[4] De Cicco L,Caldaralo V,Palmisano V,et al.Elastic:a client-side controller for dynamic adaptive streaming over http (dash)[C]//Packet Video Workshop (PV),2013 20th International.IEEE,2013:1-8.

[5] Evensen K,Kupka T,Kaspar D,et al.Quality-adaptive scheduling for live streaming over multiple access networks[C]//Proceedings of the 20th international workshop on Network and operating systems support for digital audio and video.ACM,2010:21-26.

[6] Huang T Y,Johari R,McKeown N,et al.A buffer-based approach to rate adaptation: Evidence from a large video streaming service[C]//Proceedings of the 2014 ACM conference on SIGCOMM.ACM,2014:187-198.

[7] Tian G,Liu Y.Towards agile and smooth video adaptation in dynamic HTTP streaming[C]//Proceedings of the 8th international conference on emerging networking experiments and technologies.ACM,2012:109-120.

[8] Xiao M,Swaminathan V,Wei S,et al.DASH2M:Exploring HTTP/2 for Internet Streaming to Mobile Devices[C]//Proceedings of the 2016 ACM on Multimedia Conference.ACM,2016:22-31.

[9] Zhu X,Li Z,Pan R,et al.Fixing multi-client oscillations in HTTP-based adaptive streaming:A control theoretic approach[C]//Multimedia Signal Processing (MMSP),2013 IEEE 15th International Workshop on.IEEE,2013:230-235.

[10] Jianhui Z,Bin W.Performance analysis of available bandwidth estimation algorithm based on EWMA and Kalman filter[C]//Proceedings of the 2009 International Conference on Multimedia Information Networking and Security.IEEE,2009,1:604-608.

[11] Xiang S,Cai L,Pan J.Adaptive scalable video streaming in wireless networks[C]//Proceedings of the 3rd multimedia systems conference.ACM,2012:167-172.

[12] Li Z,Zhu X,Gahm J,et al.Probe and adapt:Rate adaptation for http video streaming at scale[J].Selected Areas in Communications,IEEE Journal on,2014,32(4):719-733.

[13] Yin X,Sekar V,Sinopoli B.Toward a principled framework to design dynamic adaptive streaming algorithms over http[C]//Proceedings of the 13th ACM Workshop on Hot Topics in Networks.ACM,2014:9.

[14] Xie X,Zhang X,Kumar S,et al.piStream:Physical Layer Informed AdaptiveVideo Streaming Over LTE[C]//Proceedings of the 21st Annual International Conference on Mobile Computing and Networking.ACM,2015:413-425.

[15] Cherif W,Fablet Y,Nassor E,et al.Dash fast start using http/2[C]//Proceedings of the 25th ACM Workshop on Network and Operating Systems Support for Digital Audio and Video.ACM,2015:25-30.

DESIGNANDIMPLEMENTATIONOFDASHSYSTEMBASEDONMULTIPLEACCESSNETWORKS

Zhou Chuanjie1,2Chen Zhe1,2Zhang Xu1,2Xu Yuedong3
1(SchoolofComputerScience,FudanUniversity,Shanghai201203,China)2(EngineeringResearchCenterofCyberSecurityAuditingandMonitoring,MinistryofEducation,Shanghai201203,China)3(DepartmentofElectronicEngineering,FudanUniversity,Shanghai200433,China)

In dynamic adaptive streaming over HTTP, a client is able to switch between several video bitrates to cope with varying network conditions. The state-of-the-art adaptation algorithms are mainly designed to serve DASH flow on a single link. In view of multiple wireless interfaces equipped in mobile devices and the dominance of short Internet videos, we develop a predictive adaptive streaming system over LTE/Wi-Fi multiple access networks, namely PASM. PASM improves DASH performance through two orthogonal but complementary approaches. On one hand, PASM aggregates the bandwidth of LTE and Wi-Fi links for better video qualities, while inducing out-of-order chunk arrivals due to varying and heterogeneous bandwidth of each link. On the other hand, when the remaining video length is relatively short, we adopt a more aggressive algorithm to determine which chunk bitrate should be chosen, which leads to the increased average bitrate and reduced the number of bit-rate switching. Experimental studies show that PASM can guarantee the smooth video bitrate switching, and meanwhile increases the average video bitrate in various network conditions.

DASH Multiple access networks Out-of-order

2016-12-05。國家自然科學(xué)基金項(xiàng)目(61402114)。周傳杰,講師,主研領(lǐng)域:動(dòng)態(tài)自適應(yīng)流媒體。陳哲,博士。張旭,碩士。徐躍東,副教授。

TP3

A

10.3969/j.issn.1000-386x.2017.08.025

猜你喜歡
序號(hào)鏈路客戶端
你的手機(jī)安裝了多少個(gè)客戶端
你的手機(jī)安裝了多少個(gè)客戶端
“人民網(wǎng)+客戶端”推出數(shù)據(jù)新聞
——穩(wěn)就業(yè)、惠民生,“數(shù)”讀十年成績單
一種移動(dòng)感知的混合FSO/RF 下行鏈路方案*
天空地一體化網(wǎng)絡(luò)多中繼鏈路自適應(yīng)調(diào)度技術(shù)
淺析民航VHF系統(tǒng)射頻鏈路的調(diào)整
一種IS?IS網(wǎng)絡(luò)中的鏈路異常檢測方法、系統(tǒng)、裝置、芯片
技術(shù)指標(biāo)選股
技術(shù)指標(biāo)選股
技術(shù)指標(biāo)選股