李如平
(安徽工商職業(yè)學(xué)院,安徽 合肥 231100)
基于P2P網(wǎng)絡(luò)的流媒體直播技術(shù)研究
李如平
(安徽工商職業(yè)學(xué)院,安徽 合肥 231100)
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的快速發(fā)展和個(gè)人計(jì)算機(jī)性能的增強(qiáng),流媒體直播系統(tǒng)在互聯(lián)網(wǎng)上廣泛應(yīng)用,但傳統(tǒng)的基于C/S模式的流媒體直播系統(tǒng)存在服務(wù)能力瓶頸,很難適應(yīng)大規(guī)模的應(yīng)用。為此通過將P2P網(wǎng)絡(luò)技術(shù)與流媒體技術(shù)相結(jié)合,充分利用各個(gè)節(jié)點(diǎn)的資源,減輕了流媒體服務(wù)器的壓力,使得基于P2P網(wǎng)絡(luò)的流媒體服務(wù)具有了更好的擴(kuò)展性和實(shí)用性。
P2P;網(wǎng)絡(luò);流媒體
近年來,隨著互聯(lián)網(wǎng)業(yè)務(wù)飛速發(fā)展,網(wǎng)絡(luò)影視在互聯(lián)網(wǎng)應(yīng)用中已相當(dāng)普遍,根據(jù)2007年6月中國互聯(lián)網(wǎng)信息中心第二十次中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r調(diào)查統(tǒng)計(jì)報(bào)告,在互聯(lián)網(wǎng)的各種功能中,網(wǎng)絡(luò)影視的應(yīng)用使用率達(dá)到了61.1%。由此可見,網(wǎng)絡(luò)流媒體視頻直播有著良好的發(fā)展前景和商業(yè)價(jià)值。最初,多媒體文件需從服務(wù)器上下載后才能播放,但這樣無法實(shí)現(xiàn)數(shù)據(jù)同步,限制了人們?cè)诨ヂ?lián)網(wǎng)上使用多媒體數(shù)據(jù)進(jìn)行交流。為了解決這些問題,人們把P2P技術(shù)引入到流媒體傳輸中從而形成了P2P流媒體技術(shù),開創(chuàng)了在網(wǎng)絡(luò)上傳播音頻和視頻的新時(shí)代。
P2P是Peer to Peer的簡寫,中文翻譯為對(duì)等互聯(lián)或者點(diǎn)對(duì)點(diǎn)技術(shù),P2P網(wǎng)絡(luò)一般也稱為對(duì)等網(wǎng)絡(luò)。在P2P網(wǎng)絡(luò)中,節(jié)點(diǎn)之間沒有服務(wù)器與客戶機(jī)之分,各節(jié)點(diǎn)之間是平等的關(guān)系,可以直接相互通信,共享計(jì)算和存貯能力。P2P是一種分布式網(wǎng)絡(luò),網(wǎng)絡(luò)的參與者共享他們所擁有的一部分硬件資源,包括處理能力,存儲(chǔ)能力,網(wǎng)絡(luò)連接,打印機(jī)等,這些共享資源需要由網(wǎng)絡(luò)提供服務(wù),能被其它對(duì)等節(jié)點(diǎn)直接訪問而無需經(jīng)過中間實(shí)體.在此網(wǎng)絡(luò)中的參與者既是資源提供者,又是資源獲取者。P2P打破了客戶機(jī)/服務(wù)器(C/S)模式,在網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的地位平等,每個(gè)節(jié)點(diǎn)既充當(dāng)客戶,共享其他節(jié)點(diǎn)提供的服務(wù),又充當(dāng)服務(wù)器,為其他節(jié)點(diǎn)提供服務(wù)和內(nèi)容。
P2P技術(shù)的特點(diǎn)體現(xiàn)在以下幾個(gè)方面:
1.非中心化:網(wǎng)絡(luò)中的資源和服務(wù)分散在所有結(jié)點(diǎn)上,信息的傳輸和服務(wù)的實(shí)現(xiàn)都直接在節(jié)點(diǎn)之間進(jìn)行,可以不需要中間環(huán)節(jié)和服務(wù)器的介入,避免了可能的瓶頸。P2P的非中心化基本特點(diǎn),帶來了其在可擴(kuò)展性、健壯性等方面的優(yōu)勢(shì)。
2.可擴(kuò)展性:在P2P網(wǎng)絡(luò)中,隨著用戶的加入,不僅服務(wù)的需求增加了,系統(tǒng)整體的資源和服務(wù)能力也在同步地?cái)U(kuò)充,始終能較容易地滿足用戶的需要。整個(gè)體系是全分布的,不存在瓶頸,理論上其可擴(kuò)展性幾乎是無限的。
3.高性價(jià)比:性能優(yōu)勢(shì)是P2P被廣泛關(guān)注的一個(gè)重要原因。隨著硬件技術(shù)的發(fā)展,個(gè)人計(jì)算機(jī)的計(jì)算和存儲(chǔ)能力以及網(wǎng)絡(luò)帶寬等性能高速增長。采用P2P架構(gòu)可以有效地利用互聯(lián)網(wǎng)中散布的大量結(jié)點(diǎn),將計(jì)算任務(wù)或存儲(chǔ)資料分布到所有結(jié)點(diǎn)上。利用其中閑置的計(jì)算能力或存儲(chǔ)空間,達(dá)到高性能計(jì)算和海量存儲(chǔ)的目的,從而實(shí)現(xiàn)用更低的成本提供更高的計(jì)算和存儲(chǔ)能力。
4.健壯性:P2P架構(gòu)天生具有耐攻擊、高容錯(cuò)的優(yōu)點(diǎn)。由于服務(wù)是分散在各個(gè)結(jié)點(diǎn)之間進(jìn)行的,部分結(jié)點(diǎn)或網(wǎng)絡(luò)遭到破壞對(duì)其它部分的影響很小。P2P網(wǎng)絡(luò)一般在部分結(jié)點(diǎn)失效時(shí)能夠自動(dòng)調(diào)整整體拓?fù)?,保持其它結(jié)點(diǎn)的連通性。
5.網(wǎng)絡(luò)負(fù)載均衡:P2P網(wǎng)絡(luò)環(huán)境下由于每個(gè)節(jié)點(diǎn)既是服務(wù)器又是客戶機(jī),減少了對(duì)傳統(tǒng)C/S結(jié)構(gòu)服務(wù)器計(jì)算能力、存儲(chǔ)能力的要求,同時(shí)因?yàn)橘Y源分布在多個(gè)節(jié)點(diǎn),更好的實(shí)現(xiàn)了整個(gè)網(wǎng)絡(luò)的負(fù)載均衡。
6.隱私保護(hù):在P2P網(wǎng)絡(luò)中,由于信息的傳輸分散在各節(jié)點(diǎn)之間進(jìn)行而無需經(jīng)過某個(gè)集中環(huán)節(jié),用戶的隱私信息被竊聽和泄漏的可能性大大縮小。目前解決互聯(lián)網(wǎng)隱私問題主要采用中繼轉(zhuǎn)發(fā)的技術(shù)方法,從而將通信的參與者隱藏在眾多的網(wǎng)絡(luò)實(shí)體之中。在傳統(tǒng)的匿名通信系統(tǒng)中,實(shí)現(xiàn)這一機(jī)制通常依賴于某些中繼服務(wù)器節(jié)點(diǎn),而在P2P中,所有參與者都可以提供中繼轉(zhuǎn)發(fā)的功能,因而大大提高了匿名通訊的靈活性和可靠性,能夠?yàn)橛脩籼峁└玫碾[私保護(hù)。
所謂流媒體技術(shù),就是將完整的影像和聲音數(shù)據(jù)經(jīng)過壓縮處理后保存在網(wǎng)站服務(wù)器上,用戶可以邊下載邊獲取信息,從而無需將整個(gè)壓縮文件下載之后再觀看的網(wǎng)絡(luò)傳輸技術(shù)。在網(wǎng)絡(luò)上傳輸視頻信息,最簡單直接的方式,就是把視頻內(nèi)容按某一格式采集、編碼,存放在文件中,然后把文件通過一般的網(wǎng)絡(luò)傳輸協(xié)議傳輸?shù)浇邮斩?,再在接收端的機(jī)器上解碼并播放。但是這種方式有它的缺點(diǎn):1.必須等整個(gè)視頻文件全部傳輸完畢,才能開始播放文件。由于視頻文件一般都較大,在網(wǎng)絡(luò)帶寬還很有限的情況下,下載整個(gè)文件往往需要很長的時(shí)間;2.不適合現(xiàn)場直播的形式;3.占用很大的存儲(chǔ)空間。流媒體技術(shù)出現(xiàn)正好解決了上述的缺點(diǎn),因此,流媒體技術(shù)得到快速發(fā)展,流媒體業(yè)務(wù)也被認(rèn)為是未來高速寬帶網(wǎng)的主流業(yè)務(wù)。
傳統(tǒng)的流媒體系統(tǒng)采用由中心服務(wù)器群直接為每個(gè)終端寬帶用戶提供流媒體服務(wù),是基于C/S模式的流媒體系統(tǒng)。隨著互聯(lián)網(wǎng)的普及,流媒體視頻用戶迅速增加,由于流媒體服務(wù)所要求的高帶寬、低時(shí)延等特性,服務(wù)器的資源,如帶寬、內(nèi)存大小很快就會(huì)被消耗完,成為系統(tǒng)瓶頸所在,導(dǎo)致系統(tǒng)的可擴(kuò)展性極差。針對(duì)這些問題,業(yè)界提出過兩個(gè)解決方案:應(yīng)用CDN(Content Delivery Network,即內(nèi)容分發(fā)網(wǎng)絡(luò))技術(shù)和IP組播技術(shù)。
CDN工作原理是廣泛采用各種CDN服務(wù)器,將這些服務(wù)器分布到用戶訪問相對(duì)集中的地區(qū)或網(wǎng)絡(luò)中,在用戶訪問內(nèi)容時(shí),全局負(fù)載均衡技術(shù)將用戶的訪問指向到離用戶距離最近的工作正常的CDN服務(wù)器上,由CDN服務(wù)器直接響應(yīng)用戶的請(qǐng)求。CDN技術(shù)雖然提高了用戶訪問內(nèi)容的性能,而且有效減輕了中心設(shè)備和骨干網(wǎng)絡(luò)的壓力,然而,它也帶來了許多諸如緩存一致性和負(fù)載均衡等管理難題。
IP組播是在互聯(lián)網(wǎng)上對(duì)一組站點(diǎn)進(jìn)行數(shù)據(jù)傳送,這一組站點(diǎn)是動(dòng)態(tài)形成的,每一個(gè)站點(diǎn)都可以動(dòng)態(tài)地加入或者退出這個(gè)組。IP組播技術(shù)實(shí)現(xiàn)了IP網(wǎng)絡(luò)中點(diǎn)到多點(diǎn)的高效數(shù)據(jù)傳送,能夠有效地節(jié)約網(wǎng)絡(luò)帶寬、降低網(wǎng)絡(luò)負(fù)載。然而在實(shí)際應(yīng)用中,IP組播的服務(wù)模型和協(xié)議存在著一些問題,不能很好的適應(yīng)商業(yè)應(yīng)用的需求。
P2P技術(shù)引入到流媒體傳輸中從而形成了P2P流媒體技術(shù),該方法有兩方面的優(yōu)點(diǎn)。第一,這種技術(shù)并不需要復(fù)雜的互聯(lián)網(wǎng)路由器和網(wǎng)絡(luò)基礎(chǔ)設(shè)施的支持,因此性價(jià)比高且易于部署;第二,在這種技術(shù)中,利用了P2P網(wǎng)絡(luò)的優(yōu)點(diǎn),用戶相互共享各自擁有的視頻數(shù)據(jù),既是播放者,又是視頻數(shù)據(jù)提供者,共同參與系統(tǒng)的服務(wù),整個(gè)系統(tǒng)的服務(wù)能力隨著用戶數(shù)量的增加而增加,具有可擴(kuò)展性。
基于P2P技術(shù)的流媒體系統(tǒng)能夠更加有效地利用每個(gè)節(jié)點(diǎn)的能力,同時(shí)每個(gè)節(jié)點(diǎn)可以從多個(gè)節(jié)點(diǎn)獲取數(shù)據(jù),因而采用該技術(shù)的視頻直播系統(tǒng)能有更強(qiáng)的擴(kuò)展性和更可靠的質(zhì)量保證。在流媒體直播服務(wù)中,用戶只能按照節(jié)目列表收看當(dāng)前正在播放的節(jié)目。在直播領(lǐng)域,交互性較少,技術(shù)實(shí)現(xiàn)相對(duì)簡單,因此P2P技術(shù)在直播服務(wù)中發(fā)展迅速。
基于互聯(lián)網(wǎng)的流媒體直播系統(tǒng)包含三個(gè)核心部分,直播源、流數(shù)據(jù)網(wǎng)絡(luò)、傳輸和回放。直播源負(fù)責(zé)流傳輸前的預(yù)處理工作,即進(jìn)行音視頻數(shù)據(jù)的采集和編碼工作,對(duì)原始的音視頻信號(hào)進(jìn)行壓縮編碼并轉(zhuǎn)化為適合網(wǎng)絡(luò)傳輸?shù)囊粢曨l流格式。流數(shù)據(jù)的網(wǎng)絡(luò)傳輸是視頻直播系統(tǒng)的重中之重,它決定著系統(tǒng)的用戶規(guī)模和用戶所接收到的流媒體數(shù)據(jù)的質(zhì)量。網(wǎng)絡(luò)傳輸?shù)闹饕饔镁褪菍⒅辈ピ串a(chǎn)生的壓縮后的音視頻流實(shí)時(shí)地傳送到每個(gè)用戶節(jié)點(diǎn)?;胤攀侵赣脩艄?jié)點(diǎn)在接收到流數(shù)據(jù)之后,將壓縮的音視頻數(shù)據(jù)進(jìn)行解碼播放。簡單地說,流媒體直播實(shí)現(xiàn)原理就是直播源通過采用高效的壓縮算法,在降低文件大小的同時(shí)伴隨質(zhì)量的損失,讓原有的龐大的多媒體數(shù)據(jù)適合流式傳輸,然后通過架設(shè)流媒體服務(wù)器,修改MIME(Multipurpose Internet Mail Extensions)標(biāo)識(shí),MIME中文意思是多功能互聯(lián)網(wǎng)郵件擴(kuò)充服務(wù),它是一種多用途網(wǎng)際郵件擴(kuò)充協(xié)議,在1992年最早應(yīng)用于電子郵件系統(tǒng),但后來也應(yīng)用到瀏覽器。服務(wù)器會(huì)將它們發(fā)送的多媒體數(shù)據(jù)的類型告訴瀏覽器,而通知手段就是說明該多媒體數(shù)據(jù)的MIME類型,從而讓瀏覽器知道接收到的信息是哪種類型的文件等等。服務(wù)器將MIME標(biāo)志符放入傳送的數(shù)據(jù)中來告訴瀏覽器使用哪種插件讀取相關(guān)文件。然后利用各種實(shí)時(shí)協(xié)議傳輸流數(shù)據(jù),客戶端接收到流數(shù)據(jù)后進(jìn)行解碼回放。
1.RTP/RTCP協(xié)議
實(shí)時(shí)傳輸協(xié)議(Real-time Transport Protocol,RTP)和實(shí)時(shí)傳輸控制協(xié)議(Real-time Control Protocol,RTCP)都是基于IP的應(yīng)用層協(xié)議。RTP為實(shí)時(shí)音/視頻數(shù)據(jù)提供端到端的傳送服務(wù),包括有效載荷類型標(biāo)識(shí)、序列標(biāo)號(hào)、時(shí)間標(biāo)簽和源標(biāo)識(shí),可以提供時(shí)間信息和實(shí)現(xiàn)流同步。
2.RTSP協(xié)議
實(shí)時(shí)流協(xié)議 (Real-time Streaming Protocol,RTSP)是由RealNetWorks和Netscape共同提出的一個(gè)應(yīng)用層協(xié)議。它可以在媒體服務(wù)器和客戶端之間建立和控制連續(xù)的音/視頻媒體流,協(xié)同RTP等更低層協(xié)議一起來提供基于互聯(lián)網(wǎng)的整套流式服務(wù)。RTSP的目的是為流媒體實(shí)現(xiàn)多點(diǎn)傳送和以點(diǎn)播方式單一傳送提供健壯的協(xié)議。RTSP利用流技術(shù)把數(shù)據(jù)分成許多包,包的大小由客戶端和服務(wù)端的實(shí)際帶寬決定,當(dāng)客戶端接收到足夠的數(shù)據(jù)包時(shí),用戶不需下載整個(gè)媒體文件就可以開始播放流媒體。因?yàn)椴シ牌髟诓シ乓粋€(gè)包的同時(shí),解壓另一個(gè)包并下載第三個(gè)包。流媒體數(shù)據(jù)可以是輸入的實(shí)況信息,也可以是存儲(chǔ)的視、音頻片段。通過RTSP協(xié)議,服務(wù)器端可以跟蹤流媒體傳輸?shù)臅r(shí)間、地址和方式。RTSP增加了對(duì)流媒體的控制請(qǐng)求,能恢復(fù)來自媒體服務(wù)器的流媒體。
RTSP在媒體服務(wù)器和客戶端之間建立和控制連續(xù)的音頻/視頻媒體流。當(dāng)客戶端向媒體服務(wù)器請(qǐng)求連續(xù)的媒體數(shù)據(jù)時(shí),媒體服務(wù)器負(fù)責(zé)播放和錄制服務(wù)。RTSP像是服務(wù)器和客戶端之間的“網(wǎng)絡(luò)遠(yuǎn)程控制”。
目前P2P流媒體直播系統(tǒng)主要有下列兩類模型:
在基于樹狀模型的P2P流媒體直播系統(tǒng)中,節(jié)點(diǎn)被組織成一個(gè)樹狀邏輯覆蓋網(wǎng)絡(luò),稱為多播樹?;跇錉钔?fù)鋮f(xié)議及擴(kuò)展的模型把參與多播的節(jié)點(diǎn)組織成一棵應(yīng)用層多播樹,樹的父節(jié)點(diǎn)負(fù)責(zé)為子節(jié)點(diǎn)傳送數(shù)據(jù)。這類模型首先構(gòu)建一個(gè)數(shù)據(jù)的分發(fā)樹,接著節(jié)點(diǎn)會(huì)發(fā)現(xiàn)那些樹狀拓?fù)渲信c其不相鄰的節(jié)點(diǎn),進(jìn)而與它們建立控制信息通道,形成控制拓?fù)浣Y(jié)構(gòu)。
在基于樹狀拓?fù)鋮f(xié)議及擴(kuò)展的模型的P2P流媒體直播系統(tǒng)中,關(guān)鍵的問題是多播樹的構(gòu)造。主要有兩個(gè)問題:
1.樹的高度問題。如果樹的高度太高,某些節(jié)點(diǎn)離根節(jié)點(diǎn)太遠(yuǎn),數(shù)據(jù)的延勢(shì)必會(huì)增加,從而影響播放效果。但樹的高度也不能太低,太低延時(shí)雖然小了,但根節(jié)點(diǎn)的負(fù)擔(dān)加重了,很明顯,當(dāng)樹的高度為1時(shí),系統(tǒng)實(shí)際上退化為一個(gè)C/S系統(tǒng),所有的負(fù)荷都加到了根節(jié)點(diǎn)上。
2.樹的快速修復(fù)問題。由于P2P系統(tǒng)具有高度動(dòng)態(tài)性,節(jié)點(diǎn)的行為是不可預(yù)知的,可能隨時(shí)加入系統(tǒng),也可能隨時(shí)退出,特別是當(dāng)一個(gè)非葉子節(jié)點(diǎn)退出時(shí),其所有的子節(jié)點(diǎn)都將受到影響。所以構(gòu)建的多播樹還需具有快速修復(fù)能力。
目前,基于樹狀模型的P2P流媒體直播系統(tǒng)主要有PeerCast、Zig-Zag、Splitstream、CoopNet等。
PeerCast是美國Stanford大學(xué)Peer-to-Peer研究小組的研究成果。它采用一個(gè)簡單的單根樹結(jié)構(gòu),是樹狀組播模型中最簡單的模型。PeerCast采用簡單的單樹根結(jié)構(gòu)將節(jié)點(diǎn)組織起來,其中樹的父節(jié)點(diǎn)給子節(jié)點(diǎn)提供服務(wù)。為了優(yōu)化節(jié)點(diǎn)間的傳輸延時(shí),在PeerCast中通過限定父節(jié)點(diǎn)所能服務(wù)的節(jié)點(diǎn)個(gè)數(shù)來實(shí)現(xiàn)。在PeerCast中,節(jié)點(diǎn)的加入和離開采用簡單的重定向技術(shù),易于實(shí)現(xiàn),但是這樣也易造成樹的不平衡,使得距離根節(jié)點(diǎn)越遠(yuǎn)的節(jié)點(diǎn),數(shù)據(jù)的時(shí)延就越大,所以,就要求構(gòu)建的組播樹的深度應(yīng)該盡可能的短。另一方面,每個(gè)節(jié)點(diǎn)的有限輸出帶寬限定了節(jié)點(diǎn)的寬度,因此,構(gòu)建的組播樹應(yīng)該使樹的深度與寬度達(dá)到有效的平衡。
Zig-Zagt模型也是樹狀組播模型的一種。它構(gòu)建了一棵以服務(wù)器為根的應(yīng)用層組播樹。通過設(shè)定這棵樹的節(jié)點(diǎn)的個(gè)數(shù)和層次,達(dá)到減小端對(duì)端時(shí)延的目的。大部分組成員位于分層結(jié)構(gòu)的底層,只和少量固定數(shù)目的節(jié)點(diǎn)存在聯(lián)系,這樣就大大降低了大部分組播成員的處理開銷。在Zig-Zag模型中,將節(jié)點(diǎn)之間的邏輯關(guān)系和連接關(guān)系分開進(jìn)行管理,每個(gè)節(jié)點(diǎn)與相鄰層的交叉節(jié)點(diǎn)交換數(shù)據(jù),從而提高了整棵樹的健壯性。但是,在Zig-Zag模型中,邏輯關(guān)系和連接關(guān)系之間的映射和網(wǎng)絡(luò)的動(dòng)態(tài)變化所帶來的維護(hù)開銷過高。
基于Gossip協(xié)議模型的基本思想是:一個(gè)節(jié)點(diǎn)隨機(jī)地選擇一組節(jié)點(diǎn)發(fā)送新產(chǎn)生的消息,收到消息的那些節(jié)點(diǎn)使用同樣的方式把消息發(fā)送出去,直到所有的節(jié)點(diǎn)收到消息為止?;跇錉钔?fù)鋮f(xié)議及擴(kuò)展的模型定義了節(jié)點(diǎn)與節(jié)點(diǎn)之間的關(guān)系,子節(jié)點(diǎn)從父節(jié)點(diǎn)獲取數(shù)據(jù)。在基于Gossip協(xié)議的系統(tǒng)模型中,節(jié)點(diǎn)之間不需要構(gòu)造復(fù)雜的拓?fù)潢P(guān)系,也沒有確定的父節(jié)點(diǎn)。在這種模型中,每個(gè)節(jié)點(diǎn)通過Gossip協(xié)議來維護(hù)系統(tǒng)中其它部分節(jié)點(diǎn)的視圖,通過一定的調(diào)度算法在節(jié)點(diǎn)之間實(shí)現(xiàn)數(shù)據(jù)交換。數(shù)據(jù)的傳輸采用拉模式,即節(jié)點(diǎn)首先向另一個(gè)節(jié)點(diǎn)發(fā)出請(qǐng)求,另一節(jié)點(diǎn)再根據(jù)請(qǐng)求發(fā)送數(shù)據(jù),在這種系統(tǒng)中,通常需要比較大的緩存,系統(tǒng)的啟動(dòng)延遲相對(duì)比較大。但是,因?yàn)槊總€(gè)節(jié)點(diǎn)的數(shù)據(jù)來源并不依賴于某個(gè)特定的父節(jié)點(diǎn),所以系統(tǒng)有更強(qiáng)的健壯性。
DONet(Data-driven Overlay Network)是一個(gè)典型的基于Gossip協(xié)議的模型。DONet的核心思想非常簡單:每個(gè)節(jié)點(diǎn)周期性的會(huì)跟其伙伴節(jié)點(diǎn)交換數(shù)據(jù)信息,它可以從一個(gè)或更多的伙伴節(jié)點(diǎn)處獲得需要的數(shù)據(jù),也可以向其他伙伴節(jié)點(diǎn)提供已有的數(shù)據(jù)信息。這種模型有三個(gè)顯著特點(diǎn):
1.易于實(shí)現(xiàn):DONet模型不需要構(gòu)建和維護(hù)更為復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu);
2.高效性:數(shù)據(jù)轉(zhuǎn)發(fā)是動(dòng)態(tài)過程,數(shù)據(jù)的傳輸方向并不固定,所以每個(gè)節(jié)點(diǎn)動(dòng)態(tài)地和其他節(jié)點(diǎn)交換緩存信息,并根據(jù)緩存信息交換節(jié)點(diǎn)之聞的媒體數(shù)據(jù);
3.魯棒性和容錯(cuò)性:DONet構(gòu)造的伙伴關(guān)系可以在多個(gè)提供者之間適時(shí)調(diào)整和快速轉(zhuǎn)化。
DONet的系統(tǒng)主要包含三個(gè)模塊:(1)節(jié)點(diǎn)的管理:負(fù)責(zé)維護(hù)系統(tǒng)中部分其它節(jié)點(diǎn)的視圖;(2)伙伴管理:和其它節(jié)點(diǎn)建立協(xié)作關(guān)系;(3)數(shù)據(jù)調(diào)度:負(fù)責(zé)動(dòng)態(tài)的和其它節(jié)點(diǎn)交換數(shù)據(jù)。在DONet中,每個(gè)節(jié)點(diǎn)既是數(shù)據(jù)的接收者,也是數(shù)據(jù)的提供者。服務(wù)器是一個(gè)特殊的節(jié)點(diǎn)只作為數(shù)據(jù)的提供者,稱為源節(jié)點(diǎn)。
通過對(duì)PeerCast、Zig-Zag和DONet三個(gè)典型系統(tǒng)的分析,可以發(fā)現(xiàn)它們都各有優(yōu)缺點(diǎn)。PeerCast、Zig-Zag都采用樹作為數(shù)據(jù)傳輸?shù)穆窂?,但它們?cè)跀U(kuò)展性和應(yīng)對(duì)節(jié)點(diǎn)的高動(dòng)態(tài)性方面都很差。因而,采用樹結(jié)構(gòu)這種單路徑傳輸機(jī)制,使得系統(tǒng)中很多節(jié)點(diǎn)的資源不能充分發(fā)揮作用,且節(jié)點(diǎn)之間的帶寬不高,僅僅從一個(gè)節(jié)點(diǎn)獲取數(shù)據(jù)很難滿足視頻直播這種帶寬要求較高的應(yīng)用。采用樹結(jié)構(gòu)進(jìn)行傳輸,也經(jīng)常因節(jié)點(diǎn)的變動(dòng)而導(dǎo)致其子樹節(jié)點(diǎn)播放質(zhì)量的降低。但同時(shí)也應(yīng)注意到樹狀結(jié)構(gòu)系統(tǒng)低延遲,節(jié)點(diǎn)之間同步性好的優(yōu)點(diǎn),對(duì)于實(shí)時(shí)性和同步性很高的系統(tǒng)也是一種很好的解決方案。因此,上述兩個(gè)樹狀系統(tǒng)適合于用戶數(shù)不太多,網(wǎng)絡(luò)環(huán)境好且媒體帶寬需求低的應(yīng)用。DONet系統(tǒng)采用網(wǎng)狀的覆蓋網(wǎng)結(jié)構(gòu),能很好地利用每個(gè)節(jié)點(diǎn)的能力,其系統(tǒng)的擴(kuò)展性和質(zhì)量等各方面都取得了較好的效果。但是其采用Gossip協(xié)議來構(gòu)造覆蓋網(wǎng),造成控制消息的開銷比較大,而且其數(shù)據(jù)分片較大不利于更加充分地利用各個(gè)節(jié)點(diǎn)的能力,其調(diào)度算法效率也不是很高,這些都是需要今后不斷改進(jìn)的地方。
由于P2P直播系統(tǒng)在大規(guī)模視頻播放上強(qiáng)大的功能,滿足了互聯(lián)網(wǎng)視頻播放廣泛的需求,近年來也得到了很大的發(fā)展并具有廣闊的應(yīng)用前景。當(dāng)前對(duì)于P2P流媒體直播技術(shù)的研究已經(jīng)取得了一定的成果,商業(yè)應(yīng)用上也出現(xiàn)了許多基于P2P的流媒體視頻直播系統(tǒng),如目前在互聯(lián)網(wǎng)上廣泛應(yīng)用的PPLive、PPstream以及騰訊公司的QQLive等。隨著P2P流媒體技術(shù)的日漸成熟,P2P流媒體技術(shù)將廣泛用于互聯(lián)網(wǎng)多媒體新聞發(fā)布、在線直播、網(wǎng)絡(luò)視頻廣告、電子商務(wù)、視頻點(diǎn)播、遠(yuǎn)程教育、網(wǎng)絡(luò)電臺(tái)、實(shí)時(shí)視頻會(huì)議等互聯(lián)網(wǎng)的信息服務(wù)領(lǐng)域。
[1]彭凱,武娟,楊宗凱,唐宏.基于P2P的流媒體直播技術(shù)研究與展望[J].計(jì)算機(jī)科學(xué),2009,36(1):10-15.
[2]廖宏越,趙藍(lán)蘭,周武章.流媒體協(xié)議的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)與數(shù)字工程,2007,35(4):106-108.
[3]羅建光,張萌,趙黎,楊士強(qiáng).基于P2P網(wǎng)絡(luò)的大規(guī)模視頻直播系統(tǒng)[J].軟件學(xué)報(bào),2007,18(2):391-399.
[4]劉宇翔,魯士文.基于流式傳輸模式的可靠多播協(xié)議[J].計(jì)算機(jī)工程,2006,(6):139-142.
[5]龔海剛,劉明,謝立.P2P流媒體傳輸?shù)难芯窟M(jìn)展綜述[J].計(jì)算機(jī)科學(xué),2004,31(9):20-22.
[6]刑小良.P2P技術(shù)及其應(yīng)用[M].北京:人民郵電出版社,2008.
[7]成培.P2P對(duì)等網(wǎng)絡(luò)資源定位技術(shù)的研究[D].長沙:湖南大學(xué),2008.
[8]楊海濱.基于P2P流媒體直播技術(shù)的研究和實(shí)現(xiàn)[D].南京:南京理工大學(xué),2008.
[9]呂燕樂.P2P與組播技術(shù)在流媒體中的研究與應(yīng)用[D].成都:西南交通大學(xué),2008.
TP393
A
1672-0547(2010)01-0080-03
2010-01-02
李如平(1973-),男,安徽肥東人,安徽工商職業(yè)學(xué)院電子信息系講師,碩士,研究方向:計(jì)算機(jī)應(yīng)用技術(shù)、信息管理。