什么是P2P技術呢?P2P是peer-to-peer的縮寫,peer在英語里有"(地位、能力等)同等者"、"同事"和"伙伴"等意義。因此,P2P也就可以理解為"伙伴對伙伴"的意思,或稱為對等聯(lián)網(wǎng)。P2P技術自面市以來一直受到廣泛的關注。最近幾年,P2P技術更是發(fā)展迅速。目前,業(yè)界對P2P的定義還沒有一個標準的說法,Intel將P2P技術定義為"通過系統(tǒng)間的直接交換達成計算機資源與信息的共享",這些資源與服務包括信息交換、處理器時鐘、緩存和磁盤空間等。IBM則對P2P賦予了更廣闊的定義,把它看成是由若干互聯(lián)協(xié)作的計算機構成的系統(tǒng)并具備如下若干特性之一:系統(tǒng)依存于邊緣化(非中央式服務器)設備的主動協(xié)作,每個成員直接從其他成員而不是從服務器的參與中受益;系統(tǒng)中成員同時扮演服務器與客戶端的角色;系統(tǒng)應用的用戶能夠意識到彼此的存在而構成一個虛擬或?qū)嶋H的群體。
簡單地說,P2P技術是一種用于不同PC用戶之間、不經(jīng)過中繼設備直接交換數(shù)據(jù)或服務的技術,其網(wǎng)絡通信方式如圖一所示。它打破了傳統(tǒng)的Client/Server模式,在對等網(wǎng)絡中,每個節(jié)點的地位都是相同的,具備客戶端和服務器雙重特性,可以同時作為服務使用者和服務提供者。由于P2P技術的飛速發(fā)展,互聯(lián)網(wǎng)的存儲模式將由目前的"內(nèi)容位于中心"模式轉(zhuǎn)變?yōu)?quot;內(nèi)容位于邊緣"模式,改變Internet現(xiàn)在的以大網(wǎng)站為中心的狀態(tài),重返"非中心化",將權力交還給用戶。
目前,在網(wǎng)絡電視、文件共享、分布式計算、網(wǎng)絡安全、在線交流甚至是企業(yè)計算與電子商務等應用領域P2P都顯露出很強的技術優(yōu)勢。簡單的說,P2P直接將人們聯(lián)系起來,讓人們通過互聯(lián)網(wǎng)直接交互。P2P使得網(wǎng)絡上的溝通變得容易、更直接共享和交互。P2P就是人可以直接連接到其他用戶的計算機、交換文件,而不是像過去那樣連接到服務器去瀏覽與下載。P2P看起來似乎很新,但是正如B2C、B2B是將現(xiàn)實世界中很平常的東西移植到互聯(lián)網(wǎng)上一樣,在現(xiàn)實生活中我們每天都按照P2P模式面對面地或者通過電話交流和溝通。
P2P的本質(zhì)思想是,整個網(wǎng)絡中不存在中心節(jié)點(或中心服務器)。在P2P結構中,每一個節(jié)點(Peer)大都同時具有信息消費者、信息提供者和信息通訊者等三方面的功能,在P2P網(wǎng)絡中每一個節(jié)點所擁有的權利和義務都是對等的。在P2P工作方式中,每一個客戶終端既是客戶機,又是服務器。它弱化了服務器的作用,將信息數(shù)量、成本資源都向互聯(lián)網(wǎng)各點均勻分布,也就是所謂的"邊緣化"的趨勢,消除了單個資源帶來的瓶頸,可以控制和實現(xiàn)網(wǎng)絡上各節(jié)點的負荷平衡。P2P技術不僅能利用服務器的資源,同時能合理地使用用戶計算機的空閑資源。用戶在享受媒體節(jié)目的同時,也在利用自身計算機所空閑的資源為其他用戶提供著服務。所以,使用P2P技術提供高質(zhì)量和大容量的流媒體服務系統(tǒng)成為可能。
P2P技術在網(wǎng)絡電視中的應用
IPTV即交互式網(wǎng)絡電視,是一種利用寬帶有線電視網(wǎng),集互聯(lián)網(wǎng)、多媒體、通訊等多種技術于一體,向家庭用戶提供包括數(shù)字電視在內(nèi)的多種交互式服務的嶄新技術。它能夠很好地適應當今網(wǎng)絡飛速發(fā)展的趨勢,充分有效地利用網(wǎng)絡資源。 IPTV既不同于傳統(tǒng)的模擬式有線電視,也不同于經(jīng)典的數(shù)字電視。傳統(tǒng)的和經(jīng)典的數(shù)字電視都具有頻分制、定時、單向廣播等特點;盡管經(jīng)典的數(shù)字電視相對于模擬電視有許多技術革新,但只是信號形式的改變,而沒有觸及媒體內(nèi)容的傳播方式。
IPTV關鍵技術
IPTV是利用計算機或機頂盒+電視完成接收視頻點播節(jié)目、視頻廣播及網(wǎng)上沖浪等功能。它采用高效的視頻壓縮技術,使視頻流傳輸帶寬在800Kb/s時可以有接近DVD的收視效果(通常DVD的視頻流傳輸帶寬需要3Mb/s),對今后開展視頻類業(yè)務如因特網(wǎng)上視頻直播、遠距離真視頻點播、節(jié)目源制作等來講,有很強的優(yōu)勢,是一個全新的技術概念。IPTV的特點及應用 IPTV是利用寬帶有線電視網(wǎng)的基礎設施,以家用電視機作為主要終端電器,通過互聯(lián)網(wǎng)絡協(xié)議來提供包括電視節(jié)目在內(nèi)的多種數(shù)字媒體服務。
隨著P2P研究的進一步深入, P2P技術可以設計一個運營商級的音視頻業(yè)務系統(tǒng),采用P2P技術的播放軟件成就了網(wǎng)絡電視的發(fā)展。P2P既代表一種新技術,也映射著一種新文化,從技術角度來說,它用Peer與Peer的對等溝通,打破了目前網(wǎng)絡流行的C/S主從模式,是對互聯(lián)網(wǎng)應用技術的創(chuàng)新,也是互聯(lián)網(wǎng)本質(zhì)的回歸。P2P受到了廣大網(wǎng)民的喜愛,目前主要的應用的網(wǎng)絡電視下載有PPStream、沸點網(wǎng)絡電視、TVKoo、貓眼網(wǎng)絡電視、QQ直播;影視歌曲下載類的bt、百寶、酷狗(KuGoo)、電騾(eMule)等;通信類的Skype等。網(wǎng)絡電視的發(fā)展吸引了眾多的網(wǎng)民,它可以為用戶提供極為豐富的業(yè)務,如VoD點播、互聯(lián)網(wǎng)瀏覽、電子郵件、多種在線信息咨詢、游戲、個人視頻錄制、電子商務、VOIP、即時通信IM等。P2P技術在網(wǎng)絡電視領域中更是如魚得水,主要體現(xiàn)在以下幾方面:
(1)文件交換,資源共享:在傳統(tǒng)的WEB方式中,實現(xiàn)文件交換必須要通過服務器,通過把文件上傳到某個特定網(wǎng)站,用戶再到該網(wǎng)站搜索需要的文件,然后下載,這種方式需要WEB服務器能夠?qū)Υ罅坑脩舻脑L問提供有效服務。而P2P模式下,用戶可以從任何一個在線用戶的計算機中直接下載,從而真正實現(xiàn)了個人計算機與服務器的對等。
(2)在線交流,即時通訊:通過使用P2P客戶端軟件,用戶之間可以進行即時交談,可以就網(wǎng)絡節(jié)目進行討論,從而實現(xiàn)實時互動。這樣既增加了用戶收看網(wǎng)絡電視的積極性,又促進了媒體提供者和媒體消費者之間的互動。
(3)快捷搜索,對等連接:P2P網(wǎng)絡模式中節(jié)點之間的動態(tài)而又對等的互聯(lián)關系使得搜索可以在對等點之間直接地、實時地進行,既可以保證搜索的實時性,又超越傳統(tǒng)目錄式搜索引擎的深度、速度、幅度。
傳統(tǒng)的流媒體服務大都是客戶/服務器(C/S)模式如圖二所示,即用戶從流媒體服務器點擊觀看節(jié)目,然后流媒體服務器以單播方式把媒體流推送給用戶。當流媒體業(yè)務發(fā)展到一定階段后,用戶總數(shù)大幅度增加,這種C/S模式加單播方式來推送媒體流的缺陷便明顯地顯現(xiàn)出來(如流媒體服務器帶寬占用大、流媒體服務器處理能力要求高等),帶寬、服務器等常常成為系統(tǒng)瓶頸,系統(tǒng)的可擴展性差。而通過P2P技術引入到流媒體傳輸中而形成的P2P流媒體技術,具有如下優(yōu)點:首先,這種技術并不需要互聯(lián)網(wǎng)路由器和網(wǎng)絡基礎設施的支持,因此性價比高且易于部署;第二,在這種技術中,流媒體用戶不只是下載媒體流,而且還把媒體流上載給其他用戶,因此,這種方法可以擴大用戶組的規(guī)模,且更多的需求也帶來了更多的資源。同時相對于互聯(lián)網(wǎng)上眾多計算機,P2P應用比其他應用要更多考慮那些低端PC的互聯(lián),它們不具備服務器那樣強的聯(lián)網(wǎng)能力,同時對于以往的P2P應用技術,現(xiàn)在的硬件環(huán)境已經(jīng)更為復雜,這樣在通信基礎方面,P2P必須提供在現(xiàn)有硬件邏輯和底層通信協(xié)議上的端到端定位(尋址)和握手技術,建立穩(wěn)定的連接。涉及的技術有IP地址解析、NAT路由及防火墻。目前互聯(lián)網(wǎng)主要技術模式是S/C方式,此方式要在互聯(lián)網(wǎng)上設置擁有強大處理能力和大帶寬的高性能計算機,配合高檔的服務器軟件,再將大量的數(shù)據(jù)集中存放在上面,并且要安裝多樣化的服務軟件,在集中處理數(shù)據(jù)的同時可以對互聯(lián)網(wǎng)上其他PC進行服務,提供或接收數(shù)據(jù),提供處理能力及其他應用。對于一臺與服務器聯(lián)機并接受服務的PC機來說,這臺PC機就是客戶機,其性能可以相對弱小。而P2P技術的特征之一就是弱化了服務器的作用,甚至取消服務器,任意兩臺PC互為服務器,同時又是客戶機,即對等。
S/C方式造成互聯(lián)網(wǎng)絡上的集中,無論信息資源還是成本資源均向同一方向集中,這樣的模式符合一對多、強對弱的社會關系形式,如政府對個人、對企業(yè),大企業(yè)對小企業(yè),學校對學生,企業(yè)對職工等等關系。雖然"客戶/服務器"模型是目前互聯(lián)網(wǎng)上占統(tǒng)治地位的計算模型,但從某種意義來說,P2P計算可以說是一種向傳統(tǒng)互聯(lián)網(wǎng)技術的回歸,體現(xiàn)了互聯(lián)網(wǎng)的本質(zhì),因為互聯(lián)網(wǎng)最初的設計目標就是讓網(wǎng)絡上的計算機互相之間可以直接通信而不需要中介。
P2P直播的技術難點
目前結合P2P技術的IPTV業(yè)務應用已經(jīng)有多種實現(xiàn),然而P2P技術為IPTV業(yè)務實現(xiàn)帶來靈活和高效率等優(yōu)點的同時也帶來一些問題,比如時延、網(wǎng)絡不可控、可管理性差等問題,在IPTV業(yè)務中應用P2P技術必須要考慮和解決上述問題。P2P技術的基本理念就是對等,體現(xiàn)在應用中就是參與者不但接受服務而且提供服務(如:共享資源等)。另外該技術主要應用于互聯(lián)網(wǎng),同樣具有互聯(lián)網(wǎng)盡力而為的印跡,其本身并不考慮控制、管理等問題,而這些問題在電信業(yè)務應用中則是不可或缺的重要部分,因此在IPTV的內(nèi)容分發(fā)系統(tǒng)中應用P2P技術就必須考慮和解決一些問題,包括:業(yè)務時延問題、網(wǎng)絡不可控問題、ADSL節(jié)點上下行帶寬不對稱的問題、NAT/FW穿越的問題、安全性問題、可管理性問題。
(1)穿透防火墻配置:防火墻電腦超過了90%,如果讓2臺在防火墻后面的電腦能夠?qū)崿F(xiàn)P2P互聯(lián),這是一個技術的難點。有兩種方式:一是要求用戶配置TCP端口:BT和電驢采用的方式,配置需要網(wǎng)絡專業(yè)知識。一般做法是通過在防火墻上開啟TCP端口來實現(xiàn),如果開啟了端口或者本身有Internet IP地址的,為高聯(lián)通性電腦;在防火墻內(nèi)并且沒有開啟TCP端口的電腦,為低聯(lián)通性電腦。高聯(lián)通性電腦可以和其它的高聯(lián)通性電腦已及低聯(lián)通性電腦進行P2P;而低聯(lián)通電腦只能和高聯(lián)通性電腦進行P2P。因此在BT、電驢中,有Internet IP或者已及在防火墻上開啟端口的電腦速度很快,而在防火墻后面的電腦(一般為局域網(wǎng)上網(wǎng)方式)就比較慢了。而通過局域網(wǎng)方式上網(wǎng)的電腦超過70%,如果沒有網(wǎng)絡基礎,或者沒有網(wǎng)管特殊配置,只能處于低聯(lián)通性,速度慢。二是防火墻自動穿透。無需用戶配置,自動讓兩臺在防火墻后面的電腦能P2P互聯(lián)。P2P連接可以使用TCP和UDP兩種方式。而Tvkoo是使用UDP進行數(shù)據(jù)傳送的,因此不會有TCP限制。
(2)用戶時延:用P2P技術實現(xiàn)IPTV業(yè)務的內(nèi)容分發(fā)實際上也是一種應用層組播方式,也就是在各個Peer上實現(xiàn)的組播,由于P2P方式的內(nèi)容分發(fā)每個內(nèi)容切片往往要經(jīng)過多跳才能到達請求端,因此這種方式必然會帶來時延的疊加效應,即離根節(jié)點越遠的用戶時延越大。
(3)網(wǎng)絡拓撲不可控:用戶加入、退出P2P網(wǎng)絡有一定的隨意性、偶然性。P2P網(wǎng)絡的拓撲不可控,具有隨機的動態(tài)變化的特點,如果不采取其他補償措施,必然會導致IPTV業(yè)務的服務質(zhì)量無法得到有效保障。針對此問題補償?shù)霓k法有:路由備份,即為用戶請求的每個時間段的流文件切片都提供至少兩條路由,當其中一條路由中斷時,能迅速切換到其他可選路由繼續(xù)下載所需的文件切片,以保證流文件在觀看過程中的流暢性。內(nèi)容本地緩存技術,也就是在用戶正式播放流文件前,在其終端預先緩存一定時間長度的流文件片段,從而為觀看過程中的業(yè)務抖動留出處理時間,并使用戶能夠順序觀看。
(4)上、下行帶寬不對稱:P2P網(wǎng)絡具有異構的特點,也就是實際的用戶終端能力和網(wǎng)絡能力都不盡相同,特別是隨著寬帶用戶逐漸的增加,而ADSL網(wǎng)絡用戶占寬帶用戶很大的比例。ADSL網(wǎng)絡上下行帶寬不對稱的特點對于P2P技術應用的影響比較大。即使在網(wǎng)絡條件比較好的情況下,一個ADSL用戶的上行帶寬可能也無法滿足其它用戶的媒體接收速度,這樣造成接收者帶寬的浪費,同時接收媒體的質(zhì)量低,會嚴重影響用戶體驗。既然無法改變大多數(shù)寬帶用戶采用ADSL網(wǎng)絡的現(xiàn)狀,就只能通過其他辦法來解決這一問題,可行的方法有:接收者同時選擇幾個ADSL用戶的發(fā)送者,根據(jù)不同的發(fā)送者的上傳速度,在各個發(fā)送者之間進行平衡。根據(jù)不同的用戶帶寬來提供變碼率的媒體編碼技術,目前MPEG-2、MPEG-4、MPEG-7以及H.264等主流的高壓縮率的編碼技術都支持變碼率的編碼技術。這樣可以為不同帶寬的用戶提供最合理的服務質(zhì)量,只是實現(xiàn)的復雜度稍高。