《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于云存儲的P2P視頻點播系統(tǒng)數據復制策略
基于云存儲的P2P視頻點播系統(tǒng)數據復制策略
來源:微型機與應用2013年第20期
王 娟
(江蘇宿遷澤達職業(yè)技術學院,江蘇 宿遷223800)
摘要: 交互性支持對P2P視頻點播系統(tǒng)具有重要的意義,視頻點播服務的大規(guī)模普及離不開用戶交互性的支持。討論了如何有效利用對等節(jié)點的帶寬和存儲資源來主動復制數據塊,提出了一種基于云存儲的數據復制策略CSPR。仿真實驗結果表明,相比于現有的數據復制策略,CSPR可以顯著提高用戶進行隨機搜索操作時的響應速度,并降低網絡復制開銷。
Abstract:
Key words :

摘  要: 交互性支持對P2P視頻點播系統(tǒng)具有重要的意義,視頻點播服務的大規(guī)模普及離不開用戶交互性的支持。討論了如何有效利用對等節(jié)點的帶寬和存儲資源來主動復制數據塊,提出了一種基于云存儲的數據復制策略CSPR。仿真實驗結果表明,相比于現有的數據復制策略,CSPR可以顯著提高用戶進行隨機搜索操作時的響應速度,并降低網絡復制開銷。
關鍵詞: 對等網絡;視頻點播;云計算;數據復制

    視頻點播VoD(Video on Demand)服務是指根據用戶的需要,隨機選擇視頻內容進行播放的服務。在P2P網絡上構建視頻點播系統(tǒng)能有效利用節(jié)點間網絡帶寬、存儲空間和數據資源,系統(tǒng)具有良好的可擴展性、數據可用性和可靠性。因此,P2P視頻點播系統(tǒng)(P2P VoD)已成為當前一個重要的研究領域。但P2P VoD中每個節(jié)點隨時都可能暫時或永久離開系統(tǒng),這使得構建支持交互性的P2P VoD極富挑戰(zhàn)性。系統(tǒng)中的節(jié)點均負責存儲數據,一旦某節(jié)點暫時離開,存在其上的數據就暫時不可訪問,而節(jié)點的永久離開更會造成數據的丟失。因而采用有效的辦法來應對動態(tài)的系統(tǒng)環(huán)境,從而滿足用戶的隨機搜索操作(VCR)則顯得十分必要。
    云計算是當今IT界的熱門技術,借助云計算,網絡服務提供者可以在瞬息之間處理數以千萬計甚至億計的信息,實現與超級計算機同樣強大的效能。當云計算系統(tǒng)運算和處理的核心是大量數據的存儲和管理時,云計算系統(tǒng)中就需要配置大量的存儲設備,此時云計算系統(tǒng)就轉變成為一個云存儲系統(tǒng),所以云存儲是一個以數據存儲和管理為核心的云計算系統(tǒng)。
    在P2P VoD中,資源保存在用戶的機器上,視頻文件越流行,下載的用戶越多,資源的副本越多,下載效率就越高。但對于一些過時的文件,用戶會選擇刪除,以免占用過多的個人空間。因此,一些冷門文件就不容易通過對等節(jié)點間的共享獲得。參考文獻[1]指出用戶訪問的集中度符合“二八定律”,即20%的視頻內容吸引了80%的用戶訪問,而其他的80%的用戶訪問只吸引了20%的用戶訪問量。在基于云存儲的P2P視頻點播系統(tǒng)中,考慮將存儲空間當作一片“云”,在無限量的空間,當用戶想從個人的機器上刪除一些過時但非毫無價值的數據塊時,可以選擇把資源通過數據復制的方式放在云上,從而把數據塊保存起來。這樣用戶不僅可以通過節(jié)點間的共享快速獲得熱門視頻數據,也可以通過檢索找到被存儲起來的冷門視頻數據,從而可以快速地響應用戶的VCR操作。
    本文主要討論在節(jié)點將要離開系統(tǒng)時,根據視頻數據各個部分的受歡迎程度以及對等節(jié)點間的網絡距離,提出了一種基于云存儲的數據復制策略CSPR。仿真實驗結果表明,相比于現有的基于流行度的數據復制策略PPR,CSPR可以顯著提高用戶執(zhí)行VCR操作的響應速度,并有效降低復制數據時所產生的網絡開銷。
1 相關工作
    VCR功能是對等點播系統(tǒng)中最重要的功能之一,也是本文研究的主要目標。在樹狀P2P VoD系統(tǒng)中,如P2Cast[2]則沒有考慮VCR操作對系統(tǒng)性能造成的影響,沒有針對VCR操作設計新的數據存儲策略。當用戶進行VCR操作時,節(jié)點需要通過重新加入組播樹。
    在網狀P2P VoD系統(tǒng)中,如VMesh[3]和BulletMedia[4]則是利用DHT技術支持VCR操作。VMesh通過本地向下/向上的指針和DHT查詢來支持交互式操作。在VMesh中,節(jié)點通過本地存儲的數據塊來為其他節(jié)點提供服務,而不是正在收看的數據塊。存儲的數據塊在節(jié)點的上線時間內不變。BulletMedia通過DHT方法讓對等節(jié)點大公無私地主動查找稀有的數據塊并進行復制存儲,保證每個數據塊在系統(tǒng)中至少有K個副本。當用戶進行VCR操作時,通過DHT方法查找相應的數據片段,以減輕用戶進行VCR操作時對服務器造成的壓力。
    針對因節(jié)點離開而導致數據丟失的問題,參考文獻[5]采用了基于預測的帶寬分配策略PBA。該策略的核心思想是讓父節(jié)點給那些具有較高帶寬的子節(jié)點提供較大的上傳帶寬,并且它僅僅讓節(jié)點把數據復制給將來可能需要的那些節(jié)點。但PBA策略是假定用戶從頭到尾觀看視頻節(jié)目的,并且在觀看過程中沒有VCR操作,這是不符合視頻點播系統(tǒng)中的用戶觀看行為的,因此PBA策略不能直接應用于P2P VoD系統(tǒng)中。
    研究表明,用戶在視頻點播系統(tǒng)中的行為并非毫無規(guī)律。參考文獻[6]指出,不同的文件具有不同的流行度,即用戶訪問的頻率;大部分的用戶訪問都集中于少量熱門節(jié)目上,并且文件的流行度是隨時間而改變的。
2 基于云存儲的數據復制策略
2.1 云節(jié)點的選擇策略

    為了降低節(jié)點離開對P2P VoD系統(tǒng)性能的影響,常根據特定的選擇策略從系統(tǒng)的可用節(jié)點集中選擇部分節(jié)點來使用[7]。節(jié)點選擇策略可分為隨機選擇和確定性選擇兩大類,其中隨機選擇策略是指不考慮節(jié)點的特征隨機選擇節(jié)點;確定性選擇策略是指根據節(jié)點的某種特征選擇滿足一定標準的節(jié)點,如根據節(jié)點的當前在線時長、帶寬吞吐能力等選擇節(jié)點[8-9]。
    由于節(jié)點的當前在線時長對其余留時長有一定的預見性,因此選擇最長當前在線時長的策略用于DHT網絡中鄰居節(jié)點的選擇[10]和超級節(jié)點的選擇[11],以及覆蓋層多播樹種雙親節(jié)點的選擇[12]。GODFREY B P等人[7]將不同的選擇策略應用于5個當前廣泛使用的對等網絡中。實驗結果表明,與其他選擇策略相比,隨機選擇策略可以有效降低節(jié)點動態(tài)性對P2P網絡的影響。這是由于隨機選擇策略具有簡單、易實現等特點。因而隨機選擇策略被廣泛地應用于P2P網絡中,如P2P文件存儲系統(tǒng)Total Recall[13]等。
    因此,本文采用隨機選擇策略來選擇云存儲中的云節(jié)點。
2.2 云節(jié)點的組織方式
    基于P2P的系統(tǒng)中兩節(jié)點間網絡距離的測算可通過計算系統(tǒng)中數據傳輸時延、網絡最小帶寬和數據傳輸所經路由跳數等方法獲得。對于P2P視頻點播系統(tǒng)中數據塊的可用性和可靠性來說,數據傳輸時延是一個很重要的因素,而數據傳輸時延最主要的影響因子是傳輸兩節(jié)點間的可用帶寬。
    P2P覆蓋網技術從最初以Napster為代表的有著中央目錄服務器的對等網絡結構,到后來以Gnutella為代表的完全分布式的對等網絡和提供匿名發(fā)布和獲取文檔的Freenet,再到以CAN、Chord、Pastry和Tapestry等為代表的基于分布式哈希表的結構化對等網絡,對等網絡的發(fā)展大致經歷了3個階段,每個階段都采用了不同的資源定位和路由模型。根據拓撲結構關系可以將P2P系統(tǒng)分為4類:集中式P2P系統(tǒng)、完全分布式P2P系統(tǒng)、混合式P2P系統(tǒng)和結構化P2P系統(tǒng)。
    本文將P2P視頻點播系統(tǒng)中網絡距離相近的節(jié)點劃分到同一云中,以實現對節(jié)點的分組和有效管理,采用參考文獻[14]中的節(jié)點分組算法來對云節(jié)點進行組織。該算法的核心思想是依次從初始化網絡中隨機選取一個節(jié)點,以該節(jié)點為圓心,預測網絡距離為半徑,其內的所有節(jié)點都劃入一個分組,再將獲得分組的節(jié)點從初始網絡中移除。以此方法循環(huán)劃分,可將初始網絡中大部分節(jié)點劃入分組。
    另外,本文采用參考文獻[15]中的方法對分布式數據塊的流行度進行估計。
2.3 基于云存儲的數據復制算法
    基于云存儲的數據復制策略包括以下4個步驟:(1)根據隨機選擇策略選擇云節(jié)點;(2)按照網絡距離分組算法組織這些數據復制的目標云節(jié)點;(3)根據分布式平均算法估計出每個數據塊的流行度,并按從高到低的順序排序,按照用戶存儲空間的大小確定數據塊集合S;(4)把S以外的數據塊推向云節(jié)點中進行存儲。該算法可用偽代碼表示如下:
for(1≤m≤t)    compute(pm);//計算數據塊的流行度
if(delete(M))
{
for(1≤m≤t)
{
NodeGet(n,i);    //從當前在線的節(jié)點中隨機選取
節(jié)點i作為數據復制目標云節(jié)點
SegmentChoose(P,M,m); //選取流行度高且副本數
低的數據塊m
Replication(m,i);   //將數據塊m復制給節(jié)點i
}
}
代碼中,n表示在線的節(jié)點數;i為選擇的目標數據復制云節(jié)點;m表示選擇的數據塊;t表示將要刪除數據塊的個數;T表示整個數據塊的集合;S為各個節(jié)點的性能值的集合,其中s1≥s2≥…≥sn;M表示節(jié)點將要刪除的數據塊的集合,M=T-S;P表示各個數據塊的流行度集合,其中s1≥s2≥…≥st。
3 仿真實驗
3.1 關鍵性能指標

    選擇了如下兩個重要參數作為P2P視頻點播系統(tǒng)中數據復制算法性能的關鍵指標,也是仿真實驗的測量對象。
    (1)響應用戶VCR操作時延:數據復制的目標之一是快速響應用戶進行VCR操作的時延,以改進用戶的播放體驗。該指標指從用戶進行VCR操作開始到獲得所想要的數據塊為止所需要的時間,響應用戶VCR操作時延的減少表示數據復制算法的性能的提高。
    (2)網絡開銷:由復制的數據塊總量來表示,主要衡量數據復制導致的系統(tǒng)資源的額外消耗,例如,增加的對等節(jié)點之間網絡通信流量。
3.2 實驗與結果
    仿真實驗對本文提出的基于云存儲的P2P視頻點播系統(tǒng)數據復制策略CSPR與現有的數據復制策略的關鍵性能指標進行對比?;诹餍卸鹊臄祿椭撇呗?PPR)在進行數據復制時僅考慮每個數據塊的流行度,而并未考慮節(jié)點間的網絡距離。

 


    本文在對P2P對等點播系統(tǒng)用戶動態(tài)性分析的基礎上,提出了一種基于云存儲的數據復制策略CSPR。仿真實驗結果表明,相比單純基于數據流行度的數據復制機制,本文提出的數據復制機制可較快地響應用戶VCR操作,同時降低了網絡開銷。在后續(xù)的工作中,將考慮對P2P視頻點播系統(tǒng)的移動用戶行為特征進行分析,將之應用于數據復制策略中,來更好地滿足移動用戶觀看視頻文件時的交互式操作,從而改善用戶的播放體驗。
參考文獻
[1] Yu Hongliang,Zheng Dongdong,ZHAO B Y,et al.Understanding user behavior in large-scale video-on-demand systems[C].In Proceedings of ACM,Eurosys,2006.
[2] GUO Y,SUH K,KUROSE J,et al.P2Cast:peer-to-peer  patching scheme for VoD service[C].In Proceedings of the 12th International World Wide Web Conference,Budapest,2003:301-309.
[3] YIU K,JIN X,CHAN G.VMesh:distributed segment storage  for peer-to-peer interactive video streaming[J].IEEE Journal on Selected Areas in Communications(JSAC),2007,25(9):1717-1731.
[4] NEVENA V,PRIYA G,NIKOLA K,et al.Enabling DVD-like features in P2P video-on-demand systems[C].In  Proceedings of the SIGCOMM Peer-to-Peer Streaming and  IP-TV Workshop,Kyoto,2007:329-334.
[5] CHENA Z J,XUE K P,HONG P L,et al.Differentiated  bandwidth allocation for reducing server load in P2P VoD[C]. In Proceedings of the 8th International Conference on Grid    and Cooperative Computing,Lanzhou,2009:31-36.
[6] Luo Jianguang,Tang Yun,Zhang Meng,et al.Characterizing  user behavior model to evaluate hard cache in peer-to-peer based video-on-demand service[C].In Proc.MMM,Kyoto,2005:125-134.
[7] GODFREY B P,SHENKER S,STOICA I.Minimizing churn  in distributed sytems[C].In Proc.of the ACM SIGCOMM  2006,New York:ACM Press,2006:147-158.
[8] 張宇翔,楊冬,張宏科.P2P網絡中Churn問題研究[J].軟件學報,2009,20(5):1362-1367.
[9] RHEA S,GEELS D,ROSCOE T,et al.Handling churn in  a DHT[C].In Proc.of  the USENIX Annual Technical Conference.Boston:USENIX Association Press,2004:127-140.
[10] LEDLIE J,SHNEIDMAN J,AMIS M,et al.Reliability  and capacity-based selection in distributed hash tables[R]. Technical Report,Harvard University Computer Science,2003:1-14.
[11] GARCES E L,BIERSACK E W,ROSS K W,et al. Hierarchical peer-to-peer systems[C].In Proc. of the ACM/IFIP Int’l Conf. on Parallel and Distributed Computing (Euro-Par).Berlin:Springer-Verlag,2003:1230-1239.
[12] SPRIPANIDKULCHAI K,GANJAM A,MAGGS B,et al. The feasibility of supporting large-scale live streaming applications with dynamic application end-points[C].In Proc.of the ACM SIGCOMM.New York:ACM Press,2004:107-120.
[13] BHAGWAN R,TATI K,CHENG Y,et al.Total recall:system support for automated availability management[C].In Proc.of the 1st ACM/Usenix Symp.on Networked Systems Design and Implementation(NSDI 2004).San Francisco:USENI Press,2004:337-350.
[14] 楊磊,黃浩,李仁發(fā),等,一種基于分組管理的混合式P2P存儲系統(tǒng)[J].計算機科學,2010,37(1):64-67.
[15] MEHYAR M,SPANOS D,PONGSAJAPAN J,et al.Asynchronous distributed averaging on communication networks[J]. IEEE/ACM Transactions on Networking,2007,15(3):512-520.
[16] The Network Simulator-ns-2[EB/OL].[2013-05-25].http: //www.isi.edu/nsnam/ns.

此內容為AET網站原創(chuàng),未經授權禁止轉載。