杜磊,金志剛,王曉海
1.天津大學(xué)電子信息工程學(xué)院,天津 300072
2.中國人民解放軍61660部隊(duì)
面向跳播優(yōu)化的P2P視頻點(diǎn)播系統(tǒng)
杜磊1,金志剛1,王曉海2
1.天津大學(xué)電子信息工程學(xué)院,天津 300072
2.中國人民解放軍61660部隊(duì)
隨著網(wǎng)絡(luò)帶寬和視頻壓縮技術(shù)的快速發(fā)展,IPTV被越來越多的人應(yīng)用。IPTV一般泛指通過IP網(wǎng)絡(luò)傳輸音視頻內(nèi)容并用電視機(jī)收看的業(yè)務(wù)。早期IPTV系統(tǒng)采用客戶機(jī)/服務(wù)器模式提供業(yè)務(wù),這已經(jīng)成為制約IPTV發(fā)展的“瓶頸”,解決方法是體系結(jié)構(gòu)向?qū)Φ冗B接(P2P)模式演化[1]。P2P IPTV應(yīng)用不僅可以像傳統(tǒng)電視一樣向用戶提供視頻直播服務(wù),而且還可以與用戶交互,提供傳統(tǒng)電視很難實(shí)現(xiàn)的視頻點(diǎn)播業(yè)務(wù)。
與直播領(lǐng)域相比,在視頻點(diǎn)播領(lǐng)域,P2P技術(shù)的發(fā)展速度相對(duì)較為緩慢。主要是因?yàn)辄c(diǎn)播當(dāng)中的高度交互性需求,使得實(shí)現(xiàn)的復(fù)雜程度較高。正是在這種前提下,各種P2P視頻點(diǎn)播系統(tǒng)應(yīng)運(yùn)而生,包括P2Cast[2],P2VoD[3],Grid-Cast[4]等系統(tǒng)。這些系統(tǒng)各有各自的優(yōu)勢(shì),P2VoD系統(tǒng)是其中較為出色的系統(tǒng)。
P2VoD是佛羅里達(dá)大學(xué)提出來的一個(gè)基于樹狀拓?fù)涞腜2P視頻點(diǎn)播系統(tǒng)[3]。系統(tǒng)中提出“代”的概念,進(jìn)行數(shù)據(jù)分發(fā)和失效恢復(fù)。不足之處是系統(tǒng)無法順利處理跳播的行為,這是該系統(tǒng)的一大缺陷。
本系統(tǒng)正是基于P2VoD,針對(duì)其中的不足,進(jìn)行優(yōu)化設(shè)計(jì),采用樹網(wǎng)結(jié)合的拓?fù)浣Y(jié)構(gòu),實(shí)現(xiàn)對(duì)等體的加入、跳播、離開等行為的處理。
2.1 框架描述
本系統(tǒng)采用樹網(wǎng)結(jié)合的拓?fù)浣Y(jié)構(gòu),這樣既維護(hù)了網(wǎng)絡(luò)的中心性,使管理者能夠?qū)φ麄€(gè)網(wǎng)絡(luò)有全局的把握,另一方面,又增加了對(duì)等體之間的聯(lián)系,保證當(dāng)某一個(gè)或者某些對(duì)等體崩潰時(shí),網(wǎng)絡(luò)依然保持連通性,而不需長時(shí)間的恢復(fù)刪除,保證了網(wǎng)絡(luò)的穩(wěn)定性。
在本系統(tǒng)中,每個(gè)對(duì)等體中都開辟了一段固定大小的空間作為緩存,實(shí)際使用的緩存大小依據(jù)不同對(duì)等體加入系統(tǒng)的時(shí)間不同而不同。將源視頻的內(nèi)容分塊,順次標(biāo)號(hào)為1,2,3,…,稱為數(shù)據(jù)塊標(biāo)號(hào)。緩存中,具有相同的最小數(shù)據(jù)塊標(biāo)號(hào)的對(duì)等體稱為一代,所有代的全體對(duì)等體組成一個(gè)會(huì)話。當(dāng)所有對(duì)等體都不保留標(biāo)號(hào)為1的數(shù)據(jù)塊時(shí),此會(huì)話關(guān)閉。此時(shí),若再有對(duì)等體加入系統(tǒng),則重啟一個(gè)新的會(huì)話。
同一會(huì)話中,代的標(biāo)號(hào)從1開始遞增。當(dāng)新的對(duì)等體加入系統(tǒng)時(shí),它或者屬于編號(hào)最大的代,或者成為新一代的第一個(gè)成員。規(guī)定第i代中的對(duì)等體的父對(duì)等體都來自第(i-1)代,其中i>1。第1代的對(duì)等體的父對(duì)等體是源服務(wù)器。
為了減小特定兩個(gè)對(duì)等體之間的依賴性,從而增強(qiáng)網(wǎng)絡(luò)的穩(wěn)定性,該系統(tǒng)中,每個(gè)對(duì)等體選擇多個(gè)父對(duì)等體。通過對(duì)現(xiàn)有系統(tǒng)長時(shí)間大量的觀測(cè)實(shí)驗(yàn),得到60%以上的對(duì)等體的當(dāng)前運(yùn)行時(shí)間要超過1 h,隨機(jī)選擇兩個(gè)對(duì)等體,二者中至少存在一個(gè)對(duì)等體的運(yùn)行時(shí)間大于1 h的概率P2計(jì)算結(jié)果為:
不考慮網(wǎng)絡(luò)抖動(dòng),隨著父對(duì)等體數(shù)目增大,1 h內(nèi)穩(wěn)定從父對(duì)等體處接收數(shù)據(jù)的概率也增大;而選擇父對(duì)等體的時(shí)間增長,網(wǎng)絡(luò)的復(fù)雜性也增大。為了在二者之間取一個(gè)平衡,選擇一個(gè)中間值,令父對(duì)等體數(shù)目為3,維持了網(wǎng)絡(luò)的穩(wěn)定性和拓?fù)浣Y(jié)構(gòu)的簡易性。同時(shí)為了盡可能減小對(duì)等體加入網(wǎng)絡(luò)后的初始延遲,以及簡化各對(duì)等體間的控制信息內(nèi)容,系統(tǒng)按照最小延遲方法選擇父對(duì)等體,即直接在候選隊(duì)伍中選擇最靠前的對(duì)等體。
同一代中各對(duì)等體采用可變緩存機(jī)制,這里用緩存中存儲(chǔ)的視頻時(shí)間代表緩存大小,后加入代的對(duì)等體的緩存要小于先加入的,二者的差應(yīng)該等于二者加入時(shí)間的差。這樣設(shè)置的緩存策略保證了不同時(shí)間加入系統(tǒng)的對(duì)等體,在觀看同一視頻的不同位置時(shí),緩存中的最小數(shù)據(jù)塊標(biāo)號(hào)仍然相同。
對(duì)于網(wǎng)絡(luò)中的任一對(duì)等體,都需要保存三類信息,包括IP地址和端口號(hào):(1)自己所處的代中全部兄弟對(duì)等體的信息;(2)自己的父對(duì)等體所處的代中所有對(duì)等體的信息;(3)自己的子對(duì)等體的信息。對(duì)于每個(gè)新加入系統(tǒng)或者發(fā)生跳播的對(duì)等體X,它需要給服務(wù)器發(fā)送信息<IPX,GX,TeX>,其中IPX指X的IP和端口號(hào)信息,GX指X加入的代,TeX指X緩存中標(biāo)號(hào)最小數(shù)據(jù)塊的刪除時(shí)間。
2.2 加入算法
新對(duì)等體加入網(wǎng)絡(luò)時(shí)都需要先與服務(wù)器聯(lián)系,獲取網(wǎng)絡(luò)狀況信息。具體來講,依據(jù)控制信息協(xié)議,服務(wù)器了解當(dāng)前各個(gè)會(huì)話的狀態(tài),并且保存有各會(huì)話中各代成員的部分信息,如緩存中標(biāo)號(hào)最小數(shù)據(jù)塊的刪除時(shí)間Te。新對(duì)等體會(huì)根據(jù)獲取到的信息和父對(duì)等體選擇協(xié)議決定加入哪一代以及選哪些對(duì)等體作為父對(duì)等體。
初始時(shí)刻,系統(tǒng)為空,設(shè)置最年輕的一代只有服務(wù)器,Te設(shè)置為無窮大。設(shè)新加入系統(tǒng)的對(duì)等體為X,加入時(shí)間為TjX。
加入步驟描述如下:
情況1所有會(huì)話都關(guān)閉
步驟1直接連接服務(wù)器。若服務(wù)器帶寬不足,則新對(duì)等體被拒絕;否則轉(zhuǎn)步驟2。
步驟2創(chuàng)建一個(gè)新會(huì)話。新對(duì)等體成為該會(huì)話第一代的第一個(gè)成員,從服務(wù)器開始下載數(shù)據(jù)。
情況2至少存在一個(gè)未關(guān)閉的會(huì)話
步驟1選擇一個(gè)會(huì)話加入。向服務(wù)器索取該會(huì)話中最年輕一代G1的成員信息。
步驟2與G1中的任一成員聯(lián)系,獲取其父對(duì)等體的信息。
步驟3如果父代中標(biāo)號(hào)最小數(shù)據(jù)塊的刪除時(shí)間Te1晚于X的加入時(shí)間TjX,則跳轉(zhuǎn)到步驟4;否則跳轉(zhuǎn)到步驟5。
步驟4X根據(jù)選父規(guī)則,從父代中選擇3個(gè)對(duì)等體作父親。之后X成為G1的成員,從父對(duì)等體處接受數(shù)據(jù)。X的實(shí)際可用緩存大小根據(jù)緩存規(guī)則進(jìn)行設(shè)置。
步驟5在G1下形成新的一代。X成為新一代的第一個(gè)成員。依據(jù)選父規(guī)則從G1中選擇父對(duì)等體。X實(shí)際緩存大小設(shè)為最大可用緩存。
2.3 短距離跳播算法
對(duì)于用戶來說,視頻點(diǎn)播系統(tǒng)比視頻直播系統(tǒng)增加了更多的能動(dòng)性,其中最重要的功能之一就是支持跳播。對(duì)于一個(gè)發(fā)生了跳播行為的對(duì)等體,它不再屬于當(dāng)前的代,也無法接受或提供當(dāng)前的父對(duì)等體和子對(duì)等體相應(yīng)的服務(wù)。換言之,該對(duì)等體近似于一個(gè)新加入系統(tǒng)的對(duì)等體,唯一的區(qū)別是它的起始播放位置不是視頻文件的初始位置,而是它將要跳播到的位置。
設(shè)發(fā)生跳播行為的對(duì)等體為X,跳播到的位置為視頻的TpX位置,發(fā)生跳播的時(shí)間是T,則設(shè)置X的加入時(shí)間TjX=T-TpX,將X作為一個(gè)加入時(shí)間為TjX的對(duì)等體。N代表某一代對(duì)等體中最小的數(shù)據(jù)塊標(biāo)號(hào),X跳播到的數(shù)據(jù)塊標(biāo)號(hào)為NX。
由于80%的跳播行為都是近距離跳播,所以當(dāng)發(fā)生跳播行為時(shí),首先在本會(huì)話內(nèi)部搜尋合適的對(duì)等體來作為父對(duì)等體。
向前跳播和向后跳播的示意圖如圖1和圖2所示。
圖1 短距離向前跳播算法示意圖
圖2 短距離向后跳播算法示意圖
算法描述如下:
(1)向前跳播:X遞推地獲取父代G1、G1的子代G2、G2的子代乃至更下一代的信息,直到找到一代Gn,其標(biāo)號(hào)最小數(shù)據(jù)塊的刪除時(shí)間Ten晚于X的加入時(shí)間TjX,則X成為Gn的子代的成員。若一直找到當(dāng)前會(huì)話的最后一代仍未找到,則按照長距離跳播算法進(jìn)行處理。
(2)向后跳播:X遞推地獲取父代G1、G1的父代G2'、G2'的父代乃至更上一代的信息,直到找到一代Gn',其標(biāo)號(hào)最小數(shù)據(jù)塊的標(biāo)號(hào)Nn小于X跳播到的數(shù)據(jù)塊,X成為Gn'的子代的成員。若一直找到當(dāng)前會(huì)話的第一代仍未找到,則按照長距離跳播算法進(jìn)行處理。
2.4 長距離跳播算法
當(dāng)發(fā)生跳播的對(duì)等體無法在其所在的會(huì)話中找到合適的新父對(duì)等體時(shí),將按照長距離跳播算法處理。仍然設(shè)發(fā)生跳播的對(duì)等體為X,跳播到的數(shù)據(jù)塊為NX,換算后的加入時(shí)間是TjX。
首先連接服務(wù)器,索取當(dāng)前各會(huì)話的信息,獲取各會(huì)話中最年輕一代的成員的信息,包括當(dāng)前最小數(shù)據(jù)塊標(biāo)號(hào)N和標(biāo)號(hào)最小的數(shù)據(jù)塊的刪除時(shí)間Te。
向前跳播和向后跳播的示意圖如圖3和圖4所示。
圖3 長距離向前跳播算法示意圖
圖4 長距離向后跳播算法示意圖
算法描述如下:
(1)向前跳播:按照會(huì)話的創(chuàng)建順序,順序向后找到第一個(gè)Te>TjX的會(huì)話。若找不到,則直接連接服務(wù)器。若找的到,從該會(huì)話的最年輕一代開始向上,依次獲取每一代的成員信息。找到第一代不滿足(TjX<Te&&NX>N)的代,選取其子代作為X的父代。若所有代都不滿足條件(TjX<Te&&NX>N),則直接連接服務(wù)器。
(2)向后跳播:按照會(huì)話的創(chuàng)建順序,逆序向前找到第一個(gè)Te<TjX的會(huì)話,選擇晚于該會(huì)話創(chuàng)建時(shí)間的最早會(huì)話進(jìn)行處理。若找不到,選擇最早的會(huì)話進(jìn)行處理。從選中的會(huì)話的最年輕一代開始向上,依次獲取每一代的成員信息。找到第一個(gè)不滿足(TjX<Te&&NX>N)的代,選取其子代作為X的父代。若所有代都不滿足條件(TjX<Te&&NX>N),則直接連接服務(wù)器。
2.5 錯(cuò)誤恢復(fù)
設(shè)對(duì)等體X發(fā)現(xiàn)某一個(gè)父對(duì)等體崩潰(跳播離開、退出或上行帶寬不足)。
錯(cuò)誤恢復(fù)步驟描述如下:
步驟1X從父對(duì)等體所在的代信息中,依據(jù)選父規(guī)則,選取一個(gè)新的對(duì)等體作為父親。若建立連接成功則恢復(fù)成功。否則繼續(xù)嘗試父代的其他對(duì)等體直到成功。都失敗后轉(zhuǎn)步驟2。
步驟2若此時(shí)X仍有不少于一個(gè)父對(duì)等體,則X維持當(dāng)前的父子狀態(tài)。每隔一段時(shí)間,跳轉(zhuǎn)回步驟1嘗試新的連接。若父對(duì)等體數(shù)小于一個(gè),轉(zhuǎn)步驟3。
步驟3X當(dāng)前播放位置為TpX,根據(jù)當(dāng)前時(shí)間T,設(shè)置X的加入時(shí)間TjX=T-TpX。按照跳播算法,重新選擇X的父對(duì)等體。
利用仿真手段,使用GT-ITM拓?fù)洚a(chǎn)生器來生成基本的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)[5],從初始時(shí)延、服務(wù)器負(fù)載、跳播延遲等方面,對(duì)系統(tǒng)性能進(jìn)行了評(píng)價(jià)。通過與P2VoD系統(tǒng)性能的比較,給出了本系統(tǒng)的性能評(píng)價(jià)。
3.1 仿真環(huán)境
使用GT-ITM拓?fù)洚a(chǎn)生器創(chuàng)建一個(gè)傳輸域-子域模型。整個(gè)網(wǎng)絡(luò)包含3個(gè)傳輸域,每個(gè)傳輸域內(nèi)有5個(gè)傳輸結(jié)點(diǎn)。每個(gè)傳輸結(jié)點(diǎn)與6個(gè)子域相連,每個(gè)子域有12個(gè)結(jié)點(diǎn)。網(wǎng)絡(luò)中的總結(jié)點(diǎn)數(shù)為3×5+3×5×6×12=1 095。在這組實(shí)驗(yàn)中,可以認(rèn)為每個(gè)子域都代表一個(gè)局域網(wǎng)。對(duì)等體可以位于任意一個(gè)子域的任意一個(gè)結(jié)點(diǎn)上。數(shù)據(jù)源服務(wù)器位于傳輸域的一個(gè)結(jié)點(diǎn)上。
傳輸域結(jié)點(diǎn)間帶寬、傳輸域和子域結(jié)點(diǎn)間帶寬、子域結(jié)點(diǎn)間帶寬,以及電影資源碼率和資源時(shí)長的設(shè)置見表1。
客戶到達(dá)滿足泊松分布,并且被隨機(jī)分派到子域的一個(gè)結(jié)點(diǎn)上。每次仿真時(shí)間都是2 h。到達(dá)系統(tǒng)的客戶數(shù)=到達(dá)率×仿真運(yùn)行時(shí)間,用到達(dá)系統(tǒng)的客戶數(shù)表示網(wǎng)絡(luò)負(fù)載。
表1 網(wǎng)絡(luò)環(huán)境與資源參數(shù)設(shè)置
3.2 初始時(shí)延
初始時(shí)延表示從一個(gè)對(duì)等體準(zhǔn)備加入網(wǎng)絡(luò),到對(duì)等體開始播放資源內(nèi)容之間的時(shí)間間隔。初始時(shí)延越小,用戶體驗(yàn)越好。因?yàn)橐曨l資源播放前漫長的等待是用戶最討厭的事情之一。
為了簡化過程,仿真簡單地統(tǒng)計(jì)對(duì)等體加入網(wǎng)絡(luò)時(shí)需要連接其他對(duì)等體的次數(shù),連接次數(shù)少相當(dāng)于有較小的初始時(shí)延。圖5給出了隨著用戶規(guī)模的增大,新加入網(wǎng)絡(luò)的對(duì)等體平均需要連接其他對(duì)等體的次數(shù)。
圖5 初始加入時(shí)的平均連接次數(shù)
從圖中可以看出,在系統(tǒng)中,當(dāng)網(wǎng)絡(luò)中用戶規(guī)模較小的時(shí)候,由于符合要求的父對(duì)等體較少,而且能連接到每個(gè)父對(duì)等體的孩子數(shù)量有限,所以連接次數(shù)增加較快,并達(dá)到一個(gè)峰值。隨著用戶規(guī)模增加,符合要求的父對(duì)等體也增加,平均連接次數(shù)逐漸回落。當(dāng)用戶數(shù)量達(dá)到一定規(guī)模之后,平均連接次數(shù)基本穩(wěn)定下來,并且維持在一個(gè)優(yōu)秀的水平上。通過和P2VoD系統(tǒng)比較可以看出,本文系統(tǒng)的初始時(shí)延更加穩(wěn)定,用戶體驗(yàn)更好。
3.3 服務(wù)器負(fù)載
隨著加入網(wǎng)絡(luò)的客戶數(shù)量增大,服務(wù)器負(fù)載也會(huì)增大。好的系統(tǒng)可以盡量減小服務(wù)器的壓力,通過使現(xiàn)有的對(duì)等體盡可能多地為新用戶提供數(shù)據(jù),來達(dá)到減小服務(wù)器壓力的效果。
為了簡化實(shí)驗(yàn),本仿真通過統(tǒng)計(jì)不同客戶規(guī)模時(shí),直接連接服務(wù)器的用戶數(shù)來直觀反應(yīng)服務(wù)器負(fù)載。
從圖6可以看出,在本系統(tǒng)中,隨著用戶規(guī)模的增大,服務(wù)器的負(fù)載緩慢增加,當(dāng)用戶規(guī)模達(dá)到一定程度時(shí),本系統(tǒng)的服務(wù)器壓力比P2VoD稍大。這是由于與P2VoD相比,本系統(tǒng)采用樹網(wǎng)結(jié)合的拓?fù)浣Y(jié)構(gòu),整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)更加扁平。這也是引起平均查找次數(shù)減少,服務(wù)器負(fù)載增大的主要原因。為了減小服務(wù)器的壓力,可以考慮部署分布式的多服務(wù)器。
圖6 服務(wù)器負(fù)載
3.4 跳播延遲
本系統(tǒng)與P2VoD相比最大的差別就是支持用戶的跳播行為。當(dāng)用戶離開當(dāng)前播放位置,轉(zhuǎn)到另一播放位置繼續(xù)觀看視頻時(shí),對(duì)等體需要逐代去尋找適合自己新的播放位置的代。過長的延遲是用戶所不能接受的,故需對(duì)延遲性能進(jìn)行仿真評(píng)價(jià)。
圖7給出了在不同的用戶規(guī)模下,用戶跳播到距離當(dāng)前播放位置分別為1 min、5 min、10 min和30 min情況下的平均連接結(jié)點(diǎn)的次數(shù),用以間接反映跳播延遲。
圖7 跳播延遲
從圖中可以看出,跳播到的位置與當(dāng)前播放位置距離越長,需要連接其他結(jié)點(diǎn)的次數(shù)就越多,直接導(dǎo)致等待時(shí)間越長。如果跳播距離不超過10 min,連接次數(shù)都在10次以內(nèi),基本規(guī)模在初始加入連接次數(shù)的一半以下,用戶基本可以接受。
連接的次數(shù)與網(wǎng)絡(luò)中用戶的規(guī)模數(shù)沒有直接的單調(diào)關(guān)系。用戶規(guī)模很?。?00以內(nèi))的時(shí)候,連接次數(shù)簡單遞增。但是當(dāng)用戶規(guī)模大幅增大之后,跳播需要的平均連接次數(shù)十分穩(wěn)定。這是因?yàn)?,用戶?guī)模很小的時(shí)候,所有用戶幾乎都在一個(gè)會(huì)話中,處于不同的代,跳播后逐層尋找新的父對(duì)等體,導(dǎo)致連接次數(shù)單調(diào)遞增。隨著用戶規(guī)模的增大,網(wǎng)絡(luò)中會(huì)話數(shù)增多,網(wǎng)絡(luò)變得扁平,查找次數(shù)就基本穩(wěn)定下來了。
本文在P2VoD算法的基礎(chǔ)上進(jìn)行了一系列的改變和優(yōu)化,設(shè)計(jì)了新的系統(tǒng),實(shí)現(xiàn)對(duì)等體的加入、跳播、離開等行為的處理。新的系統(tǒng)以樹網(wǎng)結(jié)合的拓?fù)浣Y(jié)構(gòu),實(shí)現(xiàn)了對(duì)點(diǎn)播用戶跳播行為的支持,并減小了系統(tǒng)抖動(dòng)。
通過使用GT-ITM拓?fù)洚a(chǎn)生器生成基本的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),從初始時(shí)延、服務(wù)器負(fù)載、跳播延遲等多個(gè)方面,對(duì)系統(tǒng)性能進(jìn)行評(píng)價(jià)。仿真結(jié)果顯示,在相同的網(wǎng)絡(luò)負(fù)載下,當(dāng)用戶規(guī)模達(dá)到一定程度時(shí),服務(wù)器壓力會(huì)比P2VoD系統(tǒng)的服務(wù)器壓力略大,但是對(duì)等體初始加入網(wǎng)絡(luò)時(shí)的延遲要小20%,同時(shí)系統(tǒng)比P2VoD更加穩(wěn)定,并且實(shí)現(xiàn)了對(duì)跳播功能的支持,平均跳播時(shí)延約為初始時(shí)延的50%。
綜上,本系統(tǒng)很好地實(shí)現(xiàn)了快速加入,用戶異步請(qǐng)求的有效處理,快速的錯(cuò)誤恢復(fù),尤其是實(shí)現(xiàn)了跳播支持,顯示出比P2VoD更加優(yōu)秀的性能。在當(dāng)前的高帶寬網(wǎng)絡(luò)中,本系統(tǒng)能夠?yàn)榻K端用戶提供包括立體電視在內(nèi)的眾多類型的視頻點(diǎn)播服務(wù),因此適合推廣到大規(guī)模的IPTV VoD覆蓋網(wǎng)絡(luò)之中。
[1]侯自強(qiáng).P2P IPTV技術(shù)進(jìn)展[J].中興通訊技術(shù),2006,12(3):10-13.
[2]Guo Y,Suh K,Kurose J,et al.P2Cast:peer to peer patching scheme for VoD service[C]//Proc of the 12th International Conference on World Wide Web,2003:301-309.
[3]Do T,Hua K,Tantaoui M.P2VoD:providing fault tolerant video-on-demand streaming in peer-to-peer environment[C]// Proc of the IEEE ICC 2004,2004:1467-1472.
[4]Cheng B,Stein L,Jin H,et al.GridCast:improving peer sharing for P2P VoD[J].ACM Transactions on Multimedia Computing,Communications and Applications,2008,4(4):1-31.
[5]Zegura E,Calvert K,Bhattacharjee S.How to model an internetwork[C]//Proc of IEEE INFOCOM,1996:594-602.
[6]齊衛(wèi)寧,王勁林.基于P2VoD的視頻點(diǎn)播系統(tǒng)[J].計(jì)算機(jī)工程與應(yīng)用,2008,44(10):20-22.
DU Lei1,JIN Zhigang1,WANG Xiaohai2
1.School of Electronic and Information Engineering,Tianjin University,Tianjin 300072,China
2.Unit 61660 of PLA,China
A new video on demand system is designed.It is based on P2VoD algorithm,and it makes changes and optimization for the inadequacies of P2VoD.New system combines tree topology and mesh topology,realizes actions of peers such as joining, skipping,and leaving,especially makes a special optimization for skipping behavior of users and reduces the delay jitter of the system.After the simulation,results show that with the same network load,the initial delay of peers is 20%smaller than P2VoD, while the system is more stable than P2VoD and realizes the skipping function,and the average skipping delay is about 50%of the initial delay.
video on demand system;network;Peer-to-Peer(P2P);skipping
基于P2VoD算法,針對(duì)其不足之處進(jìn)行改變和優(yōu)化,設(shè)計(jì)了新的系統(tǒng)。新的系統(tǒng)以樹網(wǎng)結(jié)合的拓?fù)浣Y(jié)構(gòu),實(shí)現(xiàn)對(duì)等體的加入、跳播、離開等行為的處理,尤其是對(duì)點(diǎn)播用戶跳播行為的支持進(jìn)行了特別的優(yōu)化,減小了系統(tǒng)的延遲抖動(dòng)。經(jīng)過仿真,結(jié)果表明在相同的網(wǎng)絡(luò)負(fù)載下,對(duì)等體初始加入網(wǎng)絡(luò)時(shí)的延遲比P2VoD要小20%,同時(shí)系統(tǒng)比P2VoD更加穩(wěn)定,并且實(shí)現(xiàn)了對(duì)跳播功能的支持,平均跳播時(shí)延約為初始時(shí)延的50%。
視頻點(diǎn)播系統(tǒng);網(wǎng)絡(luò);對(duì)等連接(P2P);跳播
A
TP393
10.3778/j.issn.1002-8331.1203-0404
DU Lei,JIN Zhigang,WANG Xiaohai.Skipping optimization for P2P video on demand system.Computer Engineering and Applications,2013,49(24):65-69.
國家高技術(shù)研究發(fā)展計(jì)劃(863)(No.2009AA01A336);中興通訊產(chǎn)學(xué)研合作項(xiàng)目資助。
杜磊(1988—),男,碩士研究生,主要研究領(lǐng)域?yàn)橛?jì)算機(jī)網(wǎng)絡(luò);金志剛,男,博士,教授,博士生導(dǎo)師;王曉海,高級(jí)工程師。E-mail:zgjin@tju.edu.cn
2012-03-19
2012-06-18
1002-8331(2013)24-0065-05