前言:想要寫出一篇引人入勝的文章?我們特意為您整理了網(wǎng)絡(luò)電視視頻質(zhì)量監(jiān)察模型探討范文,希望能給你帶來靈感和參考,敬請(qǐng)閱讀。
本文作者:譚杰、孫志剛、程輝 單位:國(guó)防科學(xué)技術(shù)大學(xué)計(jì)算機(jī)學(xué)院
MDI[4]包括兩個(gè)部分:延遲因素DF(DelayFactor)和媒體丟包率MLR(MediaLossRate)。但從RFC4445中可以看出計(jì)算和實(shí)現(xiàn)DF的算法比較復(fù)雜。DF是指一個(gè)時(shí)間間隔期間,在每個(gè)視頻流報(bào)文數(shù)據(jù)包接收處觀察到的,流入的報(bào)文數(shù)據(jù)與流出的報(bào)文數(shù)據(jù)之間的最大差值與媒體流碼率MR(MediaRate)的比值,即接收到的字節(jié)數(shù)和解碼所需的字節(jié)數(shù)之間的最大差值再與MR的比值。若在每個(gè)采樣周期內(nèi)有k個(gè)報(bào)文到達(dá),則需要計(jì)算2k+1個(gè)虛擬緩沖區(qū)VB(VirtualBuffer)值,即每一條報(bào)文到達(dá)前的VB和報(bào)文到達(dá)后的VB,然后選取其中的最大虛擬緩沖區(qū)VB(max)和最小虛擬緩沖區(qū)VB(min),則DFVB(max)VB(min)MR=。因此,如果要得到一個(gè)DF值,需要在一個(gè)采樣點(diǎn)上計(jì)算兩次VB,并且在這個(gè)采樣周期內(nèi)所有VB值中找到最大值和最小值,根據(jù)公式然后需要進(jìn)行一次除法計(jì)算,而對(duì)于一個(gè)持續(xù)的視頻流來說,需要得到多個(gè)DF值才能進(jìn)行性能判斷,這樣的算法將勢(shì)必會(huì)在一定程度上加大硬件實(shí)現(xiàn)的難度、增加設(shè)備的負(fù)載。
針對(duì)計(jì)算DF值算法較復(fù)雜的問題,本文對(duì)MDI:DF的算法進(jìn)行了研究,發(fā)現(xiàn)另一種實(shí)現(xiàn)較其簡(jiǎn)單的基于令牌桶計(jì)算網(wǎng)絡(luò)延遲及抖動(dòng)情況的TBM算法[5],其計(jì)算出來的TB值與DF值相似,能反映網(wǎng)絡(luò)狀態(tài),但是TB值并不能很好地與DF值擬合。因此,本文第二部分主要介紹了對(duì)TBM算法進(jìn)行改進(jìn)的TBM+算法基本思想,第三部分描述了TBM+算法,第四部分介紹了在實(shí)驗(yàn)室搭建的一個(gè)IPTV監(jiān)測(cè)模型,以及對(duì)DF算法、TBM算法和TBM+算法的對(duì)比實(shí)驗(yàn),并針對(duì)三種視頻監(jiān)測(cè)的實(shí)驗(yàn)結(jié)果進(jìn)行比較和性能分析,最后是本文的結(jié)束語。
基本思想
將基于令牌桶的算法思想與DF算法思想進(jìn)行比較,令牌桶算法是通過令牌桶內(nèi)的令牌數(shù)就相當(dāng)于報(bào)文長(zhǎng)度,并且無需在多個(gè)虛擬緩沖區(qū)VB值中取最大值和最小值,而是直接輸出時(shí)刻點(diǎn)的令牌數(shù),因此可以直接反映緩存區(qū)的變化情況,較DF算法思想更直觀、簡(jiǎn)單,同時(shí)由于DF算法中存在除法運(yùn)算,因此從硬件實(shí)現(xiàn)的角度來看,基于令牌桶的算法實(shí)現(xiàn)起來會(huì)更容易、方便。本文是基于令牌桶的方法實(shí)現(xiàn)視頻質(zhì)量監(jiān)測(cè)。其TBM+算法基本思想[1]是:如果接收到一條報(bào)文,則將該報(bào)文長(zhǎng)度lpack輸入令牌管理模塊中,由令牌管理模塊將與lpack相等的令牌數(shù)量加入令牌桶。同時(shí),令牌管理模塊根據(jù)恒定的速率MR將令牌從桶中刪除??删幊潭〞r(shí)器產(chǎn)生MR_t,MR_t表示令牌減小操作的時(shí)間間隔。寄存器中存有MR_v,MR_v為每次減小的令牌數(shù)。MR為令牌桶中令牌減少的速率,即MR=MR_v/MR_t。當(dāng)令牌桶中令牌裝滿時(shí),則表示接口流量到達(dá)過快;當(dāng)令牌桶中變空時(shí),則表示接口流量到達(dá)過慢或無報(bào)文到達(dá)。令牌桶中UP_THD(underflowprotect)為下溢保護(hù)閥值,令牌桶內(nèi)令牌數(shù)目少于該值時(shí),表示近段時(shí)間內(nèi)報(bào)文到達(dá)速率較低;OP_THD(overflowprotect)為上溢保護(hù)閥值,令牌桶內(nèi)令牌數(shù)目大于該值時(shí),表示近段時(shí)間內(nèi)報(bào)文到達(dá)速率較高;Bucket_value為當(dāng)前令牌數(shù);B為令牌桶深度。將OP_THD、UP_THD、Bucket_value、B、MR_t和MR_v這些參數(shù)輸入TBM+計(jì)算模塊進(jìn)行計(jì)算,最后得到結(jié)果TB值。令牌桶計(jì)算模型如圖1所示。TBM+算法是在TBM算法上進(jìn)行改進(jìn)和完善的。
針對(duì)TBM算法并不能很好地與DF算法的結(jié)果相擬合這個(gè)不足,對(duì)此在計(jì)算TB值的具體算法上進(jìn)行了改進(jìn):一方面在Bucket_value與保護(hù)閾值進(jìn)行比較時(shí),計(jì)算出與TBM算法不同的值賦給up_flow和down_flow;另一方面與TBM算法直接將up_flow和down_flow的值作為結(jié)果輸出不同,TBM+算法是將up_flow和down_flow的值與以前采樣周期的TB值進(jìn)行累加,得到當(dāng)前采樣周期的TB值做為結(jié)果輸出。
算法描述
根據(jù)以上參數(shù)定義可知,令牌桶內(nèi)令牌個(gè)數(shù)反映了虛擬緩沖區(qū)VB的大小,同時(shí)UP_THD和OP_THD反映了VB接近下溢和上溢時(shí)需要報(bào)警的閥值。當(dāng)Bucket_value<0或Bucket_value>B時(shí),說明VB已經(jīng)出現(xiàn)下溢或上溢現(xiàn)象。當(dāng)Bucket_value>OP_THD時(shí),計(jì)算出當(dāng)前令牌桶中大于上溢保護(hù)閥值OP_THD的令牌數(shù)up_flow;當(dāng)Bucket_value<UP_THD時(shí),計(jì)算出當(dāng)前令牌桶中令牌數(shù)down_flow。最后再將這些令牌數(shù)up_flow和down_flow與TB值進(jìn)行累加,最終得到TB值。具體的令牌桶算法TBM+如表1所示。表1中的第10條語句計(jì)算的是當(dāng)前令牌桶中的令牌數(shù)量,MR_V/MR_T*ttt是令牌桶中減少的令牌數(shù)總和,即總共經(jīng)過了ttt時(shí)間后令牌桶按照MR的速率減少的令牌數(shù),lsum是接收的報(bào)文長(zhǎng)度的總和,即令牌桶接收的令牌數(shù)總和,兩者相減就得到桶中此時(shí)的令牌數(shù)量。第11至13條語句,考慮的是令牌桶下溢的情況,此時(shí)的桶中令牌排空,故將bucket_value的值賦0。第14至16條語句,考慮的是當(dāng)前令牌桶中的令牌數(shù)大于上溢保護(hù)閥值的情況,將當(dāng)前令牌數(shù)與上溢保護(hù)閥值的差值記錄在up_flow中。第17至19條語句,考慮的是當(dāng)前令牌桶中的令牌數(shù)小于上溢保護(hù)閥值的情況,將當(dāng)前令牌數(shù)記錄在down_flow中。第20至22條語句,考慮的是當(dāng)前令牌桶中的令牌數(shù)介于兩個(gè)保護(hù)閥值之間的情況,則up_flow和down_flow都為0。第24條語句計(jì)算當(dāng)前采樣周期的TB值,即將之前所有采樣周期的TB值與當(dāng)前采樣周期的up_flow值、down_flow值進(jìn)行累加。
實(shí)驗(yàn)結(jié)果與分析
整個(gè)視頻質(zhì)量監(jiān)測(cè)模型系統(tǒng)中硬件設(shè)計(jì)的核心部分主要是在NetMagic[6]平臺(tái)上完成。NetMagic平臺(tái)是國(guó)防科學(xué)技術(shù)大學(xué)計(jì)算機(jī)學(xué)院網(wǎng)絡(luò)與信息安全研究所面向下一代互聯(lián)網(wǎng)體系結(jié)構(gòu)研究而設(shè)計(jì)開發(fā)的可重構(gòu)的開發(fā)式交換平臺(tái)。NetMagic平臺(tái)采用了高性能FPGA和商用以太網(wǎng)交換芯片相結(jié)合的新型體系結(jié)構(gòu),可提供高端口密度報(bào)文線速轉(zhuǎn)發(fā)能力和邏輯可重構(gòu)能力,從而有效支持新型網(wǎng)絡(luò)協(xié)議和報(bào)文處理機(jī)制的快速實(shí)現(xiàn)和部署。NetMagic采用開源開放的設(shè)計(jì)思想和模塊可重用的設(shè)計(jì)理念,為用戶提供了高可用的基本功能模塊并設(shè)計(jì)了良定義的標(biāo)準(zhǔn)接口,可有效減少用戶的系統(tǒng)設(shè)計(jì)、實(shí)現(xiàn)及驗(yàn)證周期。我們先在實(shí)驗(yàn)室搭建了一個(gè)模擬IPTV的實(shí)驗(yàn)環(huán)境,再將NetMagic放入環(huán)境中組成視頻質(zhì)量監(jiān)測(cè)模型。
這個(gè)視頻質(zhì)量監(jiān)測(cè)模型需要一臺(tái)視頻服務(wù)器、一臺(tái)視頻客戶端、一臺(tái)計(jì)算機(jī)作為控制端和監(jiān)測(cè)端,一臺(tái)NetMagic部署在視頻服務(wù)器與客戶端之間。具體的模型網(wǎng)絡(luò)拓?fù)鋱D如圖2所示。視頻服務(wù)器發(fā)送出視頻報(bào)文,視頻報(bào)文經(jīng)過網(wǎng)絡(luò)流入NetMagic;NetMagic將每條報(bào)文進(jìn)入的時(shí)刻記錄在報(bào)文數(shù)據(jù)中,同時(shí)根據(jù)接收到控制計(jì)算機(jī)發(fā)送的控制指令,對(duì)媒體流進(jìn)行模擬網(wǎng)絡(luò)干擾,再將每條報(bào)文提取出一條摘要報(bào)文發(fā)送給監(jiān)測(cè)計(jì)算機(jī),最后將原視頻報(bào)文從NetMagic發(fā)送出去;視頻客戶端接收到視頻報(bào)文??刂?監(jiān)測(cè)計(jì)算機(jī)則從接收到的每條摘要報(bào)文中提取出報(bào)文長(zhǎng)度和時(shí)間戳,根據(jù)不同的算法得到所需的實(shí)驗(yàn)結(jié)果——DF值和TB值。
利用Wireshark抓包軟件捕獲網(wǎng)絡(luò)中的視頻服務(wù)器與終端之間的流媒體數(shù)據(jù),并保存成Trace文件。通過觀察分析,Trace文件中包含每個(gè)報(bào)文接收的時(shí)刻、長(zhǎng)度、源和目的IP地址、源和目的端口號(hào)以及協(xié)議類型等,并且發(fā)現(xiàn)流媒體數(shù)據(jù)是封裝在UDP協(xié)議中進(jìn)行傳輸?shù)摹8鶕?jù)IP協(xié)議和UDP協(xié)議的格式,將這種UDP報(bào)文中的時(shí)刻和長(zhǎng)度所對(duì)應(yīng)的字段提取出來,分別輸入到DF算法和令牌桶算法之中,最后計(jì)算出我們需要的DF值和TB值。
在計(jì)算DF的實(shí)驗(yàn)中,MR=1.664Mb/s,采樣周期為100ms,每一個(gè)采樣周期計(jì)算出一個(gè)DF值;在TBM算法和TBM+算法的實(shí)驗(yàn)中,設(shè)一個(gè)令牌為1字節(jié),其參數(shù)設(shè)置為MR_t=10ms,MR_v=2080,采樣周期為100ms,UP_THD=4000,OP_THD=6000,B=10000,每一個(gè)采樣周期輸出一個(gè)TB值。最終,通過三個(gè)不同的算法進(jìn)行計(jì)算,分別得到所要的實(shí)驗(yàn)結(jié)果DF值、TBM算法的TB值和TBM+算法的TB值,如圖3所示。從實(shí)驗(yàn)結(jié)果的曲線圖中可以看出,TBM+算法的TB值曲線較TBM算法的可以更好地與DF值的曲線擬合,說明TBM+算法比TBM算法更能反映所測(cè)的網(wǎng)絡(luò)狀態(tài)。如圖3(b)所示,可以發(fā)現(xiàn)在第135個(gè)采樣周期時(shí)刻,出現(xiàn)了一次突發(fā)性報(bào)文到達(dá),使得令牌桶內(nèi)令牌數(shù)Bucket_value陡然增加,從而導(dǎo)致DF值和TB值也突然增加。如圖3(a)、圖3(b)、圖3(c)所示,當(dāng)DF值為一定值或TB值為0時(shí),說明網(wǎng)絡(luò)中無報(bào)文到達(dá)或報(bào)文到達(dá)速率較慢,存在網(wǎng)絡(luò)延時(shí);當(dāng)DF值或TB值變化越頻繁,說明網(wǎng)絡(luò)抖動(dòng)越強(qiáng)烈。
結(jié)束語
本文設(shè)計(jì)了一種監(jiān)測(cè)網(wǎng)絡(luò)性能參數(shù)的IPTV視頻質(zhì)量監(jiān)測(cè)模型,該監(jiān)測(cè)模型使用了一種優(yōu)于計(jì)算MDI:DF值為性能參數(shù)、基于令牌桶TBM算法的改進(jìn)算法TBM+,可以解決目前缺乏有效的應(yīng)用于IPTV的視頻質(zhì)量測(cè)試工具問題。監(jiān)測(cè)模型可以從視頻源端到目的端之間任一段網(wǎng)絡(luò)中接入,監(jiān)測(cè)指定的視頻數(shù)據(jù)流,可以計(jì)算網(wǎng)絡(luò)延時(shí)參數(shù)。通過監(jiān)測(cè)曲線的變化來判斷引起視頻質(zhì)量問題的原因,及時(shí)發(fā)現(xiàn)網(wǎng)絡(luò)故障,提高故障處理效率,為進(jìn)一步優(yōu)化和部署IPTV的網(wǎng)絡(luò)提供客觀依據(jù)。
級(jí)別:部級(jí)期刊
榮譽(yù):中國(guó)優(yōu)秀期刊遴選數(shù)據(jù)庫
級(jí)別:部級(jí)期刊
榮譽(yù):中國(guó)期刊全文數(shù)據(jù)庫(CJFD)
級(jí)別:省級(jí)期刊
榮譽(yù):中國(guó)學(xué)術(shù)期刊(光盤版)全文收錄期刊
級(jí)別:部級(jí)期刊
榮譽(yù):中國(guó)優(yōu)秀期刊遴選數(shù)據(jù)庫
級(jí)別:部級(jí)期刊
榮譽(yù):中國(guó)優(yōu)秀期刊遴選數(shù)據(jù)庫