廖劍鋒
(華中科技大學(xué)文華學(xué)院,湖北 武漢 430074)
IPTV系統(tǒng)的內(nèi)容分發(fā)通?;贑DN的分層架構(gòu),將內(nèi)容盡可能地分發(fā)到離用戶最近的網(wǎng)絡(luò)邊緣[1]。當(dāng)有百萬用戶接入網(wǎng)絡(luò),要解決大規(guī)模用戶并發(fā)使用,就必須線性增加CDN系統(tǒng)的容量,使運營商投入過于龐大。另外,流媒體服務(wù)器可能會因為單點故障而導(dǎo)致所轄區(qū)域服務(wù)的崩潰,而傳統(tǒng)的CDN模式并沒有動態(tài)擴展性能。
與此同時,P2P流媒體傳輸技術(shù)也在走向成熟,并在全球廣泛使用。P2P技術(shù)既幫助用戶提升下載速率又降低了對節(jié)目源服務(wù)器的依賴[2]。但是,P2P技術(shù)也有其自身缺陷。目前國內(nèi)家庭用戶主要是采用ADSL方式,這種非對稱結(jié)構(gòu)不利于為其他P2P節(jié)點提供節(jié)目源。另外,P2P流媒體在管理維護、服務(wù)質(zhì)量保證、流量跨域無序性、商業(yè)模式上還不夠規(guī)范。P2P模式對運營商最大的破壞沖擊就是消耗掉了大量的網(wǎng)絡(luò)帶寬,特別是對運營商的骨干網(wǎng)絡(luò)影響最大,運營商要為此耗費巨大的投資來加大主干網(wǎng)絡(luò)帶寬。
P2P技術(shù)的優(yōu)點主要體現(xiàn)在非中心化、負(fù)載均衡和高性價比等方面[3]。由于IPTV對安全性和管理方面要求較高,P2P的“分散自由”導(dǎo)致P2P在管理和安全設(shè)置方面存在問題。P2P的關(guān)鍵缺陷在于大量耗費網(wǎng)絡(luò)帶寬,使運營商的網(wǎng)絡(luò)資源趨于緊張。
P2P技術(shù)的路由效率較低,P2P的各個資源是分散的,在查找路由時P2P普遍采用資源定位算法,這種算法效率較低。另外,P2P沒有好的方法選取和管理各服務(wù)端對等點,各個對等點基本上處于放任自由和無拘無束的狀態(tài)。因為P2P各對等點的隨機分布和盲目選擇,點與點之間缺乏有效管理和溝通方式,各個對等點各自為戰(zhàn),幾乎不考慮整個網(wǎng)絡(luò)的拓?fù)錉顟B(tài)情況,從而導(dǎo)致了大量的無用的P2P流量。由于P2P模型的局限性,P2P無法感知到網(wǎng)絡(luò)層及其以下的網(wǎng)絡(luò)拓?fù)湫畔⒑玩溌窢顟B(tài),所以沒有約束的P2P流量泛濫無可回避。另外,很多P2P應(yīng)用開發(fā)商在開發(fā)P2P軟件時,大部分注意力都集中在改進終端用戶的需求方面,而很少考慮P2P軟件對網(wǎng)絡(luò)帶寬的耗費問題,更無法體會到運營商在運營成本方面的窘境。
P2P應(yīng)用給底層網(wǎng)絡(luò)負(fù)載和網(wǎng)絡(luò)流量控制帶來了很大的壓力和挑戰(zhàn),傳統(tǒng)的流量控制技術(shù)難以有效處理采用P2P網(wǎng)絡(luò)架構(gòu)的多種應(yīng)用,P2P應(yīng)用和電信運營商之間的矛盾日益突出。電信運營商為網(wǎng)絡(luò)帶寬不斷擴容,但利潤并沒有增加,相反,可能還會因為設(shè)備投入過大而無法收回成本。在這種背景下,電信運營商迫于無奈,開始對P2P應(yīng)用下“毒手”。從2002年開始,美國的AT&T和Comcast公司公開表示要對P2P應(yīng)用進行限速甚至攔截。在國內(nèi),有很多城市的電信運營商也曾經(jīng)對不少家庭用戶封殺過BT等P2P軟件。這種封殺行為,遭到很多P2P軟件提供商和終端用戶的強烈抵制和抗議,甚至還有P2P軟件開發(fā)商開發(fā)出很多突破封殺的下載軟件。而終端用戶更是有人為此把電信運營商告上公堂,認(rèn)為運營商的此種行為涉嫌侵犯了公民的合法權(quán)益。P2P軟件開發(fā)商和終端用戶一致認(rèn)為,“運營商就像是自來水公司,在用戶交足費用后,用戶有權(quán)長時間把水龍頭出水量開到最大”,認(rèn)為網(wǎng)絡(luò)應(yīng)該是一種服務(wù),應(yīng)該時刻保持通暢,以疏為主,而不是堵。在這種輿論壓力下,電信運營商無奈也取消了這些限制和約束,又開始任由用戶進行P2P下載。但如何有效地規(guī)避P2P的缺陷,避免其耗費大量的帶寬,運營商也一直沒有找到好的解決辦法。
結(jié)合CDN和P2P的優(yōu)缺點,有很多學(xué)者建議將CDN和P2P結(jié)合使用。這些學(xué)者的普遍建議是,在骨干路由層和區(qū)域路由層采用CDN和P2P配合工作,以CDN為主,在邊緣層也采用CDN和P2P配合工作,以P2P為主。但是,從二者結(jié)合的使用實際來看,效果并不理想。其原因是:P2P(主要由P2P軟件開發(fā)商提供)與CDN(主要由運營商主導(dǎo))之間缺乏有效配合、各自為戰(zhàn),運營商與P2P應(yīng)用沒有建立有效的協(xié)作關(guān)系,運營商沒有為P2P提供底層的各種有針對性的網(wǎng)絡(luò)參數(shù)信息,而P2P也沒有為運營商提供有針對性的參數(shù)信息,P2P的多變性和多樣性讓運營商無法適應(yīng)。另外,P2P可能會導(dǎo)致節(jié)點之間流量不平衡,有可能對硬件或網(wǎng)絡(luò)資源沖擊較大,缺少運營商的“網(wǎng)絡(luò)平衡”或“負(fù)載均衡”支持。特別是對于相距較遠(yuǎn)貫穿骨干網(wǎng)的節(jié)點之間的數(shù)據(jù)傳遞,網(wǎng)絡(luò)負(fù)荷影響較大。所以CDN和P2P進行簡單融合的方法并沒有解決這些難點問題。
由此來看,單純P2P技術(shù)和單純只靠運營商自己都不能擔(dān)當(dāng)重任,各自單方面的努力都是徒勞的。唯一解決之道,就是P2P軟件開發(fā)商和電信運營商相互協(xié)作,二者密切配合,運營商要主動參加到P2P技術(shù)的應(yīng)用中來。任何一方的策略都存在明顯缺陷,只有兩方相互通信、相互協(xié)作才能真正有效地解決問題。美國耶魯大學(xué)謝海永博士率先提出了運營商主動參與的P2P技術(shù),即Proactive Network Provider Participation for P2P,也叫P4P技術(shù)。以謝海永博士為主,再加上網(wǎng)絡(luò)運營商Verizon公司和P2P軟件商Pando,聯(lián)合組成了P4P工作組。工作組以對等網(wǎng)絡(luò)廠商、運營商協(xié)作的方式運行,提出以域內(nèi)部署的服務(wù)器為核心進行優(yōu)化,強調(diào)實體之間的優(yōu)化互聯(lián),P4P協(xié)議支持緩存形式的流量優(yōu)化設(shè)備,工作組通過大規(guī)模試驗驗證P4P的實際效果,并開展P4P應(yīng)用。
P4P技術(shù)不是P2P技術(shù)的簡單升級,其最主要的理念就是電信運營商要主動參與到P2P的整個流程。從終端用戶到IPTV系統(tǒng)的服務(wù)資源,整個鏈路要求電信運營商和P2P軟件開發(fā)商全程參與和合作。P2P軟件開發(fā)商需要電信運營商為每個對等點提供詳盡的底層網(wǎng)絡(luò)信息,比如,網(wǎng)絡(luò)拓?fù)?、鏈路狀態(tài)信息、網(wǎng)間鏈路成本信息、帶寬信息等,這些信息對于幫助和引導(dǎo)P2P軟件進行有效通信至關(guān)重要,而作為P2P應(yīng)用層開發(fā)商剛好缺乏這些信息。為加強服務(wù)性能和保障,P2P軟件開發(fā)商甚至可以要求電信運營商提供服務(wù)器進行P2P交換。另外一個方面,有了P2P軟件開發(fā)商的幫助,電信運營商也可以加強對IPTV中資源的管理,特別是涉及到版權(quán)和安全機制方面的管理。所以說,電信運營商和P2P應(yīng)用開發(fā)商完全可以化敵為友,互相幫助和促進,共同擔(dān)負(fù)起發(fā)展IPTV技術(shù)的重任。
P4P架構(gòu)實際上相當(dāng)于在電信運營商和P2P軟件應(yīng)用之間開啟了顯式通信接口,P2P軟件主動調(diào)用這些通信接口以獲得必要的底層網(wǎng)絡(luò)信息,請求鏈路按需分配網(wǎng)絡(luò)資源。通過這些設(shè)置,就可以顯著降低不必要的跨越整個運營商骨干鏈路的流量。
CDN和P4P二者的融合模型可以這樣設(shè)計,在先期CDN框架之上,在運營商的骨干網(wǎng)或主干鏈路層次仍然保留先期的CDN系統(tǒng)結(jié)構(gòu),功能也不變。流媒體內(nèi)容通過傳統(tǒng)CDN技術(shù),從中心服務(wù)器推送至網(wǎng)絡(luò)邊緣服務(wù)器??蓪吘壏?wù)器和(或)終端服務(wù)器采用P2P技術(shù)。在邊緣服務(wù)器引入可管理、可控制的P2P技術(shù),邊緣服務(wù)器所管理的邊緣用戶自治域間的傳輸采用P2P技術(shù)。P2P的范圍盡可能控制在本地服務(wù)器服務(wù)范圍之內(nèi),這樣可減少骨干網(wǎng)上的突發(fā)和穿越流量。如果用戶請求的內(nèi)容沒有在本地服務(wù)器中,則邊緣服務(wù)器通過CDN向中心服務(wù)器索取,同時向本地用戶進行P2P分發(fā)[4]。因為CDN模型具有分域的顯著特點,一個特定域內(nèi)的邊緣服務(wù)器數(shù)量有限,對域內(nèi)邊緣服務(wù)器采用P2P技術(shù)并不會帶來網(wǎng)絡(luò)擁塞。邊緣服務(wù)器這種Peer節(jié)點比較特殊,一般是作為一種備用資源使用,幾乎從不參與P2P數(shù)據(jù)的交換。所以,用戶數(shù)越多對網(wǎng)絡(luò)服務(wù)器的依賴就越強,要想解決這個問題,就必須在終端采用P2P技術(shù)。另一方面,終端用戶不同于服務(wù)器,它的功能不夠強大,而且自由度也比較大,可能會隨時關(guān)閉??梢园堰吘壏?wù)器作為終端對等點的有益補充,將邊緣服務(wù)器上的同一個節(jié)目源作為備選,其目的是提高用戶資源定位的成功率,降低P2P查詢流量。圖1是CDN和 P4P融合架構(gòu)圖,根據(jù)分析,CDN和P4P融合的架構(gòu)相當(dāng)于在終端用戶和接入網(wǎng)層面或Edge Network(邊緣網(wǎng)絡(luò))層面采用P2P技術(shù)。
圖1 CDN和P4P融合架構(gòu)
謝海永博士提出的P4P,主要包括控制層、管理層和數(shù)據(jù)層。管理層主要是對控制平臺進行管理和監(jiān)控,數(shù)據(jù)層提供的功能較為簡單,主要是涉及到對P2P的流量進行分類識別和對優(yōu)先級進行設(shè)置,這里主要研究控制層。P4P的控制層是基于網(wǎng)絡(luò)監(jiān)管服務(wù)器(iTracker)和P2P應(yīng)用監(jiān)管服務(wù)器(appTracker)的P4P整體架構(gòu);從接口設(shè)計需求和理論分析兩方面描述了iTracker和appTracker在接口實現(xiàn)上需要考慮的簡單性、語義豐富性、可擴展性、隱私性等要求和最大化網(wǎng)絡(luò)鏈路利用率等目標(biāo)。
如圖2所示,P4P控制層中引入了iTracker和appTracker。iTracker可以作為電信運營商與P2P應(yīng)用進行交互的接口,它和P2P應(yīng)用的appTracker一起,構(gòu)成了整個P4P架構(gòu)的控制層。而每個ISP都可以通過操作屬于自己的iTracker,管理本ISP內(nèi)部的節(jié)點,并實現(xiàn)與P2P應(yīng)用的協(xié)作。在iTracker中,控制層主要提供了3種不同的接口,包括info接口、policy接口和capability接口。這些接口一方面保護了電信運營商的私密性,另一方面又允許電信運營商和P2P應(yīng)用聯(lián)合起來提升彼此的性能。
圖2 P4P的控制平臺
另外,iTracker可以將網(wǎng)絡(luò)拓?fù)涑橄鬄楣?jié)點(PID)和連接節(jié)點(PID)鏈路的集合,如圖3所示。同時,iTracker還會給PID之間的鏈路計算出一個代價,這樣各個CDN節(jié)點就可以通過訪問iTracker獲得PID圖,從而根據(jù)這些信息選擇合適的CDN代理節(jié)點。
圖3 PID圖
圖4是P4P的基本響應(yīng)流程圖。假如電信運營商A的節(jié)點a要和電信運營商B的節(jié)點b請求policy接口的響應(yīng),則可以分為兩種情況進行討論:如果是有中心服務(wù)器和appTracker的P2P結(jié)構(gòu),節(jié)點a和b均首先給自己所屬的P2P應(yīng)用的appTracker發(fā)送policy請求信息,而appTracker收到此請求之后,對該請求進行封裝和轉(zhuǎn)換,然后再分別將此請求轉(zhuǎn)發(fā)給兩個節(jié)點各自所屬的iTracker,而每個節(jié)點所屬的iTracker收到請求之后立刻做出響應(yīng),迅速把結(jié)果返回給appTracker,此時兩個節(jié)點與appTracker的握手都還沒有結(jié)束,因此appTracker可以迅速將從iTracker中得到的結(jié)果直接返回給這兩個節(jié)點,就這樣,P4P的響應(yīng)流程宣告完成;如果是沒有中心服務(wù)器和appTracker的P2P結(jié)構(gòu),每個節(jié)點都存儲有相應(yīng)的分布式哈希表DHT,而iTracker的信息也一定存在這些哈希表中,這兩個節(jié)點的請求均可轉(zhuǎn)發(fā)至各自所屬的iTracker中,iTracker根據(jù)請求返回響應(yīng),查找哈希表,可以順利地將返回結(jié)果發(fā)送到這兩個節(jié)點中。圖4中的黑色雙向箭頭表示的是有中心服務(wù)器和appTracker的控制信息,空心雙向箭頭表示的是沒有中心服務(wù)器和appTracker的控制信息。
圖4 P4P基本響應(yīng)流程
通過P4P工作組在PlanetLab上和實際系統(tǒng)中的實驗,進行了大量的仿真BitTorrent,Liveswarms和Pando等P2P應(yīng)用,實驗結(jié)果表明P4P方法可以有效降低P2P應(yīng)用對底層網(wǎng)絡(luò)的不合理利用,大量降低了跨越ISP的核心骨干鏈路上的網(wǎng)絡(luò)流量,減少繁忙鏈路上的帶寬占用[5]。圖5所示為P2P拓?fù)鋱D和P4P拓?fù)鋱D,可以看到,在同等條件下,經(jīng)過P4P技術(shù),經(jīng)過核心骨干路由的路徑顯著減少,各個網(wǎng)絡(luò)節(jié)點的負(fù)載也顯著降低。謝海永博士的項目組曾經(jīng)做過大量P4P實驗,如圖6所示,是使用了P4P技術(shù)的P2P軟件BitTorrent實驗數(shù)據(jù)圖[5],采取P4P方法進行技術(shù)處理后的P2P流量所占用的帶寬減少非常明顯。另外,Verizon和Telefonica公司也對P2P和P4P做了大量對比實驗。由圖7可以看到,采用P4P技術(shù)后,數(shù)據(jù)傳輸所經(jīng)過的平均路由跳數(shù)明顯減少,這對電信運營商十分有利,路由跳數(shù)減少,表明消耗的網(wǎng)絡(luò)資源就越少。由圖8可以看到,隨著peer節(jié)點數(shù)的逐漸增多,采用P4P技術(shù)后數(shù)據(jù)傳輸所用的平均時間顯著減少。
圖8 P2P與P4P傳輸時間比較
如前所述,P2P模式主要包括純P2P方式、結(jié)構(gòu)化式和集中目錄式。集中目錄式易于控制和管理,由于所有的內(nèi)容請求都集中到了一個或少數(shù)幾個節(jié)點,這就很容易對用戶的行為進行監(jiān)視和管理,也很容易對該網(wǎng)絡(luò)中的內(nèi)容進行控制。集中目錄式雖然查詢效率較高,但也存在缺陷,主要問題是如果單點出現(xiàn)故障或性能方面出現(xiàn)問題將不好解決。
在IPTV網(wǎng)絡(luò)中,運營商為保證服務(wù)質(zhì)量做了很多工作,IPTV的版權(quán)內(nèi)容受到規(guī)范管理和控制,可以考慮采用集中目錄式的架構(gòu)對P2P進行管理。另一方面,結(jié)合CDN模式具有分級別和分區(qū)域的特征,合理規(guī)劃網(wǎng)絡(luò)結(jié)構(gòu),為P2P域指定特定的范圍,以此來回避集中目錄式架構(gòu)的不足。
為提高P2P服務(wù)保證,可以優(yōu)先使用域內(nèi)的資源,對于域內(nèi)沒有的資源,則通過邊緣服務(wù)器負(fù)責(zé)跨域調(diào)度到本地,終端不參與跨域的資源調(diào)度。為了便于實現(xiàn)域間的資源調(diào)度、提高域內(nèi)提供資源下載的能力和負(fù)載均衡,考慮將邊緣服務(wù)器拆分成向用戶提供媒體下載服務(wù)的“媒體控制功能”和側(cè)重于管理的“媒體分發(fā)動能”[2]。
P4P技術(shù)協(xié)助解決P2P的技術(shù)缺陷,運營商、P2P應(yīng)用開發(fā)商和終端用戶都可以從中受益。作為技術(shù)參與方,電信運營商可以積極投身于P2P數(shù)據(jù)傳輸和交換,幫助應(yīng)用開發(fā)商和用戶查找和定位P2P資源。應(yīng)用開發(fā)商和終端用戶使用融合有P4P技術(shù)的P2P,就可以從運營商那里獲得很多有用信息,比如網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)、各個鏈路狀態(tài)、用戶帶寬等。而這些信息對應(yīng)用開發(fā)商是至關(guān)重要的,他們可以借助于此對P2P網(wǎng)絡(luò)進行大量的擴展開發(fā)。對P2P資源的有效管理和正確引導(dǎo),可以大大提高P2P網(wǎng)絡(luò)的使用價值。運營商可以充分利用這些信息,充分發(fā)揮集中目錄式架構(gòu)的優(yōu)勢,對用戶的資源請求進行有效的管理和合理的引導(dǎo),從而優(yōu)化P2P流量。
同時還應(yīng)注意到,IPTV對DRM(數(shù)字版權(quán)管理)十分重視,P4P技術(shù)也同樣涉及到DRM問題。雖然目前P2P應(yīng)用軟件開發(fā)商對版權(quán)保護十分抵觸,對參與運營商主導(dǎo)的P4P不夠積極,但電信運營商和P2P應(yīng)用軟件開發(fā)商互相合作的思路為P2P技術(shù)指明了發(fā)展方向。雖然目前帶有嵌入式P2P功能的機頂盒價格較貴,從而導(dǎo)致普及不夠廣泛[6]。但無論是中國還是其他國家,借助于P4P的IPTV一定會發(fā)展起來并形成規(guī)模。
使用CDN和P4P融合的技術(shù)成為近來IPTV系統(tǒng)的研究熱門。結(jié)合下一代廣播電視網(wǎng)NGB的發(fā)展,IPTV還可以把各種服務(wù)平臺融合在一起[7]。在IPTV網(wǎng)絡(luò)中采用CDN和P4P結(jié)合的思想和技術(shù)是大勢所趨,這種思想充分發(fā)揮了P2P技術(shù)在媒體分發(fā)方面的去中心化優(yōu)勢,規(guī)避了在信令層面的去中心化弱勢。另外,運營商還要對各個對等實體加強管理和引導(dǎo),從而構(gòu)造出性能優(yōu)越的IPTV系統(tǒng)架構(gòu)。
[1]王厚芹,車士義.推進我國三網(wǎng)融合勢在必行[J].電視技術(shù),2010,34(6):109-112.
[2]吳宏建.IPTV網(wǎng)絡(luò)中CDN和P2P結(jié)合的技術(shù)分析及研究[J].現(xiàn)代電信科技,2009(5):14-17.
[3]林華明.使用P4P技術(shù)的IPTV交付系統(tǒng)的分析與研究[J].電視技術(shù),2011,35(4):55-57.
[4]王晨凌.基于P2P和CDN融合架構(gòu)的IPTV系統(tǒng)[J].電信科學(xué),2009(S2):181-184.
[5]XIE Haiyong,KRISHNAMURTHY A,SILBERSCHATZ A,et al.P4P:explicit communications for cooperative control between P2P and network providers[EB/OL].[2010-12-15].http://www.dcia.info/documents/P4P_Overview.pdf.
[6]詹曉濤.CDN與P2P相結(jié)合的流媒體系統(tǒng)設(shè)計[J].電視技術(shù),2009,33(6):67-70.
[7]《電視技術(shù)》編輯部.下一代廣播電視網(wǎng)概述[J].電視技術(shù),2009,33(6):55-56.