呂 翊,朱 博,吳大鵬
(1.重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065;2.重慶高校市級(jí)光通信與網(wǎng)絡(luò)重點(diǎn)實(shí)驗(yàn)室,重慶 400065;3.泛在感知與互聯(lián)重慶市重點(diǎn)實(shí)驗(yàn)室,重慶 400065)
隨著用戶對(duì)視頻業(yè)務(wù)的需求不斷增加,視頻業(yè)務(wù)在未來(lái)消耗的網(wǎng)絡(luò)資源將達(dá)到75%。為了保證視頻業(yè)務(wù)的高帶寬及良好的時(shí)延敏感特性,網(wǎng)絡(luò)必須擁有更加優(yōu)秀的承載能力[1-2]。光纖無(wú)線(Fiber-Wireless,F(xiàn)iWi)接入網(wǎng)絡(luò)是一種結(jié)合光網(wǎng)絡(luò)與無(wú)線接入方式的新型融合網(wǎng)絡(luò),其后端的無(wú)源光網(wǎng)絡(luò)(Passive Optical Network,PON)具有大容量、高帶寬的優(yōu)勢(shì),能夠保證視頻業(yè)務(wù)的高效傳輸,而前端無(wú)線網(wǎng)狀網(wǎng)絡(luò)(Wireless Mesh Network,WMN)的靈活性可以為用戶提供可移動(dòng)性的連接[3]。
研究表明,采用單路徑傳輸視頻數(shù)據(jù)容易導(dǎo)致網(wǎng)絡(luò)中出現(xiàn)瓶頸鏈路,進(jìn)而產(chǎn)生網(wǎng)絡(luò)擁塞;同時(shí)用戶的移動(dòng)性和無(wú)線信道的隨機(jī)性(例如多徑衰落和陰影效應(yīng))會(huì)導(dǎo)致鏈路傳輸能力具有時(shí)變特性,使得FiWi接入網(wǎng)絡(luò)難以提供令用戶滿意的體驗(yàn)質(zhì)量[4]。因此,為保證用戶的視頻傳輸需求和網(wǎng)絡(luò)在傳輸過(guò)程中的負(fù)載均衡,在視頻的多路徑傳輸中普遍應(yīng)用可擴(kuò)展視頻編碼(Scalable Video Coding,SVC)技術(shù)[5]??蓴U(kuò)展視頻編碼技術(shù)將視頻內(nèi)容編碼成多個(gè)層:以低比特率承載最重要信息的基礎(chǔ)層和一個(gè)或多個(gè)增強(qiáng)層,接收的視頻層數(shù)越多,相應(yīng)的視頻質(zhì)量越好[6]。FiWi網(wǎng)絡(luò)兩端的結(jié)構(gòu)不同,傳輸能力也存在較大的差異,后端無(wú)源光網(wǎng)絡(luò)雖然可以為日益增長(zhǎng)的帶寬需求提供良好的物理?xiàng)l件,但不能進(jìn)行大范圍的鋪設(shè);前端無(wú)線網(wǎng)狀網(wǎng)具有自組織、自愈的特性,能夠提供較大的通信范圍,有效地彌補(bǔ)了光網(wǎng)絡(luò)的缺點(diǎn),但是前端網(wǎng)絡(luò)的帶寬資源有限,容易出現(xiàn)負(fù)載不均衡的問(wèn)題[7]。對(duì)于數(shù)據(jù)量較大的視頻業(yè)務(wù),前端無(wú)線網(wǎng)狀網(wǎng)中的單路徑傳輸會(huì)增加節(jié)點(diǎn)隊(duì)列長(zhǎng)度和傳輸時(shí)延,進(jìn)而產(chǎn)生不必要的丟包,影響用戶體驗(yàn)質(zhì)量(Quality of Experience,QoE)和網(wǎng)絡(luò)負(fù)載均衡的性能[8]。文獻(xiàn)[9]將數(shù)據(jù)包丟失率、干擾和網(wǎng)關(guān)負(fù)載結(jié)合,形成新的路由度量,提出了一種新的路由和網(wǎng)關(guān)選擇方案,但未考慮帶寬利用率的度量,容易使網(wǎng)絡(luò)局部負(fù)載不均衡。文獻(xiàn)[10]提出一種視頻傳輸?shù)难舆t響應(yīng)擁塞控制算法,當(dāng)往返延遲信號(hào)超過(guò)閾值時(shí),通過(guò)降低發(fā)送速率緩解緩沖區(qū)的擁塞,避免數(shù)據(jù)的丟失,但缺乏對(duì)多路徑負(fù)載均衡的考慮。文獻(xiàn)[11]在多路徑傳輸中提出一種面向用戶體驗(yàn)質(zhì)量的速率分配方案,通過(guò)松弛函數(shù)將速率分配問(wèn)題轉(zhuǎn)化為無(wú)約束優(yōu)化問(wèn)題,并采用模式搜索方法得到最優(yōu)解,但視頻傳輸沒(méi)有對(duì)路徑進(jìn)行合理選擇。文獻(xiàn)[12]利用核心網(wǎng)中云服務(wù)器的存儲(chǔ)能力和計(jì)算能力收集網(wǎng)絡(luò)的狀態(tài),獲得視頻的多路徑傳輸策略,并聯(lián)合帶寬、延遲和差分延遲的約束處理視頻的多路徑傳輸,然而其低延遲僅能滿足網(wǎng)絡(luò)的服務(wù)質(zhì)量(Quality of Service,QoS)需求,而忽略了用戶體驗(yàn)質(zhì)量需求。以上解決方案主要采用了多路徑傳輸機(jī)制,一定程度地均衡了網(wǎng)絡(luò)的負(fù)載。但是,上述方案只是單一地考慮網(wǎng)絡(luò)服務(wù)質(zhì)量或者用戶端的體驗(yàn)質(zhì)量,存在一定的局限性。
筆者在FiWi網(wǎng)絡(luò)架構(gòu)下提出了一種負(fù)載均衡的視頻多路徑傳輸機(jī)制(Video Multipath Transmission mechanism with Load Balancing,VMTLB)。首先將網(wǎng)關(guān)利用率、鏈路剩余帶寬和鏈路帶寬利用率作為衡量網(wǎng)關(guān)和路徑可靠性的因素,并利用路徑可靠性改進(jìn)分裂多徑路由(Split Multipath Routing,SMR)協(xié)議,找出滿足條件的路徑;其次計(jì)算視頻在無(wú)線側(cè)的延遲和路徑差分延遲閾值并作為用戶體驗(yàn)的質(zhì)量約束條件;最后采用多級(jí)懲罰函數(shù)的粒子群優(yōu)化算法,在用戶體驗(yàn)質(zhì)量約束內(nèi)為不同的視頻質(zhì)量層選擇合適的路徑。
在無(wú)線網(wǎng)狀網(wǎng)中,多接口網(wǎng)關(guān)節(jié)點(diǎn)成為業(yè)務(wù)的交匯點(diǎn)與轉(zhuǎn)發(fā)點(diǎn),隨著視頻業(yè)務(wù)的急劇增長(zhǎng),網(wǎng)關(guān)節(jié)點(diǎn)的擁塞概率增大,進(jìn)而將導(dǎo)致整個(gè)無(wú)線網(wǎng)絡(luò)性能急劇下降。通信網(wǎng)絡(luò)的快速發(fā)展也使得網(wǎng)關(guān)存在多樣化,其接口數(shù)量、容量及處理速度的不一致,使得量化網(wǎng)關(guān)的標(biāo)準(zhǔn)存在差異性,因此網(wǎng)關(guān)節(jié)點(diǎn)的合理選擇已成為避免網(wǎng)絡(luò)性能下降的有效手段之一。傳統(tǒng)的網(wǎng)關(guān)負(fù)載均衡的目的主要是均衡網(wǎng)關(guān)接收的數(shù)據(jù)量,接收數(shù)據(jù)量的增加會(huì)對(duì)低容量網(wǎng)關(guān)產(chǎn)生較大的影響。筆者將網(wǎng)關(guān)利用率UG作為衡量其提供負(fù)載能力的指標(biāo):
(1)
其中,IG為網(wǎng)關(guān)G的接口數(shù)量,Lx、dx、mx分別表示網(wǎng)關(guān)G的單個(gè)接口可用容量、處理速度和最大容量。視頻數(shù)據(jù)接入無(wú)線網(wǎng)狀網(wǎng)時(shí)應(yīng)該選擇高可靠性的網(wǎng)關(guān)節(jié)點(diǎn),即選擇最大的UG。
1.2.1 瓶頸鏈路剩余帶寬
在無(wú)線網(wǎng)狀網(wǎng)中,如果鏈路的剩余帶寬很小,表明該鏈路的負(fù)載較大,容易出現(xiàn)鏈路擁塞和丟包的情況,甚至負(fù)載繼續(xù)增大至一定數(shù)值時(shí),鏈路的吞吐量會(huì)下降為零,造成“死鎖”現(xiàn)象,以致鏈路無(wú)法工作。為避免出現(xiàn)“死鎖”現(xiàn)象,在視頻傳輸前,應(yīng)考慮傳輸路徑中瓶頸鏈路的剩余帶寬。文中將路徑k的瓶頸鏈路剩余帶寬記為ek=min{ek1,ek2,…,ekn},其中ekz表示路徑k中第z條鏈路的剩余帶寬。
1.2.2 鏈路帶寬利用率
筆者將鏈路帶寬利用率作為負(fù)載均衡的主要影響因素。鏈路帶寬利用率Ukz的計(jì)算式為
Ukz=(pkz+dkz)/bkz,
(2)
其中,pkz和dkz表示單位時(shí)間內(nèi)路徑k中第z條鏈路的上行流量和下行流量,bkz表示路徑k中鏈路z的總帶寬。
無(wú)線網(wǎng)狀網(wǎng)具有移動(dòng)自組織網(wǎng)絡(luò)和無(wú)線局域網(wǎng)的優(yōu)勢(shì),因此無(wú)線網(wǎng)狀網(wǎng)仍然可以使用基于移動(dòng)自組織網(wǎng)絡(luò)的傳統(tǒng)路由協(xié)議[13]。筆者針對(duì)多路徑中負(fù)載不完全均衡的問(wèn)題,在移動(dòng)自組織網(wǎng)絡(luò)的分裂多徑路由協(xié)議基礎(chǔ)上進(jìn)行改進(jìn),考慮路徑帶寬利用率以及最小路徑帶寬因素。針對(duì)一條路徑中,其鏈路的帶寬利用率可能存在較大差異,網(wǎng)絡(luò)容易出現(xiàn)局部負(fù)載不均衡,對(duì)此給定閾值δ,使得路徑的鏈路帶寬利用率具有穩(wěn)定的范圍-δ≤max(U)-min(U)≤δ,其中max(U)與min(U)分別表示路徑所含鏈路的最大帶寬利用率與最小帶寬利用率。如圖1所示的5字節(jié)報(bào)文是筆者設(shè)計(jì)的帶寬利用率路由(Bandwidth Utilization Rate Routing,BURR)報(bào)文。圖1中,Source-ID為源節(jié)點(diǎn)的ID;Path-ID為用于標(biāo)識(shí)鏈路所屬路徑的編號(hào);MAX-LBU為用于標(biāo)識(shí)路徑目前最大的鏈路帶寬利用率;MIN-LBU為指明路徑目前最小的鏈路帶寬利用率;MIN-BW表示當(dāng)前路徑的最小帶寬。
圖1 帶寬利用率路由報(bào)文
圖2 最大不相交路徑選取模型
最大不相交路徑選取的步驟如圖2所示,具體說(shuō)明如下:
(1) 計(jì)算網(wǎng)關(guān)負(fù)載的可靠性(見(jiàn)式(1))并選擇可靠性最大的網(wǎng)關(guān)。
(2) 將選擇的網(wǎng)關(guān)視為源節(jié)點(diǎn)S,源節(jié)點(diǎn)S廣播路由請(qǐng)求(Route REQuest,RREQ)報(bào)文給Ay(y=1,2,3)路由器,路由器接收到請(qǐng)求后分別計(jì)算S、Ay的鏈路帶寬利用率以及鏈路剩余帶寬,并設(shè)置Path-ID編號(hào)。
(3) 接收到請(qǐng)求信息的路由器沿原路徑發(fā)送BURR報(bào)文給S。
(4) 中間節(jié)點(diǎn)接收到非副本的RREQ時(shí),它附加其節(jié)點(diǎn)ID并重新廣播報(bào)文(除去已接收RREQ的節(jié)點(diǎn)),如Ay將其路由器的ID添加進(jìn)RREQ報(bào)文繼續(xù)廣播至By。
(5) 路由器接收到請(qǐng)求后分別計(jì)算AyBy(y=1,2,3)的鏈路帶寬利用率以及鏈路剩余帶寬。
(6) 分別計(jì)算AyBy的鏈路帶寬利用率與路徑的max(U)、min(U)的差值δdmax、δdmin是否滿足閾值δ。若都小于閾值δ,便選擇最小max(δdmax,δdmin)所在的鏈路;若存在差值相等的情況,則選擇剩余鏈路帶寬最大的鏈路(如A1B1,A2B2,A3B3),并將其路由器ID賦予Path-ID字段內(nèi),其余鏈路被標(biāo)識(shí)為失效鏈路(如A2B1,A3B2);若大于閾值δ,則將AyBy標(biāo)識(shí)為失效鏈路。
(7) 當(dāng)鏈路帶寬利用率大于報(bào)文字段的MAX-LBU時(shí),將其值賦予MAX-LBU字段;當(dāng)鏈路帶寬利用率小于報(bào)文字段的MIN-LBU時(shí),將其值賦予MIN-LBU字段。
(8) 路由器沿原路徑發(fā)送BURR報(bào)文給S,重復(fù)(4),直至找到目的節(jié)點(diǎn)D。
在多路徑的視頻分發(fā)策略中,為了避免視頻播放過(guò)程中發(fā)生中斷以及等待播放延遲過(guò)長(zhǎng)的情況,選取用戶在無(wú)線側(cè)的路徑差分延遲閾值和容忍延遲閾值作為用戶體驗(yàn)質(zhì)量約束,并將其作為網(wǎng)絡(luò)負(fù)載均衡的約束條件。
(3)
(4)
多路徑傳輸存在路徑差分延遲D,即多條路徑中最大延遲與最小延遲的差值。為保證視頻傳輸業(yè)務(wù)不中斷,對(duì)路徑差分延遲設(shè)置閾值Dd。當(dāng)接收端緩沖區(qū)數(shù)據(jù)量低于播放門限σ時(shí),視頻會(huì)中斷播放并進(jìn)入重緩沖狀態(tài),直到數(shù)據(jù)緩存到視頻播放條件后重新播放。所以閾值Dd主要由用戶設(shè)備的存儲(chǔ)能力和視頻播放界限決定:
Dd=T[(C-σ)/An]。
(5)
An表示終端正在播放圖片組的數(shù)據(jù)量,并且必須接收一個(gè)完整的圖片組才能播放,先到達(dá)緩存區(qū)的質(zhì)量層會(huì)等待其余質(zhì)量層到達(dá),假設(shè)視頻以緩存區(qū)最大容量C通過(guò)An的速率消耗,當(dāng)緩存區(qū)容量消耗至播放門限σ,而同一圖片組的視頻層未到達(dá)緩沖區(qū)時(shí),視頻便會(huì)出現(xiàn)“卡頓”現(xiàn)象。為滿足用戶的播放體驗(yàn),多路徑傳輸需滿足路徑差分延遲小于閾值Dd,即D≤Dd。
視頻傳輸?shù)幕灸繕?biāo)是及時(shí)交付視頻,避免用戶的流失,因此視頻傳輸延遲需滿足在用戶容忍延遲閾值Tth內(nèi)。視頻傳輸?shù)亩说蕉搜舆t包括光纖傳輸延遲和編解碼的緩沖延遲、無(wú)線路徑延遲。
2.2.1 光纖傳輸延遲
視頻在光纖傳輸?shù)难舆ttfiber可表示為
(6)
其中,Ccloud表示光線路終端與服務(wù)器之間鏈路的剩余傳輸容量,并假定其傳輸容量與無(wú)源光網(wǎng)絡(luò)相同。
2.2.2 編解碼緩沖延遲
未壓縮的視頻首先以特定的幀速率進(jìn)入編碼器,壓縮后的圖片組退出視頻編碼器,并進(jìn)入編碼器出口緩沖區(qū)。相似地,在解碼器側(cè),壓縮圖片組離開(kāi)解碼器入口緩沖器并進(jìn)行解碼處理。文中將tencode和tdecode作為視頻編碼器和視頻解碼器的緩沖延遲,并且緩沖延遲是恒定的,將編碼和解碼的處理延遲忽略不計(jì),編解碼的緩沖延遲tbu可表示為
tbu=tencode+tdecode。
(7)
2.2.3 無(wú)線路徑延遲
(8)
其中,Nk和Zk分別表示路徑k的路由器數(shù)量和鏈路數(shù)量。視頻在傳輸過(guò)程中受到延遲閾值Tth的限制,由于光纖傳輸延遲和編解碼緩沖延遲是穩(wěn)定可靠的,因此無(wú)線側(cè)傳輸?shù)难舆t閾值twire-th可表示為
twire-th=Tth-tfiber-tbu。
(9)
多路徑傳輸廣泛應(yīng)用于無(wú)線網(wǎng)絡(luò),以實(shí)現(xiàn)負(fù)載均衡和擁塞控制,然而能否找到多個(gè)可以滿足視頻流帶寬要求的高可靠性路徑,并在可用路徑之間分發(fā)視頻流進(jìn)行多路徑傳輸,是多路徑傳輸面臨的主要挑戰(zhàn)。筆者利用粒子群優(yōu)化算法在網(wǎng)絡(luò)資源有限的情況下為視頻流中的質(zhì)量層選擇合適的路徑,使得路徑間的負(fù)載均衡度L最小,以達(dá)到最優(yōu)狀態(tài)。其目標(biāo)函數(shù)和約束條件可表示為:
(10)
D-Dd≤0,
(11)
twire-twire-th≤0,
(12)
(13)
(14)
其中,Ukz表示路徑k中第z條鏈路的帶寬利用率;ηkz表示在路徑k中鏈路z的權(quán)重比值,是由路徑k所有鏈路的帶寬利用率比值決定的。粒子群算法中用粒子表示可用方案,粒子適應(yīng)度用該粒子當(dāng)前位置對(duì)應(yīng)的目標(biāo)函數(shù)值表示,粒子的速度則表示算法的搜索步長(zhǎng),決定算法的最終優(yōu)化性能。每次迭代過(guò)程中,將粒子個(gè)體pbl與粒子群gbl的最優(yōu)解代入下式,進(jìn)行粒子位置xbl和速度vbl的更新,即
vbl=ωvbl+c1r(pbl-xbl)+c2r(gbl-xbl),
(15)
xjl=xjl+vjl,
(16)
其中,c1和c2為學(xué)習(xí)因子,主要反映粒子對(duì)自身最優(yōu)值和全局最優(yōu)值的學(xué)習(xí)能力;ω為權(quán)重系數(shù);r為[0,1]內(nèi)的隨機(jī)數(shù)。視頻流共有Mn個(gè)質(zhì)量層,每個(gè)粒子的當(dāng)前位置Xb=(xb1,xb2,…,xbMn)表示一種路徑分配方案,其中xbm表示第m層數(shù)據(jù)所選路徑;Pb=(pb1,pb2,…,pbMn)表示第b個(gè)粒子當(dāng)前搜索的最優(yōu)位置;G=(g1,g2,…,gMn)表示整個(gè)粒子群搜索到的最優(yōu)位置。文中將路徑的負(fù)載均衡度作為目標(biāo)函數(shù),但是目標(biāo)函數(shù)受約束條件限制,直接使用負(fù)載均衡度作為適應(yīng)度函數(shù),會(huì)產(chǎn)生許多粒子適應(yīng)度高但不滿足約束條件的情況,因此文中加入約束條件構(gòu)成懲罰函數(shù)f(x)。但是粒子群算法存在以下兩個(gè)問(wèn)題:①懲罰值過(guò)高時(shí),目標(biāo)函數(shù)容易收斂在局部值,懲罰值過(guò)低時(shí)難以找到最優(yōu)解;②目標(biāo)值與懲罰值的差異較大,難以區(qū)分可行解與非可行解。因此,設(shè)計(jì)了動(dòng)態(tài)變化的多級(jí)懲罰函數(shù)F(x),多級(jí)懲罰函數(shù)定義如下:
F(x)=g(i)G(x)。
(17)
為緩解動(dòng)態(tài)變化的多級(jí)懲罰函數(shù)導(dǎo)致復(fù)雜度過(guò)高,造成收斂速度較低的現(xiàn)象,需在懲罰函數(shù)中選定合適的懲罰因子。若懲罰因子過(guò)大,則容易造成算法較早收斂于局部最小值;若懲罰因子過(guò)小,則不但造成所解值不是最優(yōu)目標(biāo)值,還會(huì)使得收斂速度過(guò)小。因此,將多級(jí)懲罰函數(shù)的懲罰因子g(i)設(shè)置為i1/2,i表示算法的迭代次數(shù)。由于冪函數(shù)的內(nèi)在性質(zhì),懲罰因子隨著迭代次數(shù)增加而增大,使得在最后階段仍有較好的收斂速度,保證算法的全局搜索能力。G(x)表示約束條件構(gòu)成的函數(shù):
(18)
p(x)=max{0,f(x)},
(19)
其中,s表示約束函數(shù)的數(shù)量,γ(p(x))表示單個(gè)懲罰函數(shù)的級(jí)數(shù)。當(dāng)p(x)<1時(shí),懲罰函數(shù)的級(jí)數(shù)為1;當(dāng)p(x)≥1時(shí),級(jí)數(shù)為2。
文中將目標(biāo)函數(shù)Lnew和懲罰函數(shù)Fnew(x)定義如下:
Lnew=(L-Lmin)/(Lmax-Lmin),
(20)
Fnew(x)=(Fmax(x)-F(x))/Fmax(x),
(21)
其中,Lmax,Lmin表示負(fù)載均衡度的最大值和最小值,F(xiàn)max(x)表示個(gè)體違反約束條件的最大值。Lnew越小,其負(fù)載均衡度越好;相似地,F(xiàn)new(x)越小,約束滿足越高。因此適應(yīng)度函數(shù)可以為
V=Lnew+Fnew(x)。
(22)
視頻流分發(fā)策略步驟如下:
(1) 基于分裂多徑路由改進(jìn)協(xié)議選擇符合條件的多條路徑。
(2) 初始化,包括種群規(guī)模,慣性權(quán)重ω,加速因子τ1、τ2,粒子個(gè)數(shù)Y,粒子維度J,最大迭代次數(shù)I。
(3) 根據(jù)粒子個(gè)數(shù)和粒子維度生成初始種群。
(4) 判斷迭代次數(shù)是否滿足條件,如果滿足條件則開(kāi)始計(jì)算粒子適應(yīng)度函數(shù)(見(jiàn)式(22)),更新粒子序列,計(jì)算種群個(gè)體極值與全局極值(P,G),更新粒子速度和位置以及粒子適應(yīng)度(見(jiàn)式(15)、(16)、(22))。
(5) 如果經(jīng)過(guò)i次迭代后粒子的全局適應(yīng)度Vb(Gm)變化幅度小于設(shè)置的閾值ψ,則適應(yīng)度函數(shù)達(dá)到最優(yōu)值,迭代結(jié)束,否則重復(fù)步驟(4)。
采用NS2仿真平臺(tái)對(duì)文中所提機(jī)制進(jìn)行驗(yàn)證,選取文獻(xiàn)[15]提出的吞吐能力感知負(fù)載分發(fā)(Goodput-Aware Load Distribution,GALTON)、文獻(xiàn)[16]提出的增強(qiáng)延遲控制負(fù)載分發(fā)(Enhanced-Delay Controlled Load Distribution,E-DCLD)和文獻(xiàn)[17]提出的延遲-能量-質(zhì)量感知多路徑(Delay-Energy-Quality Aware Multipath,DEQAM)算法作為對(duì)比算法。網(wǎng)絡(luò)拓?fù)浒?個(gè)光線路終端,4個(gè)光網(wǎng)絡(luò)單元-基站,4個(gè)網(wǎng)關(guān),64個(gè)路由器。在粒子群算法中,設(shè)置種群規(guī)模為20,迭代次數(shù)為40,慣性權(quán)重ω為0.8,加速因子τ1、τ2為2。
為避免視頻傳輸延遲過(guò)長(zhǎng)以及視頻播放發(fā)生中斷所造成用戶放棄播放視頻的現(xiàn)象,將傳輸延遲和差分延遲作為用戶滿意度的影響參數(shù)。在用戶觀看視頻時(shí),相比傳輸延遲,中斷會(huì)給用戶帶來(lái)更大的影響,因此將用戶滿意度設(shè)置為η=ρ1[1-(Twire/Twire-th)]+ρ2[1-(D/Dd)],并設(shè)ρ1=0.4,ρ2=0.6。圖3反映了用戶滿意度與網(wǎng)絡(luò)負(fù)載的關(guān)系:網(wǎng)絡(luò)負(fù)載較小時(shí),用戶傳輸延遲和路徑差分延遲較低,用戶滿意度較為平穩(wěn);當(dāng)負(fù)載達(dá)到20 Mb/s時(shí),排隊(duì)將超出閾值,造成數(shù)據(jù)重傳,傳輸延遲與差分延遲迅速增大,用戶滿意度下降較快;網(wǎng)絡(luò)負(fù)載增至35 Mb/s時(shí),由于數(shù)據(jù)丟失,網(wǎng)關(guān)將調(diào)整各路徑的發(fā)送速率,緩解差分延遲過(guò)度增加的現(xiàn)象,用戶滿意度下降幅度逐漸減小。筆者提出的VMTLB算法充分考慮無(wú)線側(cè)的延遲和路徑差分延遲,從而可以更加合理地分配帶寬資源,減少傳輸延遲與差分延遲,提升視頻傳輸?shù)挠行?。而另?種算法在多路徑選取模型中,忽略了差分延遲過(guò)大將導(dǎo)致緩沖區(qū)數(shù)據(jù)幀丟失的情況,其差分延遲將隨著網(wǎng)絡(luò)負(fù)載增大而快速增加,最終使得用戶滿意度的下降幅度高于所提算法。仿真結(jié)果表明,相比另外3種算法,筆者提出的算法提高了約6.2%的用戶滿意度。
圖4反映了視頻播放中斷概率與網(wǎng)絡(luò)負(fù)載之間的關(guān)系。網(wǎng)絡(luò)負(fù)載較低時(shí),路徑剩余帶寬較大,中斷概率隨負(fù)載增加呈上升趨勢(shì),4種算法的中斷概率相差不大。當(dāng)網(wǎng)絡(luò)負(fù)載達(dá)到20 Mb/s時(shí),隨著網(wǎng)絡(luò)負(fù)載的繼續(xù)增大,剩余帶寬緊缺,導(dǎo)致排隊(duì)延遲增加,路徑間的差分延遲變大,從而使中斷概率上升幅度較大。VMTLB算法上升幅度和整體中斷概率均低于3種對(duì)比算法,因?yàn)樵撍惴ㄔ谶x擇路徑組合時(shí),充分考慮了用戶設(shè)備緩存區(qū)的差分延遲閾值,從而避免了緩存區(qū)上溢,有效降低了視頻播放的中斷概率。
在多路徑傳輸過(guò)程中,可用路徑數(shù)量直接影響視頻的傳輸與接收性能。圖5反映了不同路徑數(shù)量下的端到端延遲,針對(duì)固定的視頻數(shù)據(jù),可用路徑數(shù)量的增加,能夠有效緩解在視頻傳輸過(guò)程中因緩沖區(qū)排隊(duì)而使延遲增加的現(xiàn)象。路徑越多,可用帶寬越充足,排隊(duì)引起的延遲受路徑數(shù)量的影響越小,因此延遲下降梯度逐漸減小。VMTLB算法的延遲略高于其余對(duì)比算法,但其延遲仍在用戶可接受范圍內(nèi)。延遲略高的原因主要在于該算法是在用戶容忍的無(wú)線側(cè)延遲和差分延遲內(nèi),在滿足路徑間負(fù)載均衡差異最小的前提下對(duì)視頻分發(fā)傳輸,充分考慮到了網(wǎng)絡(luò)的負(fù)載均衡和用戶的體驗(yàn)質(zhì)量。
路徑間的負(fù)載差異度設(shè)置為L(zhǎng)d=[(L/K)-min(B)]/min(B),圖6描述了路徑負(fù)載差異度與可用路徑數(shù)量的關(guān)系,當(dāng)路徑數(shù)量為1時(shí),不存在路徑負(fù)載差異;路徑數(shù)量增至兩條時(shí),增加的路徑可以顯著分擔(dān)數(shù)據(jù)傳輸任務(wù),但由于兩條路徑的可用容量不一致,差異度變化明顯。隨著可用路徑數(shù)量的不斷增加,每條路徑實(shí)際傳輸?shù)臄?shù)據(jù)量不斷減小,各路徑之間的負(fù)載差異度逐漸減少,并趨于平穩(wěn)狀態(tài),但由于路徑帶寬利用率和路徑可用帶寬的差異,差異度趨于一個(gè)固定的非零值。VMTLB算法的路徑負(fù)載差異度優(yōu)于其他對(duì)比算法,主要是該算法的多路徑選取模型考慮了單條路徑的鏈路帶寬利用率差異較大的問(wèn)題,設(shè)定閾值使得路徑的鏈路帶寬利用率具有穩(wěn)定的范圍,避免網(wǎng)絡(luò)出現(xiàn)局部負(fù)載差異過(guò)大的現(xiàn)象,并且設(shè)定延遲閾值來(lái)保證視頻數(shù)據(jù)合理分配給傳輸路徑,有效降低了路徑間的負(fù)載差異度。
圖3 用戶滿意度對(duì)比
圖4 中斷概率對(duì)比
圖5 端到端延遲對(duì)比
圖7顯示了平均端到端延遲與業(yè)務(wù)數(shù)量之間的關(guān)系。隨著業(yè)務(wù)數(shù)量的增加,業(yè)務(wù)的平均端到端延遲也逐漸增加。業(yè)務(wù)數(shù)量低于4時(shí),延遲增長(zhǎng)相對(duì)較平緩,原因主要在于當(dāng)業(yè)務(wù)數(shù)量較低時(shí),路徑可用帶寬充足,業(yè)務(wù)量增長(zhǎng)對(duì)延遲的影響較低,4種算法在業(yè)務(wù)數(shù)量較低時(shí)的延遲相差不大。隨著業(yè)務(wù)量的增長(zhǎng),延遲上升趨勢(shì)愈加明顯,但VMTLB算法的延遲逐漸低于其余3種算法,因?yàn)樵跇I(yè)務(wù)數(shù)量較大時(shí),該算法能夠充分考慮傳輸路徑中各鏈路的帶寬利用率,有效避免了利用率差值較大從而使瓶頸鏈路排隊(duì)延遲大幅增加的現(xiàn)象。不僅如此,在無(wú)線側(cè)傳輸中,該算法也考慮了差分延遲及容忍延遲因素,能夠選擇適應(yīng)度最優(yōu)的路徑,所以在面對(duì)較大業(yè)務(wù)量時(shí),所提算法的性能更佳。
圖8反映了不同算法獲得的路徑負(fù)載差異度與迭代次數(shù)之間的關(guān)系。由圖8可看出,不同算法在初始時(shí)刻的收斂速度較高,使得負(fù)載差異度迅速下降。但隨著迭代次數(shù)的增加,對(duì)比算法的收斂速度逐漸降低,得到的路徑負(fù)載差異度也慢慢趨于穩(wěn)定值;而筆者所提算法收斂速度的下降幅度變化較小,當(dāng)?shù)?0次左右便得到穩(wěn)定的路徑負(fù)載差異度,其迭代次數(shù)低于其他算法的迭代次數(shù);這主要原因是視頻分發(fā)采用的粒子群優(yōu)化算法本身具有收斂速度快的性質(zhì),并且設(shè)置的動(dòng)態(tài)變化懲罰因子避免了多級(jí)懲罰函數(shù)粒子群優(yōu)化算法在后期造成收斂速度慢的狀況,可以較快地獲得最優(yōu)解。
圖6 路徑負(fù)載差異度對(duì)比
圖7 平均端到端延遲對(duì)比
圖8 路徑負(fù)載差異度對(duì)比
為充分利用網(wǎng)絡(luò)資源,提升網(wǎng)絡(luò)負(fù)載均衡性能,在FiWi網(wǎng)絡(luò)架構(gòu)下,筆者提出一種負(fù)載均衡的視頻多路徑傳輸機(jī)制。首先確定路徑可靠性能因素,并改進(jìn)分裂多徑路由協(xié)議,獲得滿足條件的路徑;其次計(jì)算用戶在無(wú)線側(cè)容忍的延遲和路徑差分延遲并作為限制條件;最后采用多級(jí)懲罰函數(shù)的粒子群優(yōu)化算法分發(fā)視頻以提升網(wǎng)絡(luò)的負(fù)載均衡。仿真結(jié)果表明,所提機(jī)制不僅可以保證用戶在容忍延遲內(nèi)有效接收視頻,還能夠有效提升網(wǎng)絡(luò)的負(fù)載均衡性能。