摘要:P2P流媒體技術(shù)已成為網(wǎng)絡(luò)應(yīng)用中熱門的技術(shù)之一,本文主要介紹流媒體,P2P的相關(guān)概念,并著重對(duì)P2P流媒體的關(guān)鍵技術(shù)進(jìn)行了研究,最后又提出了P2P流媒體技術(shù)應(yīng)該面對(duì)的挑戰(zhàn)。
關(guān)鍵詞:P2P ;流媒體;應(yīng)用層組播;激勵(lì)機(jī)制
1 引言
隨著互聯(lián)網(wǎng)的發(fā)展,流媒體業(yè)務(wù)逐漸增多,網(wǎng)絡(luò)電視,遠(yuǎn)程教育,視頻點(diǎn)播已成為流媒體技術(shù)的熱門應(yīng)用。傳統(tǒng)的流媒體服務(wù)大都是客戶/服務(wù)器(C/S)模式, 即用戶從流媒體服務(wù)器點(diǎn)擊觀看節(jié)目, 然后流媒體服務(wù)器以單播方式把媒體流推送給用戶。當(dāng)流媒體業(yè)務(wù)發(fā)展到一定階段后, 用戶總數(shù)大幅度增加, 這種C/S模式加單播方式來推送媒體流的缺陷便明顯地顯現(xiàn)出來,如流媒體服務(wù)器帶寬占用大、流媒體服務(wù)器處理能力要求高等,這些常常成為系統(tǒng)瓶頸。P2P技術(shù)的引進(jìn),為流媒體開辟了新的發(fā)展空間。
2 P2P流媒體技術(shù)
2.1流媒體技術(shù)
流媒體(streaming Media)是應(yīng)用流式傳輸技術(shù)在網(wǎng)絡(luò)上傳播音頻、視頻或多媒體文件。而流技術(shù)就是將影像和聲音信息經(jīng)過壓縮處理后轉(zhuǎn)換成流媒體,用視頻服務(wù)器把節(jié)目流媒體當(dāng)成數(shù)據(jù)包發(fā)出,傳送到網(wǎng)絡(luò)上,用戶通過解壓設(shè)備對(duì)這些數(shù)據(jù)進(jìn)行解壓后,節(jié)目就會(huì)像發(fā)送前那樣顯示出來。這個(gè)過程的一系列相關(guān)的數(shù)據(jù)包稱為“流”。流媒體應(yīng)用的一個(gè)最大好處是用戶不需要花費(fèi)很長(zhǎng)時(shí)間將數(shù)據(jù)全部下載到本地才能播放,而只需要將起始幾秒的數(shù)據(jù)先下載到本地的緩沖區(qū)中就可以開始播放,然后邊下載邊播放,當(dāng)網(wǎng)絡(luò)實(shí)際連線速度小于播放所耗用資源的速度時(shí),播放程序就會(huì)取用這一小段緩沖區(qū)的資料,避免播放中斷,也使播放品質(zhì)得以維持。
2.2 P2P技術(shù)
P2P即Peer-to-Peer,稱為對(duì)等連接或?qū)Φ染W(wǎng)絡(luò),是指不同系統(tǒng)之間通過直接交換,實(shí)現(xiàn)計(jì)算機(jī)資源和服務(wù)共享的一種應(yīng)用模式。P2P使得網(wǎng)絡(luò)上的溝通變得容易、更直接共享和交互,真正地消除中間商。簡(jiǎn)單的說,P2P就是人可以直接連接到其他用戶的計(jì)算機(jī)、交換文件,而不是像過去那樣連接到服務(wù)器去瀏覽與下載。P2P另一個(gè)重要特點(diǎn)是改變互聯(lián)網(wǎng)現(xiàn)在的以大網(wǎng)站為中心的狀態(tài)、重返“非中心化”,并把權(quán)力交還給用戶。在P2P系統(tǒng)中,每一個(gè)Peer都是平等的參與者,承擔(dān)服務(wù)使用者和服務(wù)提供者兩個(gè)角色。資源的所有權(quán)和控制權(quán)被分散到網(wǎng)絡(luò)的每一個(gè)節(jié)點(diǎn)中。服務(wù)使用者和服務(wù)提供者之間進(jìn)行直接通信,可充分利用網(wǎng)絡(luò)帶寬,減少網(wǎng)絡(luò)的擁塞狀況,使得資源的有效利用率大大提高。P2P系統(tǒng)不同于傳統(tǒng)的C/S工作方式,使其具有了新的特點(diǎn):節(jié)點(diǎn)數(shù)量大;動(dòng)態(tài)性強(qiáng);異構(gòu)性強(qiáng);分布廣泛;網(wǎng)絡(luò)異步性強(qiáng)等特點(diǎn)。
2.3 基于P2P流媒體技術(shù)
在基于P2P的流媒體技術(shù)中,每個(gè)流媒體用戶是一個(gè)P2P中的一個(gè)節(jié)點(diǎn),用戶可以根據(jù)他們的網(wǎng)絡(luò)狀態(tài)和設(shè)備能力與一個(gè)或幾個(gè)用戶建立連接來分享數(shù)據(jù),這種連接能減少服務(wù)器的負(fù)擔(dān)和提高每個(gè)用戶的視頻質(zhì)量.P2P技術(shù)在流媒體應(yīng)用中特別適用于一些熱門事件,即使是大量的用戶同時(shí)訪問流媒體服務(wù)器,也不會(huì)造成服務(wù)器因負(fù)載過重而癱瘓 。
基于P2P的流媒體服務(wù)系統(tǒng)并不改變現(xiàn)有的流媒體服務(wù)架構(gòu),只是在現(xiàn)有系統(tǒng)的基礎(chǔ)上,改變傳統(tǒng)模式下的服務(wù)方式和數(shù)據(jù)傳輸路徑,使請(qǐng)求同一媒體流的客戶端組成一個(gè)P2P網(wǎng)絡(luò),使服務(wù)器只須向這個(gè)P2P網(wǎng)絡(luò)中的少數(shù)節(jié)點(diǎn)發(fā)送數(shù)據(jù),而這些節(jié)點(diǎn)可以把得到的數(shù)據(jù)共享給其余的節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)依然可以通過流媒體系統(tǒng)得到高質(zhì)量的視頻服務(wù)。在一個(gè)P2P流媒體系統(tǒng)中,一個(gè)對(duì)等節(jié)點(diǎn)的子集擁有一個(gè)特定的媒體文件(或文件的一部分),并為對(duì)此文件感興趣的其他節(jié)點(diǎn)提供媒體數(shù)據(jù)。與此同時(shí),請(qǐng)求數(shù)據(jù)的節(jié)點(diǎn)在下載媒體數(shù)據(jù)的過程中回放并存儲(chǔ)這個(gè)媒體的數(shù)據(jù),并成為可以為其他節(jié)點(diǎn)提供流媒體數(shù)據(jù)上載的節(jié)點(diǎn)。
3 P2P流媒體關(guān)鍵技術(shù)研究
P2P流媒體的關(guān)鍵技術(shù)主要包括:應(yīng)用層組播技術(shù)、容錯(cuò)機(jī)制、媒體同步技術(shù)、激勵(lì)機(jī)制和安全機(jī)制。
3.1 應(yīng)用層組播技術(shù)
組播指的是在Internet網(wǎng)上對(duì)一組IP站點(diǎn)進(jìn)行數(shù)據(jù)傳送,這一組IP站點(diǎn)是動(dòng)態(tài)形成的,每一個(gè)IP站點(diǎn)都可以動(dòng)態(tài)地加入或者退出這個(gè)組。應(yīng)用層組播(ALM:Application layer Multicast)是在應(yīng)用層而不是網(wǎng)絡(luò)層上實(shí)現(xiàn)組播能力,由端系統(tǒng)而不是路由器實(shí)現(xiàn)組播轉(zhuǎn)發(fā)功能,并將組成員節(jié)點(diǎn)直接自組織成一個(gè)邏輯覆蓋網(wǎng)絡(luò)。P2P應(yīng)用層組播結(jié)構(gòu)有單組播樹結(jié)構(gòu),多組播樹結(jié)構(gòu)和網(wǎng)絡(luò)結(jié)構(gòu)。單組播樹結(jié)構(gòu)是指在整個(gè)組播結(jié)構(gòu)中,數(shù)據(jù)是通過一棵組播樹傳輸?shù)?。樹的根結(jié)點(diǎn)是組播源,每個(gè)非葉結(jié)點(diǎn)從自己唯一的父結(jié)點(diǎn)得到全部數(shù)據(jù),再?gòu)?fù)制轉(zhuǎn)發(fā)給自己所有的子結(jié)點(diǎn),葉結(jié)點(diǎn)只從父結(jié)點(diǎn)得到數(shù)據(jù),不再?gòu)?fù)制轉(zhuǎn)發(fā)。當(dāng)組中的非葉結(jié)點(diǎn)退出時(shí),它的子結(jié)點(diǎn)將暫時(shí)得不到數(shù)據(jù),這時(shí),系統(tǒng)需要盡快重建連接,保證所有結(jié)點(diǎn)都在組播樹中。多播樹結(jié)構(gòu)在數(shù)據(jù)的傳輸路徑上引入了冗余,視頻流不再由一個(gè)組播樹來完成轉(zhuǎn)發(fā),而是先按設(shè)定的編碼方式被分割成視頻段,然后不同視頻段由不同生成樹完成轉(zhuǎn)發(fā)。這樣可以做到一個(gè)節(jié)點(diǎn)僅在一個(gè)組播樹中作為轉(zhuǎn)發(fā)節(jié)點(diǎn),在其余組播樹中作為葉節(jié)點(diǎn),當(dāng)一個(gè)節(jié)點(diǎn)出現(xiàn)死機(jī)或網(wǎng)絡(luò)出現(xiàn)故障時(shí),只影響小部分節(jié)點(diǎn)。
3.2 容錯(cuò)機(jī)制
由于P2P流媒體系統(tǒng)中節(jié)點(diǎn)的動(dòng)態(tài)性,正在提供服務(wù)的節(jié)點(diǎn)可能會(huì)離開系統(tǒng),傳輸鏈路也可能因擁塞而失效。為了保證接受服務(wù)的連續(xù)性,必須采取一些容錯(cuò)機(jī)制使系統(tǒng)的服務(wù)能力不受影響或盡快恢復(fù)。對(duì)于節(jié)點(diǎn)失效的問題,可以采取主備用節(jié)點(diǎn)的方式容錯(cuò)。在選擇發(fā)送節(jié)點(diǎn)時(shí),應(yīng)選擇多個(gè)服務(wù)節(jié)點(diǎn),其中某個(gè)節(jié)點(diǎn)(集)作為活動(dòng)節(jié)點(diǎn)(集),其余節(jié)點(diǎn)則作為備用節(jié)點(diǎn)。流媒體服務(wù)的實(shí)時(shí)性較強(qiáng), 因此節(jié)點(diǎn)的故障檢測(cè)時(shí)間應(yīng)盡可能短, 才能保證服務(wù)不中斷。數(shù)據(jù)的編碼技術(shù)也可以提供系統(tǒng)的容錯(cuò)性。
3.3 媒體同步技術(shù)
由于網(wǎng)絡(luò)時(shí)延,導(dǎo)致媒體流在傳輸過程中失去同步關(guān)系,傳輸?shù)臅r(shí)延不可預(yù)期,媒體同步機(jī)制可以確實(shí)地恢復(fù)媒體流的同步。同步機(jī)制的目的就是保證接收端以正確的時(shí)間收到的媒體數(shù)據(jù)。媒體同步機(jī)制實(shí)際上就是在媒體內(nèi)或者媒體間說明。對(duì)于連續(xù)媒體,應(yīng)用最為廣泛的說明方法說明或時(shí)間戳。時(shí)間戳法是在每個(gè)媒體的數(shù)據(jù)流單元中加進(jìn)統(tǒng)一的間碼,具有相同時(shí)間戳的信息單元將同時(shí)予以表現(xiàn)。在發(fā)送時(shí),將按時(shí)間順序分成單元,在同一個(gè)時(shí)間軸上,給每個(gè)單元都打上一個(gè)同一時(shí)標(biāo)的各個(gè)媒體單元具有相同的時(shí)間戳。在各個(gè)媒體到達(dá)終端相同時(shí)間戳的媒體單元同時(shí)進(jìn)行表現(xiàn),這樣就得到了媒體之間同步。
3.4 激勵(lì)機(jī)制
目前的各種激勵(lì)機(jī)制主要有以下三種:基于微支付機(jī)制、基于直接互惠的機(jī)制和基于信譽(yù)機(jī)制?;谖⒅Ц稒C(jī)制用虛擬貨幣作為P2P網(wǎng)絡(luò)中服務(wù)或資源交易的媒介,體現(xiàn)了對(duì)節(jié)點(diǎn)貢獻(xiàn)的反饋,從而使得節(jié)點(diǎn)有積極性去參與合作?;谥苯踊セ莸臋C(jī)制的基本思想是P2P網(wǎng)絡(luò)中的服務(wù)提供節(jié)點(diǎn)在為其他節(jié)點(diǎn)提供服務(wù)后能得到某種直接優(yōu)惠?;谛抛u(yù)的機(jī)制主要是在P2P網(wǎng)絡(luò)中引入了一個(gè)等級(jí)的概念,即每一個(gè)節(jié)點(diǎn)根據(jù)自己在網(wǎng)絡(luò)的歷史行為情況獲得由網(wǎng)絡(luò)中與它鄰近的其他節(jié)點(diǎn)所評(píng)價(jià)得出的信譽(yù)值。在以后的服務(wù)或資源交易中,其他節(jié)點(diǎn)均根據(jù)請(qǐng)求節(jié)點(diǎn)的信譽(yù)值給予對(duì)應(yīng)等級(jí)的回應(yīng)。
3.5 安全機(jī)制
網(wǎng)絡(luò)安全是P2P流媒體系統(tǒng)的基本要求, 通過安全領(lǐng)域的防火墻、身份識(shí)別認(rèn)證、授權(quán)、數(shù)據(jù)完整性、保密性對(duì)P2P信息進(jìn)行安全控制。數(shù)字版權(quán)管理(DRM)可以有效保護(hù)知識(shí)產(chǎn)權(quán),通過DRM技術(shù),內(nèi)容提供商可以方便地對(duì)各種音樂、圖像等媒體文件進(jìn)行加密保護(hù),使受保護(hù)的多媒體文件不會(huì)被用戶非法拷貝和復(fù)制。在P2P流媒體系統(tǒng)內(nèi),可采用用戶分級(jí)授權(quán)的辦法, 阻止非法訪問。
4 結(jié)語
總之,P2P流媒體代表著未來多媒體數(shù)據(jù)在網(wǎng)絡(luò)傳輸?shù)陌l(fā)展方向,基于此技術(shù)的軟件產(chǎn)品諸如BT、PPlive、PPStream已得到廣泛的應(yīng)用,并顯示出越來越好的發(fā)展前景。同時(shí),由于對(duì)等網(wǎng)絡(luò)中的流媒體數(shù)據(jù)對(duì)于網(wǎng)絡(luò)帶寬、延時(shí)、實(shí)時(shí)性和穩(wěn)定性的要求非常高. 因此需要在應(yīng)用層網(wǎng)絡(luò)、媒體分布、節(jié)點(diǎn)管理與控制和安全控制等方面進(jìn)行研究與探索.相信在不久的將來,P2P流媒體系統(tǒng)將帶給我們更優(yōu)質(zhì)的多媒體服務(wù)。
參考文獻(xiàn)
[1]張麗.流媒體技術(shù)大全.北京:中國(guó)青年出版社,2001
[2]王洪波,馬軼慧. P2P流媒體技術(shù)原理與應(yīng)用. 中興通訊技術(shù),2007,(12):18-19
[3]王艷麗等.基于P2P的流媒體技術(shù).計(jì)算機(jī)應(yīng)用,2005,(6):1267-1270,