樂光學,宋佳佳,熊小峰,劉建生
(1.江西理工大學理學院 贛州 341000;2.嘉興學院信息工程學院 浙江 314000)
隨著互聯網技術和信息傳輸技術的迅速發展,人們對網絡音頻、視頻點播、網絡游戲和電子商務等的應用越來越廣泛,大規模流媒體技術是這些應用得以迅速發展的關鍵。基于P2P技術的流媒體業務發展迅猛,根據中國互聯網絡信息中心發布的 《第28次中國互聯網絡發展狀況統計報告》[1]和艾瑞咨詢2011年第二季度在線視頻核心數據發布顯示,截至2011年6月底,中國網民規模達到4.85億,其中網絡視頻用戶達3.01億,網絡音樂用戶3.82億,在網民網絡應用行為中,網絡音樂和網絡視頻的用戶使用規模分別是78.7%和62.1%。面對大規模流媒體的應用需求,QoS已成為一個開放性課題。
P2P網絡作為一種對等網絡,打破了C/S模式的局限,具有很高的資源利用率。P2P技術應用領域可分為內容共享和數據分發、分布式的存儲系統、基于P2P方式的協同處理與服務共享平臺、即時通信交流。
流媒體是在internet中使用流式傳輸技術的連續多媒體數據,由于流媒體業務需要為用戶提供長時間且穩定的視頻流,所以對承載網絡的延遲、播放質量、VCR操作等要求很高。參考文獻[2]研究表明單播模式系統的可擴展性和可靠性很差,基于代理的分發模式會使系統的管理開銷增加。基于內容分發網絡 (content delivery network,CDN)是一種有效的解決方案,其核心思想為通過部署代理服務器實現就近服務原則,分散系統的負載,但組網部署和維護費用昂貴,不適合大規模使用。P2P流媒體系統優勢在于其對等性、自組織性、匿名自治性、資源共享的特性,P2P技術克服了以往服務策略的不足,大幅度提高了系統的擴展性。參考文獻[3]提出了P2P與CDN相結合的思想,將源服務器與各代理通過骨干網組成CDN,代理與客戶機組成相對獨立于其他自治域的P2P流媒體網絡。優點是代理服務器數量減少,成本降低;客戶訪問媒體資源的質量提高,服務延遲減少。
根據節點邏輯拓撲組織和應用特點的不同,將P2P流媒體系統分為單棵樹分發系統、多棵樹分發系統、基于網狀的系統。參考文獻[4]把Chaining(鏈式結構)思想引入視頻點播服務模型,產生了最早的單棵樹分發模型,如DirectStream、P2Cast等。在鏈式結構中,節點中途離開對整個鏈造成的影響很大,所以只能在局域網內小規模應用。參考文獻[5]基于Scribe協議,實現了SplitStream構建多棵樹的分發架構。主要思想是將流媒體分成N塊,在N棵不同的分發樹中傳播,缺點是分發路徑固定,易造成網絡擁塞。參考文獻[6]提出的GnuStream是一種完全對等的多對一的網狀分發,利用Gnutella協議查找用戶請求文件的節點列表,通過選擇優良節點建立多個連接,并按照帶寬比例分配各自所需傳輸的數據塊。其特點是:網絡抗抖動力較強,充分利用網絡帶寬資源,并在異構網中得到了很好的應用。
QoS是一個用于衡量服務滿意程度的量化指標。在P2P流媒體系統中,用來衡量QoS的關鍵指標主要包括延遲、抖動、丟包率、吞吐量等[7]。
目前P2P流媒體QoS控制機制可以分為兩類:一是基于網絡層的QoS控制,主要是通過路由器或交換機的資源預留、區分服務等保障服務質量,如IntServ、DiffServ和MPLS等,它們都能支持數據流的可預測傳輸,但設計思想和實現機制各不相同,QoS控制需要路由器支持,但當前網絡不能支持所有的路由器;二是基于應用層的QoS控制,主要是通過客戶端對流媒體數據的監測以及反饋機制保證服務質量,常見的基于應用層的QoS保障機制包括節點選擇、數據調度、緩存機制、容錯機制和激勵機制等。
P2P網絡拓撲很大程度上決定了流媒體系統的性能,而拓撲構建的核心問題就是節點的選擇。一個優良的節點應具有穩定性、高帶寬、低延遲的特性。參考文獻[8]定義了一個優良節點集合,構造了一個最大化節點貢獻度的函數,定義如下:

其中,eij=1表示節點i和節點j相連,否則eij=0。C表示所有數據段的集合,{ci∈C:=1,…,N}表示每個節點上的數據塊的集合。假設每個節點i可能和最多di個鄰居相連,di 為了解決應用層和底層網絡拓撲結構不匹配的問題,廣泛采用就近服務原則。參考文獻[8]提出了兩種多對一節點選擇方案,即端到端的選擇機制和拓撲感知選擇機制,兩種機制都要確認收發雙方路徑的“良好度”。參考文獻[9]提出了超級節點和請求節點雙端協作的節點選擇機制,以解決現有節點選擇只在請求節點上執行且功能單一的問題,提高了QoS和系統的魯棒性。參考文獻[10]針對P2P文件下載系統中的快速下載問題,提出了兩種算法:BT中的節點選擇,如根據節點提供服務的程度進行懲罰、獎勵;子午線算法是一個由多重環構成的overlay,該算法直接測量查詢路由并通過gossip協議傳播信息,不僅實現最近節點和中心節點的查找,還通過滿足目標延遲約束實現中轉節點的查找,優化中轉路徑。 P2P架構下,如何通過合理的數據調度機制對節點數據進行傳送,面臨很多問題和挑戰。 ·單多播樹的數據調度。假設中間節點能同時向多個子節點提供數據,但實際是不能滿足這種假設的,因此這種理論只應用于理論層面。 ·多個多播樹的數據調度。這種方式有效利用了節點帶寬,降低了節點離開造成的影響,適應異構環境。但管理較為復雜,節點的播放延遲較大。 ·隨機拓撲的數據調度、數據分發利用BT下載原理,即系統將媒體流分成多塊,節點加入系統后,定時與鄰居節點交換緩沖區內的數據信息,并從鄰居節點處獲取所需要的數據塊。 流媒體業務目前普遍采用緩存機制保障QoS。直播系統采用緩存-中繼方案,接收節點以滑動窗口的形式緩存最近播放過的數據,并將這些數據提供給在一定延遲內的請求節點。點播系統采用前攝-中繼方案,節點前攝和緩存一些數據塊能在一定程度上保證節點在多變網絡下的媒體服務質量。 [11]提出滑動窗口策略:當沒有用戶請求時,代理服務器不緩存任何數據。當第一個用戶請求到達時,代理服務器向中心服務器請求并緩存T min的數據,數據的生命期就是窗口的大小。從第一個請求開始,T min內到達的請求都可以用這個窗口的數據服務,這個窗口之外的請求將要再次啟動網絡傳輸。這種策略在節目點播人數較多時可以節約一定的網絡帶寬,缺點是數據生命期固定,不能充分利用緩存有效節約帶寬資源,很難實現VCR等功能。 參考文獻[8]根據每個Peer節點緩存的目標節目數據范圍,將現有研究劃分為初始數據緩存、最近數據緩存以及全局指定緩存。初始數據緩存是指在節點上只緩存目標節目開始部分的數據,最近數據緩存指節點均緩存其最近接收到的一段數據,全局指定緩存是指節點所緩存的數據范圍由某些中心節點根據全局策略指定。BT下載和CoolStreaming典型緩存模式的緩存快照如圖1所示。 目前的研究集中在如何減少故障節點的檢測時間、主備用節點之間的切換時間,保持流媒體服務的連續性,從而實現無縫連接。參考文獻[9]通過客戶緩存機制,保證在短時間內客戶端流媒體的連續性。參考文獻[12]研究不同節點的切換,并提出了媒體流切換基本模型,同時對節點切換的斷點位置進行深入的考慮。 數據編碼技術也可以提供系統的容錯機制,如多描述編碼(multiple description coding,MDC)和前向糾錯編碼(forward error coding,FEC)。MDC是通過在編碼中加入適當冗余信息,當發生數據丟失后能夠最大限度地減少對視頻質量的影響。FEC通過給壓縮后的媒體碼流加上一定的冗余信息提高系統的容錯性。這兩種方式都針對節點的異構性,請求節點可依據自身能力選擇接收多少數據進行解碼。 P2P網絡中每個節點對網絡的貢獻度是不同的。參考文獻[13]指出了Gnutella系統中70%的用戶不共享任何文件,近50%的請求是由1%的用戶處理的,這種行為被稱為“搭便車”現象,會對整個網絡的性能和服務質量造成很大影響。 參考文獻[14]中Bit Torrent采用了“多勞多得”的激勵機制抑制搭便車行為,服務能力差的節點將無法生存,因此不適合視頻點播的規模使用。還提出服務能力差的節點即使不提供任何服務也擁有“社會基本福利保障”,這種追求平均化的方式對服務能力強的節點是不公平的,容易造成用戶反感。參考文獻[15]提出了虛擬貨幣機制,它可以用現實貨幣進行交換,服務能力差的節點只要擁有足夠的虛擬貨幣,一樣可以獲得好的服務。這種方式需要較高的安全性,并且打擊了高性能節點的積極性。 隨著互聯網技術IPv6、3G技術和無線技術的日益發展,網絡已成為多種異構終端混合的復雜網絡,流媒體應用在混合網絡中的QoS保障還面臨很多挑戰。 搭便車行為不可避免,如何使搭便車節點趨于為系統做貢獻、使網絡抖動趨于穩定,需要建立一種兼顧各類節點的合理的激勵機制。另外,對受歡迎程度低的節目提供服務的節點進行激勵,也能提高冷門節目的服務質量。 當前對移動 P2P(mobile peer to peer,MP2P)的研究還處于初期階段。異構網中各節點定期將鄰居節點的本地信譽值發送到信譽管理服務器,由信譽管理服務器集中計算并更新節點的全局信譽值,考慮到網絡規模和服務開銷,界定節點局部信譽值在小世界中的影響范圍問題有待進一步的研究。 P2P可信流媒體服務質量是提高流媒體業務水平的研究重點,本文重點研究了影響QoS的幾種機制,通過對已有研究成果的分析比較,總結了各種機制對QoS的影響程度和所做的改善工作。最后,預測P2P可信流媒體服務質量進一步的研究方向。 參考文獻 1 中國互聯網絡信息中心.第28次中國互聯網絡發展狀況統計報告,2011 2 尹浩,林闖,文浩等.大規模流媒體應用中關鍵技術的研究.計算機學報,2008,35(5) 3 臧運港,陳光喜.基于P2P和CDN的混合流媒體分發模型及分析.計算機應用研究,2010,27(6) 4 龔海剛,劉明,毛鶯池.P2P流媒體關鍵技術的研究進展.計算機研究與發展,2005,42(12) 5 Castro M,DruschelP,Kermarrec A,etal.SplitStream:high-bandwidth content distribution in cooperative environments.In:Proc of ACM SOSP,2003 6 Jiang X,Dong Y,Xu D,et al.GnuStream:a P2P media streaming system prototype.In:Proc of the IEEE Int’l Conf on Multimedia and Expo,2003 7 張春紅.P2P技術全面解析.北京:人民郵電出版社,2010 8 馮健.P2P點播流媒體服務質量研究.西北大學碩士學位論文,2008 9 孫名松,張瀟依,姚亮.雙端協作的P2P流媒體節點選擇機制.計算機工程,2009,35(18) 10 Kai Han,Qingyu Guo,Jing Luo.Optimal peer selection,task assignment and rate allocation for P2P downloading.Education Technology and Computer Science,2009(8) 11 Zhang XY,Liu JC,Li B,et al.CoolStreaming/DONET:a sata-driven overlay network for live media streaming.In:Proc of the IEEE INFOCOM,IEEE Press,2005 12 張宇翔,楊冬,張宏科.P2P網絡中Churn問題研究.軟件學報,2009,20(5) 13 余一嬌,金海.對等網絡中的搭便車行為分析與抑制機制綜述.計算機學報,2008,31(1) 14 沈時軍,李三立.基于 P2P的視頻點播系統綜述.計算機學報,2010,33(4) 15 Huang Y,Fu T ZJ,Chiu D M,et al.Challenges,design and analysis of a large-scale P2P-vod system.ACM SIGCOMM Computer Communication Review,2008,38(4)3.2 數據調度機制
3.3 緩存機制

3.4 容錯機制
3.5 激勵機制
4 QoS研究展望
4.1 激勵機制
4.2 異構網下的信譽機制
5 結束語