P2P與NGN結(jié)合的IPTV控制架構(gòu)的研究
1 引言
目前,IPTV在全球范圍內(nèi)迅速發(fā)展,截止到2008年底IPTV用戶總數(shù)已達(dá)2170萬,與2007年底相比增長了63%。相關(guān)國際標(biāo)準(zhǔn)組織也在積極制定IPTV技術(shù)標(biāo)準(zhǔn),如ITU-T,ETSI TISPAN,ATIS IIF(ATIS IPTV Interoperability Forum),OIPTVF (Open IPTV Forum)以及MSF(Multi-Service Forum),很多組織都已經(jīng)推出了IPTV控制架構(gòu),從目前來看,可以將IPTV架構(gòu)分成兩大類,一類是非基于NGN的IPTV架構(gòu)(也稱為non- NGN-based IPTV),另一種是基于NGN的IPTV架構(gòu)(也稱為NGN-based IPTV)。
P2P技術(shù)在互聯(lián)網(wǎng)上,特別是VoIP,流媒體方面取得了很多成功應(yīng)用,典型的如Skype,PPLive,PPStream等。與現(xiàn)有電信網(wǎng)相比,利用P2P技術(shù)組成的服務(wù)網(wǎng)絡(luò)具有非中心化、可擴(kuò)展性、健壯性、高性價(jià)比、負(fù)載均衡等優(yōu)點(diǎn),為解決傳統(tǒng)電信運(yùn)營商基于C/S(客戶端/服務(wù)器)架構(gòu)的網(wǎng)絡(luò)所存在的一些固有問題提供了借鑒,如利用P2P分布化特點(diǎn)可以使網(wǎng)絡(luò)架構(gòu)趨向扁平;利用P2P自組織性提供電信網(wǎng)的可靠性降低維護(hù)費(fèi)用等。
是否可以在IPTV架構(gòu)中引入P2P也是近年來國內(nèi)外研究的一個(gè)熱點(diǎn),目前中國通信標(biāo)準(zhǔn)化協(xié)會(huì)CCSA正在組織制定《IPTV媒體交付系統(tǒng)技術(shù)要求——體系架構(gòu)》,擬探索傳統(tǒng)CDN與P2P融合之路,國際標(biāo)準(zhǔn)組織TISPAN也正在對(duì)在IPTV架構(gòu)中引入P2P技術(shù)進(jìn)行研究(具體參見研究報(bào)告:TR 182 01“Peer-to-Peer for Content Delivery for IPTV Services:Analysis of Mechanisms and NGN Impacts”;ITU-T在建議Y.iptv-netcontrol-fw中已經(jīng)提出利用P2P技術(shù)實(shí)現(xiàn)IPTV內(nèi)容分發(fā)控制的相關(guān)需求。
基于NGN的IPTV架構(gòu)作為一種典型的IPTV控制架構(gòu),是否可以和P2P結(jié)合,并滿足電信網(wǎng)可控可管的需求應(yīng)該是非常有益的探索。
2 研究思路
針對(duì)P2P與NGN結(jié)合的IPTV控制架構(gòu)的研究,應(yīng)該是在基于NGN的IPTV架構(gòu)基礎(chǔ)上,與P2P控制機(jī)制進(jìn)行有效地融合,并盡量降低相互之間的影響,以便減少對(duì)相關(guān)設(shè)備的影響。
基于NGN的IPTV控制架構(gòu)和P2P技術(shù)融合的難點(diǎn)和關(guān)鍵主要是在媒體資源和承載資源的控制機(jī)制上。NGN采用承載和控制分離機(jī)制,并通過會(huì)話過程、資源接納控制過程以及兩者之間的結(jié)合來實(shí)現(xiàn)對(duì)媒體資源和承載資源的有效控制,同時(shí)能夠?qū)崿F(xiàn)通過在業(yè)務(wù)控制平面和傳送平面之間引入資源接納控制功能(RACF)實(shí)現(xiàn)對(duì)承載資源的有效控制,包括QoS控制,NAPT/FW控制和NAT穿越等功能。但是P2P連接具有很強(qiáng)的動(dòng)態(tài)性、并發(fā)性且持續(xù)時(shí)間可能短暫等特點(diǎn),有種“盡力而為”的特點(diǎn),這種連接特性不太適宜進(jìn)行頻繁的會(huì)話連接建立或會(huì)話連接修改以及實(shí)施資源接納控制。需要考慮一種將兩種充分結(jié)合,同時(shí)又能夠滿足電信網(wǎng)一定可控可管需求的架構(gòu),該架構(gòu)應(yīng)能夠針對(duì)流媒體應(yīng)用的特點(diǎn),既能夠?qū)崿F(xiàn)全網(wǎng)負(fù)載均衡,又能夠?qū)崿F(xiàn)局部網(wǎng)絡(luò)中業(yè)務(wù)流量的均衡。
具體考慮和遵從的原則如下:
(1)采用分級(jí)分域結(jié)構(gòu),可以強(qiáng)化和匯聚對(duì)媒體和資源的管理及控制,保證網(wǎng)絡(luò)的可擴(kuò)展性,同時(shí)可以對(duì)P2P流量實(shí)施本地優(yōu)化。
對(duì)于域內(nèi)沒有的資源,考慮到基于盡量將終端P2P流量限定在域內(nèi)、避免對(duì)骨干網(wǎng)絡(luò)造成的沖擊、充分利用媒體服務(wù)器的緩存功能等考慮,最好由網(wǎng)絡(luò)中的服務(wù)器負(fù)責(zé)實(shí)現(xiàn)跨域資源調(diào)度。
(2)支持傳統(tǒng)終端和P2P終端,應(yīng)考慮終端層面P2P技術(shù)的引入,充分發(fā)揮P2P技術(shù)的優(yōu)點(diǎn),利用P2P終端的資源和能力,簡化網(wǎng)絡(luò)的負(fù)荷。但同時(shí),在終端層面引入P2P帶來了控制復(fù)雜性,內(nèi)容分發(fā)控制方面,面向傳統(tǒng)終端通常采用CDN技術(shù)來實(shí)現(xiàn)媒體內(nèi)容的分發(fā),為了支持P2P終端,需要考慮 P2P控制和CDN的結(jié)合;資源控制方面,由于P2P連接具有很強(qiáng)的動(dòng)態(tài)性、并發(fā)性且持續(xù)時(shí)間可能短暫等特點(diǎn),會(huì)話控制和承載控制相結(jié)合的機(jī)制很難和 P2P這種連接特性相適應(yīng),需要針對(duì)P2P連接特性相適應(yīng)的控制機(jī)制,并且不同的終端類型應(yīng)選用不同的控制機(jī)制。
(3)結(jié)合接入網(wǎng)狀態(tài)對(duì)P2P流量進(jìn)行控制。這方面可以借鑒P4P(Proactive network Provider Participation for P2P,運(yùn)營商主動(dòng)參與的P2P技術(shù))的思路,為了使電信運(yùn)營商能夠構(gòu)建一個(gè)可管可控的基于P2P的網(wǎng)絡(luò),P4P在挑選Peer方面增加了一系列機(jī)制,如通過獲得網(wǎng)絡(luò)拓?fù)湫畔?、用戶位置信息、鏈路狀態(tài)使得電信運(yùn)營商可以基于其網(wǎng)絡(luò)現(xiàn)狀,以最優(yōu)策略通過P2P技術(shù)向用戶提供電信業(yè)務(wù)。在對(duì)P2P流量進(jìn)行控制方面可以借鑒P4P的思路。
(4)與基于NGN的IPTV架構(gòu)融合的P2P資源列表生成方法,在列表生成方面不僅要考慮P2P終端狀態(tài)、媒體資源分布情況、接入網(wǎng)狀態(tài)、分級(jí)分域管理,還將充分考慮和基于NGN的控制機(jī)制的融合(如和會(huì)話控制的交互和協(xié)同、傳統(tǒng)終端對(duì)網(wǎng)絡(luò)資源的占用等)。
3 P2P與NGN結(jié)合的IPTV控制架構(gòu)
根據(jù)上述原則,通過對(duì)NGN,IPTV,CDN,P2P相關(guān)技術(shù)特點(diǎn)的研究,給出了一種P2P與NGN結(jié)合的IPTV控制架構(gòu)(見圖1)。P2P網(wǎng)絡(luò)可以采用集中目錄式、純P2P方式、超級(jí)節(jié)點(diǎn)方式和結(jié)構(gòu)化式組織??紤]到集中目錄式具有易于控制和管理、查詢效率高,并且能夠較好地與分級(jí)分域的理念相結(jié)合,所以在該控制架構(gòu)中對(duì)P2P終端采用了集中目錄式控制方式。
圖1 P2P NGN結(jié)合的IPTV控制架構(gòu)
本架構(gòu)的最大特點(diǎn)是結(jié)合CDN和NGN架構(gòu)(注:為了簡化沒有給出詳細(xì)的NGN相關(guān)控制實(shí)體,架構(gòu)中只體現(xiàn)了會(huì)話控制實(shí)體和資源接納控制功能實(shí)體),在此基礎(chǔ)上引入P2P相關(guān)功能,包括P2P控制實(shí)體和P2P用戶終端。通過對(duì)基于NGN的IPTV架構(gòu)和CDN架構(gòu)的改進(jìn),使該架構(gòu)既能夠具備電信網(wǎng)中網(wǎng)絡(luò)資源可控、可管的特征,又通過引入P2P具備了一定的靈活性和自組織能力,將電信網(wǎng)和互聯(lián)網(wǎng)技術(shù)的優(yōu)勢均集中在了一起。
該控制架構(gòu)中各主要實(shí)體的功能以及各實(shí)體之間的相互關(guān)系如下:
(1)普通用戶終端(UE):不支持P2P技術(shù)的普通終端。
(2)P2P用戶終端(P2P UE):P2P用戶終端是具有P2P功能的用戶終端,與普通用戶終端不同,P2PUE在從網(wǎng)絡(luò)下載流媒體內(nèi)容的同時(shí)也會(huì)上傳本地所擁有的流媒體內(nèi)容。具體功能包括:
●向P2P控制功能實(shí)體請求資源連接地址。
●根據(jù)P2P控制功能實(shí)體指示的資源連接地址,下載對(duì)應(yīng)的流媒體內(nèi)容。
●向P2P控制功能實(shí)體上報(bào)自身存儲(chǔ)的流媒體內(nèi)容和終端狀態(tài)信息。
(3)會(huì)話控制功能實(shí)體(SCF):會(huì)話控制功能負(fù)責(zé)IPTV的業(yè)務(wù)控制,可以對(duì)應(yīng)IMS網(wǎng)絡(luò)中的S-CSCF。SCF的作用是:
●為請求IPTV業(yè)務(wù)的用戶終端(包括P2P終端和非P2P終端)提供會(huì)話控制。
●根據(jù)用戶的IPTV業(yè)務(wù)請求,為該用戶查找控制該流媒體資源的媒體控制功能,將用戶的流媒體請求發(fā)送給流媒體資源控制進(jìn)行后繼處理。
●與資源接納控制功能交互,為非P2P終端提供QoS資源預(yù)留,保障非P2P用戶的IPTV業(yè)務(wù)質(zhì)量。
(4)CDN媒體控制功能實(shí)體(CDN-CF):負(fù)責(zé)為流媒體業(yè)務(wù)用戶選擇傳送媒體內(nèi)容的方式和傳送點(diǎn)。
●CDN-CF接收從SCF發(fā)送的IPTV媒體資源請求相關(guān)控制消息,CDN-CF能夠區(qū)分IPTV用戶終端,為不同類型的終端功能選擇不同的業(yè)務(wù)處理方式。
●CDN-CF與CDN-MF是一對(duì)多的關(guān)系。CDN-CF能夠?qū)⒚襟w內(nèi)容按照一定策略在多個(gè)媒體傳送功能中進(jìn)行分發(fā)。
●為了進(jìn)行資源調(diào)度和內(nèi)容傳送,以及在資源調(diào)度的過程中實(shí)現(xiàn)負(fù)載均衡,CDN-CF準(zhǔn)確掌握所控制的CDN-MF的狀態(tài)和媒體內(nèi)容的分布狀況。
●CDN-CF能夠根據(jù)網(wǎng)絡(luò)中IPTV業(yè)務(wù)的資源負(fù)載情況、保存的網(wǎng)絡(luò)中媒體內(nèi)容信息和用戶的業(yè)務(wù)請求,為用戶選擇傳送媒體內(nèi)容的CDN-MF。
●考慮到電信網(wǎng)用戶具有數(shù)量眾多、分布范圍廣的特點(diǎn),而媒體內(nèi)容存在熱點(diǎn)節(jié)目和冷僻節(jié)目之分的特點(diǎn),媒體控制功能可根據(jù)用戶數(shù)量、節(jié)目內(nèi)容等規(guī)模進(jìn)行分級(jí)設(shè)置。本級(jí)的CDN-CF負(fù)責(zé)向上一級(jí)的CDN-CF查找用戶請求的資源。
(5)CDN媒體存儲(chǔ)功能實(shí)體(CDN-MF):負(fù)責(zé)向IPTV業(yè)務(wù)用戶傳送媒體內(nèi)容。
●CDN-MF中保存媒體節(jié)目的全部或部分內(nèi)容,按照CDN-CF的指示向業(yè)務(wù)用戶傳送所請求的流媒體內(nèi)容。
●不同的CDN-MF之間可以通過P2P機(jī)制獲取存儲(chǔ)的流媒體內(nèi)容。當(dāng)一個(gè)CDN-MF中保存媒體節(jié)目的部分內(nèi)容時(shí),CDN-MF應(yīng)能夠采取P2P機(jī)制從其他CDN-MF處獲取本節(jié)目的其他內(nèi)容。
●CDN-MF將流媒體內(nèi)容信息和自身的負(fù)載情況(如硬件資源可用率,媒體傳送功能目前的連接數(shù)等)上報(bào)給上層控制功能,便于上層控制功能進(jìn)行資源調(diào)度。
●CDN-MF可根據(jù)CDN-CF的設(shè)置進(jìn)行分級(jí),并能夠在CDN-CF的控制下,從上級(jí)或同級(jí)的CDN-MF處獲取所需要的媒體內(nèi)容。(6)P2P控制功能實(shí)體(P2P CF):針對(duì)P2PUE進(jìn)行控制。
●將P2P機(jī)制引入之后,P2PUE在下載流媒體內(nèi)容的同時(shí),自身也存儲(chǔ)了部分的流媒體內(nèi)容,供其他P2PUE下載使用。在P2PCF中保存了流媒體內(nèi)容分片信息在P2PUE上的存儲(chǔ)信息和P2PU的在線狀態(tài)。
●P2PCF通過與性能測量功能的交互,獲取與用戶接入網(wǎng)相關(guān)的資源使用信息(如接入網(wǎng)剩余帶寬等)。
●在接收到P2PUE的內(nèi)容請求消息后,P2PCF根據(jù)流媒體內(nèi)容在其他用戶上的存儲(chǔ)信息、CDN-CF為該內(nèi)容傳送分配的CDN-MF信息、接入網(wǎng)資源的使用信息等調(diào)用資源調(diào)度算法,為該P(yáng)2P流媒體用戶計(jì)算各部分內(nèi)容的存儲(chǔ)位置。
(7)資源接納控制功能(RACF):負(fù)責(zé)為非P2P用戶的流媒體內(nèi)容下載進(jìn)行資源預(yù)留,以保障流媒體業(yè)務(wù)質(zhì)量。資源接納控制功能為NGN中定義的功能實(shí)體。
(8)性能測量管理點(diǎn):負(fù)責(zé)對(duì)接入網(wǎng)的網(wǎng)絡(luò)性能進(jìn)行測量。目前采用的是業(yè)務(wù)或應(yīng)用分配固定帶寬的方式,已不能適應(yīng)P2P過程中實(shí)時(shí)流媒體高帶寬高突發(fā)高QoS需求的要求。性能測量功能能夠獲取接入網(wǎng)流媒體業(yè)務(wù)的QoS參數(shù)(如端口或鏈路的吞吐量、延遲、丟包率等)并上報(bào)給P2PCF。P2PCF根據(jù)性能測量功能提供的監(jiān)測結(jié)果和網(wǎng)絡(luò)運(yùn)行狀態(tài)對(duì)媒體流做出適時(shí)的自動(dòng)調(diào)整,可以更好地提供QoS保證,實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)資源的動(dòng)態(tài)反饋控制。
4 典型工作流程
由于普通用戶終端和P2P用戶終端的控制方式、工作方式和服務(wù)質(zhì)量保證機(jī)制都不盡相同,本架構(gòu)對(duì)普通用戶終端和P2P終端分別設(shè)計(jì)了不同的機(jī)制和流程,作為示例,圖2和圖3分別給出了兩種終端從業(yè)務(wù)請求、媒體資源調(diào)度和內(nèi)容傳送的工作流程。
圖2 普通終端工作流程
圖3 P2P終端工作流程
4.1 普通終端的工作流程
圖2是普通終端的工作流程示例。
(1)用戶通過普通用戶終端發(fā)起IPTV業(yè)務(wù)請求。
(2)SCF判斷終端類型為普通用戶終端,則調(diào)用RACF執(zhí)行資源預(yù)留,以便為普通用戶的業(yè)務(wù)提供服務(wù)質(zhì)量保證。關(guān)于RACF的資源預(yù)留過程,可參見ITU-T和TISPAN的相關(guān)規(guī)定。
?。?)SCF根據(jù)用戶所在的地理位置、用戶類型等信息選擇為該用戶服務(wù)的CDN-CF,并向CDN-CF發(fā)送媒體資源請求。
(4)CDN-CF結(jié)合用戶請求的節(jié)目、CDN-MF的負(fù)載情況等信息進(jìn)行資源調(diào)度,為用戶選擇合適的CDN-MF為其服務(wù);并向所選擇的CDN-MF發(fā)送媒體資源請求。
?。?)CDN-MF可能需要從本域的其他CDN-MF處獲得節(jié)目相關(guān)的媒體信息。
如果所請求的節(jié)目內(nèi)容在本域內(nèi)不存在,CDN-CF需要通過上級(jí)CDN-CF選擇保存有節(jié)目內(nèi)容的管理域,然后CDN-CF和保存有節(jié)目內(nèi)容的管理域中的CDN-CF進(jìn)行交互,并控制CDN-MF從該域獲取相關(guān)的媒體資源。
當(dāng)CDN-MF準(zhǔn)備節(jié)目內(nèi)容之后向CDN-CF發(fā)送媒體資源響應(yīng)。
(6)CDN-CF向SCF回送響應(yīng),SCF和RACF交互執(zhí)行資源接納控制,之后將CDN-MF的地址等信息傳送給用戶終端。
(7)用戶終端從CDN-MF獲取媒體內(nèi)容。
4.2 P2P終端的工作流程
圖3是P2P終端的工作流程示例。
(1)用戶通過P2P用戶終端發(fā)起IPTV業(yè)務(wù)請求。
(2)會(huì)話控制實(shí)體收到IPTV業(yè)務(wù)請求后,根據(jù)用戶所在的地理位置、用戶類型等信息選擇為該用戶服務(wù)的CDN-CF,并向CDN-CF發(fā)送媒體資源請求。
?。?)CDN-CF結(jié)合用戶請求的節(jié)目,CDN-MF的負(fù)載情況,用戶類型等信息進(jìn)行資源調(diào)度。對(duì)于P2PUE,CDN-CF為用戶選擇合適的 P2PCF作為P2PUE后續(xù)網(wǎng)絡(luò)控制點(diǎn)。CDN-CF將為該用戶選擇的P2PCF地址等信息發(fā)送給SCF,SCF將該響應(yīng)發(fā)送給用戶。
?。?)P2PUE向P2PCF發(fā)起媒體下載請求。
?。?)P2PCF接收到用戶請求之后,首先向CDN-CF請求計(jì)算節(jié)目各分片對(duì)應(yīng)的CDN-MF列表。這樣P2PCF可以根據(jù)一定的策略將CDN-MF的地址融合在最終傳送給P2PUE的對(duì)等節(jié)點(diǎn)列表中,如為了提高面向用戶的響應(yīng)速度,可以控制P2PUE接入到CDN-MF獲取第一個(gè)分片或后續(xù)幾個(gè)分片。P2PCF 還可以將CDN-MF作為某個(gè)分片的備選地址,當(dāng)P2PUE在嘗試列表中的其他對(duì)等節(jié)點(diǎn)失敗時(shí),仍然可以從CDN-MF獲得分片。
?。?)P2PCF從性能測量管理點(diǎn)獲取接入網(wǎng)資源占用的情況,作為資源調(diào)度的重要依據(jù)。性能測量管理點(diǎn)可以周期性的向P2PCF上報(bào)接入網(wǎng)的情況。
?。?)獲得相關(guān)信息后,P2PCF根據(jù)接入網(wǎng)資源占用情況、從CDN-CF獲取的CDN-MF列表、存儲(chǔ)相關(guān)資源的P2P終端狀態(tài),生成供P2PUE下載節(jié)目片段的列表。
(8)P2PCF將列表發(fā)送給P2PUE,P2PUE根據(jù)列表和相應(yīng)的P2P終端交互獲取節(jié)目片段。
(9)在用戶觀看和/或下載節(jié)目的過程中,P2PUE定期或根據(jù)一定的觸發(fā)條件(如完成幾個(gè)分片下載后)向P2PCF上報(bào)本終端上存儲(chǔ)的流媒體節(jié)目片段的信息,供P2PCF計(jì)算列表時(shí)。
5 結(jié)束語
本文中給出的P2P與NGN結(jié)合的IPTV控制架構(gòu),關(guān)鍵是將NGN,CDN和P2P相結(jié)合,目的是在一定范圍內(nèi)實(shí)現(xiàn)P2P終端之間的資源共享。針對(duì)P2P技術(shù)特點(diǎn)設(shè)計(jì)了對(duì)應(yīng)的可控、可管和業(yè)務(wù)質(zhì)量保障架構(gòu)和機(jī)制,可以為相關(guān)研究提供新思路。