黃 勝 郝言明 姜良浩 鄭丹玲
(重慶郵電大學(xué)光通信與網(wǎng)絡(luò)重點(diǎn)實(shí)驗(yàn)室 重慶 400065)
命名數(shù)據(jù)網(wǎng)絡(luò)中基于自適應(yīng)轉(zhuǎn)發(fā)的擁塞控制機(jī)制
黃 勝 郝言明 姜良浩 鄭丹玲
(重慶郵電大學(xué)光通信與網(wǎng)絡(luò)重點(diǎn)實(shí)驗(yàn)室 重慶 400065)
為了提高命名數(shù)據(jù)網(wǎng)絡(luò)NDN(Named Data Networking)中視頻數(shù)據(jù)的可靠傳輸,站在客戶(hù)端的角度,提出一種基于自適應(yīng)轉(zhuǎn)發(fā)的擁塞控制機(jī)制AFCCP(Adaptive Forward Congestion Control Policy)。AFCCF以網(wǎng)絡(luò)丟包最小化為目標(biāo),為接口的選擇建立馬爾科夫模型,通過(guò)前一時(shí)間間隔鏈路的狀態(tài),自適應(yīng)地選擇最佳的轉(zhuǎn)發(fā)接口,減少興趣包向擁塞鏈路的轉(zhuǎn)發(fā),降低網(wǎng)內(nèi)的丟包數(shù)目,實(shí)現(xiàn)網(wǎng)絡(luò)擁塞控制。在此基礎(chǔ)上,AFCCF針對(duì)視頻數(shù)據(jù)內(nèi)部屬性,考慮解碼端特點(diǎn),在網(wǎng)絡(luò)發(fā)生丟包時(shí),選擇性地對(duì)數(shù)據(jù)包丟棄,實(shí)現(xiàn)視頻內(nèi)部重要數(shù)據(jù)的可靠傳輸。仿真結(jié)果表明,AFCCP在較低時(shí)延的條件下,實(shí)現(xiàn)網(wǎng)絡(luò)較小的丟包率,增加用戶(hù)接收數(shù)據(jù)包的數(shù)量,從而改善用戶(hù)獲取數(shù)據(jù)體驗(yàn)。
命名數(shù)據(jù)網(wǎng)絡(luò) 自適應(yīng) 丟包最小化 馬爾科夫 擁塞控制 可靠傳輸
隨著網(wǎng)絡(luò)的發(fā)展,通信方式的轉(zhuǎn)變,內(nèi)容化是互聯(lián)網(wǎng)發(fā)展的方向;命名數(shù)據(jù)網(wǎng)絡(luò)NDN是一種以?xún)?nèi)容為中心的全新的互聯(lián)網(wǎng)體系架構(gòu)[1-2],在NDN中,數(shù)據(jù)的請(qǐng)求方式基于客戶(hù)端驅(qū)動(dòng),即用戶(hù)發(fā)送興趣包(Interest),進(jìn)行名字路由獲取數(shù)據(jù),數(shù)據(jù)按照Interest請(qǐng)求路徑原路返回。NDN通過(guò)調(diào)節(jié)客戶(hù)端的發(fā)送速率實(shí)現(xiàn)網(wǎng)絡(luò)的控制傳輸。視頻業(yè)務(wù)是網(wǎng)絡(luò)的主流業(yè)務(wù),丟包、時(shí)延對(duì)視頻傳輸有較大的影響,實(shí)現(xiàn)NDN中視頻數(shù)據(jù)的高效、可靠地傳輸具有重要意義[3]。
用戶(hù)的突發(fā)請(qǐng)求,網(wǎng)絡(luò)資源不足等原因,可能導(dǎo)致網(wǎng)絡(luò)發(fā)生擁塞。NDN中每個(gè)Interest包有唯一的Data包與之對(duì)應(yīng)[2],但I(xiàn)nterest包的容量遠(yuǎn)遠(yuǎn)小于Data包的容量,鏈路帶寬被Data包占用[4],本文通過(guò)Data包對(duì)鏈路帶寬的占用和接口發(fā)送Interest包的速率判斷網(wǎng)絡(luò)擁塞情況以及通過(guò)接口Data包隊(duì)列的占用比預(yù)測(cè)將發(fā)生丟失的Data包。NDN擁塞模型如圖1所示[4],Interest包從對(duì)應(yīng)轉(zhuǎn)發(fā)接口的輸出隊(duì)列Q1轉(zhuǎn)發(fā)至上游節(jié)點(diǎn),Data包在節(jié)點(diǎn)轉(zhuǎn)發(fā)之前需要進(jìn)入對(duì)應(yīng)接口的輸出隊(duì)列Q2排隊(duì),Data包等待轉(zhuǎn)發(fā)。在Data包傳輸過(guò)程中,鏈路帶寬被Data包占用。本文以接口發(fā)送Interest包速率大于上游鏈路允許可用帶寬作為網(wǎng)絡(luò)擁塞標(biāo)識(shí),通過(guò)接口Data包隊(duì)列的占用比預(yù)測(cè)將要發(fā)生丟失的Data包。針對(duì)上述NDN擁塞模型,文獻(xiàn)[4]提出基于顯式反饋擁塞控制算法。該策略通過(guò)主動(dòng)統(tǒng)計(jì)網(wǎng)絡(luò)中間節(jié)點(diǎn)的接口隊(duì)列長(zhǎng)度來(lái)檢測(cè)網(wǎng)絡(luò)擁塞水平,并顯式地反饋給客戶(hù)端。客戶(hù)端調(diào)整Interest包的發(fā)送速率,從而控制Data包的轉(zhuǎn)發(fā)速率,實(shí)現(xiàn)網(wǎng)絡(luò)擁塞控制。文獻(xiàn)[5]提出的CHoPCoP機(jī)制主要是通過(guò)ECN通告接收端發(fā)生擁塞的路徑。文獻(xiàn)[6]提出的ICP機(jī)制,該機(jī)制是客戶(hù)端通過(guò)RTT控制興趣包的發(fā)送速率,但對(duì)于NDN數(shù)據(jù)的多源性,RTT是變化的。文獻(xiàn)[7]提出的隨機(jī)丟棄興趣包,實(shí)現(xiàn)網(wǎng)絡(luò)擁塞控制,該機(jī)制主要是當(dāng)網(wǎng)絡(luò)發(fā)生擁塞時(shí),節(jié)點(diǎn)隨機(jī)丟棄興趣包,減少對(duì)應(yīng)節(jié)點(diǎn)興趣包的發(fā)送速率。文獻(xiàn)[8]為基于流行度的擁塞控制機(jī)制,當(dāng)網(wǎng)絡(luò)發(fā)生擁塞時(shí),將不流行的數(shù)據(jù)所對(duì)應(yīng)的興趣包丟棄,實(shí)現(xiàn)網(wǎng)絡(luò)的擁塞控制。

圖1 NDN擁塞模型
針對(duì)視頻數(shù)據(jù)實(shí)時(shí)性要求,以及視頻數(shù)據(jù)在客戶(hù)端解碼時(shí)需要參考重要幀的特性[9],本文站在用戶(hù)獲取數(shù)據(jù)的角度,以最大化用戶(hù)接收數(shù)據(jù)包數(shù)量為目標(biāo),結(jié)合視頻數(shù)據(jù)內(nèi)部特性,對(duì)視頻內(nèi)部重要數(shù)據(jù)保護(hù),實(shí)現(xiàn)視頻數(shù)據(jù)在NDN中的控制傳輸。在興趣包轉(zhuǎn)發(fā)的過(guò)程中避免向擁塞鏈路的轉(zhuǎn)發(fā),自適應(yīng)的選擇網(wǎng)絡(luò)性能最佳轉(zhuǎn)發(fā)接口,實(shí)現(xiàn)不同視頻流對(duì)應(yīng)興趣包的自適應(yīng)轉(zhuǎn)發(fā),從而實(shí)現(xiàn)較小的網(wǎng)絡(luò)丟包;在數(shù)據(jù)包傳輸過(guò)程中發(fā)生丟包時(shí),對(duì)重要NALU(Network Abstract Layer Unit)[9]進(jìn)行保護(hù),實(shí)現(xiàn)重要NALU的可靠傳輸。
本文的主要思想是以最小化網(wǎng)內(nèi)丟包為目標(biāo),通過(guò)控制節(jié)點(diǎn)接口轉(zhuǎn)發(fā)興趣包的速率,自適應(yīng)地選擇最佳鏈路進(jìn)行興趣包的轉(zhuǎn)發(fā)。興趣包在轉(zhuǎn)發(fā)的過(guò)程中,根據(jù)馬爾科夫模型自適應(yīng)地選擇接口實(shí)現(xiàn)興趣包的轉(zhuǎn)發(fā),避免興趣包向擁塞鏈路的轉(zhuǎn)發(fā),減少網(wǎng)內(nèi)丟失數(shù)據(jù)包的數(shù)目。在數(shù)據(jù)包轉(zhuǎn)發(fā)的過(guò)程中,網(wǎng)絡(luò)發(fā)生擁塞,數(shù)據(jù)包轉(zhuǎn)發(fā)接口的隊(duì)列被占滿時(shí),將導(dǎo)致數(shù)據(jù)包丟失。但本文對(duì)將要發(fā)生丟失數(shù)據(jù)包進(jìn)行判斷,將視頻內(nèi)部非重要或者非參考NALU所對(duì)應(yīng)的數(shù)據(jù)包丟棄,對(duì)重要NALU進(jìn)行保護(hù),實(shí)現(xiàn)重要NALU的可靠傳輸。本文提出的控制傳輸機(jī)制,以客戶(hù)端獲取數(shù)據(jù)體驗(yàn)為出發(fā)點(diǎn),提高視頻數(shù)據(jù)在NDN中的傳輸效率,改善用戶(hù)獲取數(shù)據(jù)體驗(yàn)。
1.1 模型的建立與分析
針對(duì)NDN中視頻數(shù)據(jù)的傳輸,本文在不采用重傳機(jī)制的條件下,以最大化客戶(hù)端接收數(shù)據(jù)包的數(shù)量為目標(biāo),實(shí)現(xiàn)視頻數(shù)據(jù)的控制傳輸。從而將以最大化客戶(hù)端接收數(shù)據(jù)包的數(shù)量轉(zhuǎn)化成最小化網(wǎng)內(nèi)丟包,目標(biāo)函數(shù)如式(1)所示:
(1)
其中:M表示節(jié)點(diǎn)的個(gè)數(shù),N表示節(jié)點(diǎn)通往上游的接口數(shù)目,ai(t)、bi(t)分別表示接口的發(fā)送和接收速度。
由目標(biāo)函數(shù)可知,通過(guò)控制接口的發(fā)送速率和接收速率的差值實(shí)現(xiàn)最優(yōu)化,即控制興趣包向擁塞鏈路的轉(zhuǎn)發(fā),實(shí)現(xiàn)興趣包最佳接口的自適應(yīng)轉(zhuǎn)發(fā)。為興趣包選擇轉(zhuǎn)發(fā)接口建立馬爾科夫模型,將節(jié)點(diǎn)向上游轉(zhuǎn)發(fā)的不同接口作為不同的狀態(tài),如圖2所示。

圖2 接口狀態(tài)
節(jié)點(diǎn)node存在3個(gè)轉(zhuǎn)發(fā)至上游鏈路的接口,分別為face_1,face_2,face_3,三個(gè)接口分別對(duì)應(yīng)狀態(tài)1、狀態(tài)2、狀態(tài)3。當(dāng)前時(shí)刻興趣包選擇哪個(gè)接口向上游鏈路轉(zhuǎn)發(fā)只與前一時(shí)刻鏈路的狀態(tài)有關(guān)。接口的狀態(tài)轉(zhuǎn)移概率矩陣P:
其中:N表示節(jié)點(diǎn)轉(zhuǎn)發(fā)至上游鏈路的接口數(shù),pij表示由接口i轉(zhuǎn)發(fā)興趣包轉(zhuǎn)換成接口j的轉(zhuǎn)移概率。
1.2 興趣包自適應(yīng)選擇接口轉(zhuǎn)發(fā)的實(shí)現(xiàn)
為實(shí)現(xiàn)興趣包的自適應(yīng)轉(zhuǎn)發(fā),避免興趣包向擁塞鏈路的轉(zhuǎn)發(fā),在最小化丟包的條件下實(shí)現(xiàn)網(wǎng)絡(luò)的控制傳輸。該機(jī)制的實(shí)現(xiàn)需要為數(shù)據(jù)包添加一個(gè)字段,即接口上游鏈路最大允許發(fā)送速率。數(shù)據(jù)包被轉(zhuǎn)發(fā)至第一個(gè)節(jié)點(diǎn)時(shí),將該接口的發(fā)送速率添加到該字段。在數(shù)據(jù)包轉(zhuǎn)發(fā)的過(guò)程中,如果接口允許的最大發(fā)送速率小于攜帶的發(fā)送速率,則更新數(shù)據(jù)包攜帶的發(fā)送速率,否則將攜帶的發(fā)送速率記錄在節(jié)點(diǎn)對(duì)應(yīng)的接口內(nèi),其中接口最大允許發(fā)送速度的更新時(shí)間為Δ(t)。用f(t)表示當(dāng)前時(shí)刻接口的狀態(tài),當(dāng)接口發(fā)送興趣包的速率大于當(dāng)前時(shí)間段上游鏈路中瓶頸帶寬最大允許的發(fā)送速率時(shí)f(t)=0,否則f(t)=1,如式(2)所示:
(2)
其中:vs(t)表示對(duì)應(yīng)接口當(dāng)前時(shí)間的發(fā)送速率,vi(t)表示由該節(jié)點(diǎn)對(duì)應(yīng)的接口通往上游鏈路中在時(shí)間t時(shí)最大的允許發(fā)送速度,vi(t)如式(3)、式(4)所示:

(3)

(4)
其中:Δt表示更新統(tǒng)計(jì)接口最大允許發(fā)送速度的時(shí)間間隔,B表示鏈路帶寬,vrd(t)表示接口接收數(shù)據(jù)包的速度,sizei表示興趣包的大小,sized表示數(shù)據(jù)包的大小。
由于NDN網(wǎng)內(nèi)節(jié)點(diǎn)固有的緩存特性,在興趣包的轉(zhuǎn)發(fā)過(guò)程中,請(qǐng)求可以在中間節(jié)點(diǎn)被響應(yīng),所以距離服務(wù)端遠(yuǎn)(跳數(shù)多)的轉(zhuǎn)發(fā)路徑并不代表獲取數(shù)據(jù)需要的時(shí)間大于距離服務(wù)器近的轉(zhuǎn)發(fā)路徑。本文在選擇接口轉(zhuǎn)發(fā)時(shí),統(tǒng)計(jì)前一時(shí)刻同一視頻文件在不同接口轉(zhuǎn)發(fā)的往返時(shí)延,針對(duì)不同的視頻流,選擇該視頻流往返時(shí)延最小的轉(zhuǎn)發(fā)接口。在節(jié)點(diǎn)對(duì)應(yīng)的接口上統(tǒng)計(jì)不同視頻流請(qǐng)求數(shù)據(jù)的平均往返時(shí)延為RTTf,當(dāng)一段視頻流第一次選擇某一接口進(jìn)行興趣包的轉(zhuǎn)發(fā)時(shí),將RTTf=RTTavg,RTTavg為不同接口對(duì)應(yīng)所有視頻流的平均往返時(shí)延,計(jì)算公式如下:

(5)

(6)
其中:STfi、ATfi分別表示接口的發(fā)送和接收f(shuō)i的時(shí)間,num表示接口周期內(nèi)收到每個(gè)視頻流內(nèi)部數(shù)據(jù)包個(gè)數(shù),NUM表示接口周期內(nèi)接不同視頻流數(shù)目。
在興趣包轉(zhuǎn)發(fā)的過(guò)程中,統(tǒng)計(jì)接口對(duì)應(yīng)上游鏈路帶寬的承受能力為Bable(t)(分母表示在時(shí)間段內(nèi)帶寬的消耗強(qiáng)度,分子表示當(dāng)前時(shí)刻可用帶寬):

(7)
其中:B(t)=B-vrd(t),B表示鏈路帶寬,vrd(t)接口接收數(shù)據(jù)包的速度。
設(shè)置中間函數(shù)如下:

(8)
其中:α、φ分別表示接口獲取數(shù)據(jù)包的往返時(shí)延和帶寬承受能力的權(quán)重因子,m(?)表示每個(gè)接口?的中間函數(shù)。
對(duì)每個(gè)節(jié)點(diǎn)的N個(gè)向上游鏈路轉(zhuǎn)發(fā)的接口進(jìn)行歸一化:

(9)
根據(jù)馬爾科夫模型,興趣包在轉(zhuǎn)發(fā)的過(guò)程中選擇最佳的轉(zhuǎn)發(fā)接口,避免興趣包向擁塞鏈路的轉(zhuǎn)發(fā),從而實(shí)現(xiàn)網(wǎng)絡(luò)的控制傳輸,其中轉(zhuǎn)移概率pij為:

(10)

興趣包在轉(zhuǎn)發(fā)的過(guò)程中,每個(gè)節(jié)點(diǎn)對(duì)應(yīng)的接口以時(shí)間間隔Δt統(tǒng)計(jì)更新信息,比如接口當(dāng)前時(shí)間的最大允許發(fā)送速率,對(duì)應(yīng)的平均往返時(shí)延等。興趣包在轉(zhuǎn)發(fā)的過(guò)程中,根據(jù)馬爾科夫模型選擇網(wǎng)絡(luò)性能最佳的接口進(jìn)行興趣包的轉(zhuǎn)發(fā)。在興趣包轉(zhuǎn)發(fā)的過(guò)程中,查看對(duì)應(yīng)的視頻流的條目是否存在FIB中,如果存在,直接按照選定的轉(zhuǎn)發(fā)接口進(jìn)行轉(zhuǎn)發(fā),如果選擇轉(zhuǎn)發(fā)的接口不在FIB,則先將選擇的接口添加至FIB中,從而實(shí)現(xiàn)興趣包的轉(zhuǎn)發(fā);如果對(duì)應(yīng)的興趣包條目不存在FIB中,則需要將興趣包的名字前綴以及已選擇的接口添加到FIB中,從而實(shí)現(xiàn)在本地的轉(zhuǎn)發(fā)。數(shù)據(jù)包在轉(zhuǎn)發(fā)的過(guò)程中,數(shù)據(jù)包攜帶上游鏈路的最大允許的發(fā)送速率,節(jié)點(diǎn)對(duì)應(yīng)的接口記錄對(duì)應(yīng)上游鏈路的最大允許發(fā)送速率,通過(guò)比較接口當(dāng)前的發(fā)送速率與接口對(duì)應(yīng)上游鏈路的最大允許發(fā)送速率的值更新接口的狀態(tài)。
興趣包自適應(yīng)轉(zhuǎn)發(fā)的算法實(shí)現(xiàn):
Interest forward
1: the face will compute the max allowed send speed of the upstream link in △t
2: the forward face will sign the max allowed speed of the upstream link and update carried send speed of Data;
3: statistics the face information, such as RTT
4: Interest choose forward face by Markov
5: if the Fib entry exist FIB then forward the Interest by selected optimal face;
6: else append(prefix ,face)to FIB and forward Interest.
1.3 重要數(shù)據(jù)包可靠傳輸?shù)膶?shí)現(xiàn)
在數(shù)據(jù)包轉(zhuǎn)發(fā)的過(guò)程中,當(dāng)網(wǎng)絡(luò)發(fā)生擁塞導(dǎo)致數(shù)據(jù)包丟失時(shí),則將視頻內(nèi)部非重要或者非參考NALU所對(duì)應(yīng)的數(shù)據(jù)包丟棄。對(duì)于視頻數(shù)據(jù)的傳輸,需要對(duì)視頻編碼后才可以進(jìn)行傳輸,采用HEVC(High Effective Video Code)壓縮后的視頻碼流由NALU組成。NALU具有不同的類(lèi)型,NALU頭部包含其類(lèi)型信息,壓縮后的視頻碼流之間存在參考和依賴(lài)關(guān)系。在解碼端,普通的NALU需要參考重要類(lèi)型的NALU(參數(shù)集NALU,I幀對(duì)應(yīng)的NALU)才能正確的解碼。本文在對(duì)視頻數(shù)據(jù)傳輸?shù)倪^(guò)程中,考慮視頻數(shù)據(jù)內(nèi)部重要性的不同,在網(wǎng)絡(luò)發(fā)生丟包時(shí),對(duì)重要數(shù)據(jù)進(jìn)行保護(hù),改善用戶(hù)獲取數(shù)據(jù)體驗(yàn),為數(shù)據(jù)包添加重要標(biāo)識(shí)位,如圖3所示。網(wǎng)絡(luò)發(fā)生丟包判斷,當(dāng)Pqueue=1時(shí),數(shù)據(jù)包在轉(zhuǎn)發(fā)的過(guò)程中出現(xiàn)丟包。當(dāng)數(shù)據(jù)包到達(dá),若Pqueue<1,正常轉(zhuǎn)發(fā);否則,判斷到達(dá)的數(shù)據(jù)包是否攜帶有重要標(biāo)志位,如果沒(méi)有直接丟棄;若有,判斷隊(duì)列尾部中等待轉(zhuǎn)發(fā)的數(shù)據(jù)包是否為重要數(shù)據(jù)包,如果不是,則將對(duì)尾數(shù)據(jù)刪除,轉(zhuǎn)發(fā)到達(dá)的數(shù)據(jù)包,如果是重要數(shù)據(jù)包,則重新判斷隊(duì)列中其他數(shù)據(jù)。
Pqueue=Qcountdata/Queuelength
(11)
其中:Qcountdata表示接口隊(duì)列中排隊(duì)等待轉(zhuǎn)發(fā)的數(shù)據(jù)包的數(shù)量,Queuelength表示接口隊(duì)列的總長(zhǎng)度。

圖3 數(shù)據(jù)包格式
重要NALU數(shù)據(jù)包保護(hù)的算法實(shí)現(xiàn):
Forward Data;
1: if P_queue<1 then forward Data;
2: else if Data carry important sign
3: if another Data in queue’s tail of the face is not important;then drop the Data and forward the arrived Data;
4: else find not important Data and drop it;
5: else drop the arrived Data;
本文提出的控制傳輸機(jī)制在Linux操作系統(tǒng)下,基于NS3的ndnSIM的仿真平臺(tái)下進(jìn)行性能的測(cè)試[10]。每個(gè)用戶(hù)對(duì)視頻序列進(jìn)行均勻請(qǐng)求,每個(gè)視頻文件由500塊組成,每個(gè)節(jié)點(diǎn)的隊(duì)列長(zhǎng)度設(shè)置為20。拓?fù)浣Y(jié)構(gòu)如圖4所示。

圖4 拓?fù)浣Y(jié)構(gòu)
由于本文針對(duì)視頻數(shù)據(jù)傳輸進(jìn)行研究,為了滿足視頻數(shù)據(jù)的實(shí)時(shí)性[11],本文對(duì)于丟包的數(shù)據(jù)不采用重傳機(jī)制。該測(cè)試的對(duì)比算法為NDN中轉(zhuǎn)發(fā)策略中的最優(yōu)路由機(jī)制(BestRoute),興趣包整流機(jī)制,(Random-Drop)即網(wǎng)絡(luò)發(fā)生擁塞時(shí),隨機(jī)丟棄興趣包,并分別在不同的發(fā)送速率和不同的瓶頸帶寬的環(huán)境下對(duì)算法進(jìn)行測(cè)試,本文測(cè)試的性能指標(biāo)如下所示:
? 丟包率:表示發(fā)送興趣包的總量與接收數(shù)據(jù)包的總量的差值與客戶(hù)端興趣包發(fā)送的總次數(shù)的比值。
? 平均時(shí)延:指用戶(hù)發(fā)送興趣包至接收到對(duì)應(yīng)數(shù)據(jù)包所需要的時(shí)間。
? 重要NALU丟失率:表示客戶(hù)端發(fā)送重要NALU的興趣包總量與接收NALU數(shù)據(jù)包總量的差值與客戶(hù)端發(fā)送興趣包的總數(shù)。
? 客戶(hù)端平均接收數(shù)據(jù)包的總數(shù)量:表示在視頻數(shù)據(jù)請(qǐng)求完畢,平均每個(gè)用戶(hù)接收到數(shù)據(jù)包的數(shù)量。
不同發(fā)送速率的測(cè)試中,網(wǎng)內(nèi)瓶頸帶寬為2 Mbit/s,不同帶寬的測(cè)試中,發(fā)送速率為300個(gè)/秒。
圖5和圖6分別表示不同發(fā)送速率和不同帶寬下的網(wǎng)內(nèi)丟包率。圖5表示,隨著用戶(hù)的發(fā)送速率增加,網(wǎng)內(nèi)擁塞加劇,丟包數(shù)目增加,圖6表示隨著帶寬的增加,網(wǎng)內(nèi)丟包數(shù)目減少。相比于對(duì)比算法,本文提出的AFCCP在轉(zhuǎn)發(fā)的過(guò)程中自適應(yīng)地選擇接口轉(zhuǎn)發(fā),避免了向擁塞鏈路的轉(zhuǎn)發(fā),減少網(wǎng)內(nèi)丟包數(shù)目。

圖5 丟包率VS發(fā)送速率

圖6 丟包率VS瓶頸帶寬
圖7和圖8分別表示不同發(fā)送速率和帶寬的條件下,用戶(hù)的平均訪問(wèn)時(shí)延。圖7表示由于發(fā)送速率增加,雖然丟包數(shù)目增加,但由于網(wǎng)絡(luò)擁塞的增加,平均時(shí)延隨著發(fā)送速率的增加而增加。圖8表示隨著帶寬的增加,相同條件下網(wǎng)內(nèi)擁塞減緩,用戶(hù)的平均時(shí)延減少。但相比于對(duì)比算法,本文提出的AFCCP在轉(zhuǎn)發(fā)的過(guò)程減緩網(wǎng)絡(luò)擁塞,并且在轉(zhuǎn)發(fā)的過(guò)程中考慮鏈路時(shí)延小的接口轉(zhuǎn)發(fā),所以具有較小的時(shí)延。

圖7 平均時(shí)延VS發(fā)送速率
圖9和圖10分別表示不同發(fā)送速率和帶寬下的重要NALU的丟包率。由于本文提出的AFCCP在數(shù)據(jù)包發(fā)生丟失時(shí)對(duì)重要NALU進(jìn)行保護(hù),從而實(shí)現(xiàn)重要NALU數(shù)據(jù)包能夠可靠傳輸至客戶(hù)端。在對(duì)比算法中,重要NALU的丟包具有隨機(jī)性,但隨著發(fā)送速率的增加,整體呈上升的趨勢(shì),隨著帶寬的增加,重要NALU的丟包率整體呈下降趨勢(shì)。

圖9 重要NALU的丟包率VS發(fā)送速率

圖10 重要NALU的丟包率VS瓶頸帶寬
圖11和圖12分別表示不同發(fā)送速度和帶寬條件下,網(wǎng)內(nèi)每個(gè)用戶(hù)平均接收數(shù)據(jù)包的數(shù)量。圖11表示隨著用戶(hù)訪問(wèn)速率的增加,網(wǎng)內(nèi)擁塞加劇,用戶(hù)接收數(shù)據(jù)包的數(shù)量逐漸減少。圖12表示隨著帶寬的增加,用戶(hù)平均接收數(shù)據(jù)包的數(shù)量逐漸增加,相比于對(duì)比算法,本文提出的AFCCP有效地避免擁塞鏈路,選擇最佳的鏈路進(jìn)行轉(zhuǎn)發(fā),從而在相同的條件,用戶(hù)的平均接收的數(shù)據(jù)包的數(shù)量最多。

圖11 客戶(hù)端接收數(shù)據(jù)包數(shù)量VS發(fā)送速率

圖12 客戶(hù)端接收數(shù)據(jù)包數(shù)量VS瓶頸帶寬
本文針對(duì)命名數(shù)據(jù)網(wǎng)絡(luò)中視頻數(shù)據(jù)的傳輸提出基于擁塞控制的傳輸機(jī)制,本文提出的AFCCP以用戶(hù)為出發(fā)點(diǎn),將網(wǎng)絡(luò)的丟包數(shù)據(jù)降低至最少,實(shí)現(xiàn)數(shù)據(jù)的可靠傳輸。本文為興趣包轉(zhuǎn)發(fā)的過(guò)程中接口的選擇建立馬爾科夫模型,自適應(yīng)選擇最佳鏈路進(jìn)行興趣包的傳輸。AFCCP在網(wǎng)絡(luò)擁塞發(fā)生丟包時(shí),對(duì)視頻內(nèi)部重要NALU數(shù)據(jù)進(jìn)行保護(hù),實(shí)現(xiàn)重要NALU可靠傳輸。AFCCP在較小訪問(wèn)時(shí)延的條件下,實(shí)現(xiàn)較小的網(wǎng)內(nèi)丟包,增加用戶(hù)接收數(shù)據(jù)包的數(shù)量,改善用戶(hù)獲取數(shù)據(jù)體驗(yàn)。
[1] 謝高崗,張玉軍,李振宇,等.未來(lái)互聯(lián)網(wǎng)體系結(jié)構(gòu)研究綜述[J].計(jì)算機(jī)學(xué)報(bào),2012,35(6):1109-1119.
[2] Zhang L,Afanasyev A,Burke J,et al.Named data networking[J].ACM SIGCOMM Computer Communication Review,2014,44(3):66-73.
[3] Cisco Visual Networking Index.Global Mobile Data Traffic Forecast Update,2014-2019[EB].Cisco Systems,Inc,2015-02-03.
[4] 唐瀟,任勇毛,李俊,等.一種基于顯式反饋的內(nèi)容中心網(wǎng)絡(luò)NDN擁塞控制算法[J].科研信息化技術(shù)與應(yīng)用,2014,5(3):68-77.
[5] Zhang F,Zhang Y,Reznik A,et al.A transport protocol for content-centric networking with explicit congestion control[C]//2014 23rd International Conference on Computer Communication and Networks (ICCCN).IEEE,2014:1-8.
[6] Carofiglio G,Gallo M,Muscariello L.ICP:Design and evaluation of an interest control protocol for content-centric networking[C]//Computer Communications Workshops (INFOCOM WKSHPS),2012 IEEE Conference on.IEEE,2012:304-309.
[7] Rozhnova N,Fdida S.An effective hop-by-hop interest shaping mechanism for ccn communications[C]//Computer Communications Workshops (INFOCOM WKSHPS),2012 IEEE Conference on.IEEE,2012:322-327.
[8] Park H,Jang H,Kwon T.Popularity-based congestion control in named data networking[C]//2014 Sixth International Conference on Ubiquitous and Future Networks (ICUFN).IEEE,2014:166-171.
[9] Sullivan G J,Ohm J R,Han W J,et al.Overview of the high efficiency video coding (HEVC) standard[J].Circuits and Systems for Video Technology,IEEE Transactions on,2012,22(12):1649-1668.
[10] Zhou J,Wu Q,Li Z,et al.A proactive transport mechanism with explicit congestion notification for NDN[C]//2015 IEEE International Conference on Communications (ICC).IEEE,2015:5242-5247.
[11] 陶勇,程?hào)|年.內(nèi)容中心網(wǎng)絡(luò)中基于內(nèi)容感知的QoS保證機(jī)理探析[J].計(jì)算機(jī)應(yīng)用研究,2016,33(3):813-816.
CONGESTIONCONTROLMECHANISMBASEDONADAPTIVEFORWARDINGOVERNAMINGDATANETWORKING
Huang Sheng Hao Yanming Jiang Lianghao Zheng Danling
(KeyLabofOpticalCommunicationandNetwork,ChongqingUniversityofPostsandTelecommunication,Chongqing400065,China)
To improve the reliable transmission of video data in the named data network, this paper proposes an Adaptive Forward Congestion Control Policy (AFCCP) from the client’s point of view. AFCCF aims at minimizing network packet loss and establishes a Markov model for the selection of interfaces. AFCCF adaptively selects the best forwarding interface through the state of the previous time interval link and to reduce the forwarding of interest packets to the congested link. Reducing the number of packet loss in the network to realize network congestion control. On the basis of this, AFCCF aims at the internal properties of video data, consider the characteristics of the decoding side when network occurs packet loss, AFCCP will selectively discard packet, to achieve reliable transmission for the important data within the video. The simulator results show that AFCCP achieves a low packet loss rate at low latency and increases the number of packets
by the user, thus improving the user’s access to data experience.
NDN Adaptive Packet loss minimization Markov Congestion control Reliable transmission
2017-01-04。國(guó)家自然科學(xué)基金項(xiàng)目(61371096)。黃勝,教授,主研領(lǐng)域:命名數(shù)據(jù)網(wǎng)絡(luò)的高效傳輸,高效視頻編碼,信道編碼,圖像處理。郝言明,碩士生。姜良浩,碩士生。鄭丹玲,講師。
TP393
A
10.3969/j.issn.1000-386x.2017.12.035