石利軍,梁建武
(中南大學信息科學與工程學院,湖南 長沙 410075)
隨著計算機網絡的迅猛發展和寬帶用戶數的持續增長,在互聯網上提供傳輸音頻和視頻業務也漸漸成為電信運營商和業務提供商的新經濟增長點。其中,交互式網絡電視(IPTV)的前景被看好。目前,國內的IPTV系統主要采用客戶端/服務器(C/S)模式提供直播和點播業務[1],當面臨超大用戶量時,此系統的服務能力成為了瓶頸,甚至嚴重影響整個系統的穩定性和視頻服務的質量。主要由于IPTV系統服務器輸入/輸出的限制、存儲容量的壓力、網絡帶寬擁塞以及負載不均衡等。目前主要有兩種方法可緩解系統壓力:一是采用組播來提供廣播,由于客觀條件的制約,在目前的網絡上難以實現;二是采用內容傳送網絡(CDN)技術[2],能實現一定形式的優化,但是當節點負載均衡器出問題時,系統用戶可能得不到服務,而且需要部署大量的邊緣節點,存儲投入成本也將相應的增加。
P2P(Peer to Peer)技術與C/S結構的本質區別是整個網絡結構中不存在中心節點(中心服務器),網絡的參與者共享他們所擁有的一部分硬件資源。就IPTV而言,節點同時從流媒體數據源服務器與其他節點獲取流媒體數據,減輕了服務器的壓力,極大地提高了系統的可擴展性[3]?;赑2P的IPTV系統由于其部署成本低廉,系統可擴展性好,近年來得到了大力的研究和發展,尤其在我國,目前已經涌現出如QQLIVE,PPLIVE和PPStream等知名P2P流媒體技術提供商和服務商[4]。P2P技術有3種網絡模型:集中目錄式、純P2P網絡和混合網絡模型。
IP多媒體子系統(IMS)[5]是由3GPP在Release 5版本中提出并被ITU-T和TISPAN采納的下一代網絡的核心控制子系統。IMS采用水平分層模型以區別與傳統電信網絡的垂直化架構,意味著傳輸和承載服務被從IMS信令網和會話管理服務中分離出去,實現了運營商對用戶數據和業務的統一管理和統一的鑒權、授權與計費、統一的會話控制功能[6]。IMS網絡可以分為3層,分別是應用層、控制層和傳輸層[7]。
本文在重點研究了IMS分層結構的管理優勢與P2P技術的傳輸方面優勢的基礎上,提出了基于IMS的可控可管的P2P網絡電視的架構,為下一代融合網絡的網絡電視架構提供一種新的可運營的思路。
目前出現的基于P2P的網絡電視架構,雖然可以使視頻資源傳輸和部署都能很好地服務于IPTV系統,但仍存在如下問題:1)缺乏版權保護機制,難以引入大量的合法內容;2)不支持個性化計費,運營商難以實現盈利的模式運營;3)不能實現區域調度,給網絡帶來巨大壓力。合理的分享P2P技術所帶來的巨大收益,運營需要一個可控可管可運營的P2P網絡來支撐現在的各種寬帶業務。
IMS系統可使基于IP的網絡成為一個可控的網絡。因此可以考慮通過將P2P網絡引入到IMS系統中,實現基于IMS-P2P的網絡架構,來解決現在基于P2P的網絡電視系統中的控制、管理、運營、計費以及 QoS等問題。
基于IMS的可控可管P2P網絡電視系統架構如圖1所示。

圖1 基于IMS的P2P網絡電視系統架構
本文提出的基于IMS的可控可管的P2P網絡電視系統架構主要在原有IMS系統架構中引入了新的功能實體,即超級管理節點(SMP)。系統網絡的信令控制使用IMS系統信令,用戶層面的媒體傳輸采用P2P優化,系統還增加了媒體源服務器(MSS)、網絡電視應用服務器(IPTV-AS)和電子節目指南(EPG)服務器。
引入的新功能實體SMP主要集成了Tracker服務器和緩存服務器的功能。集成的Tracker服務器主要功能包括:保存用戶peer信息、緩存服務器的資源狀態信息、其歸屬自治域的資源分布信息、節點下載統計、上傳統計以及服務能力等,并實現資源的發現和查詢。緩存服務器類似于CDN網絡中邊緣緩存節點,負責緩存流媒體節目流數據,為用戶peer提供流媒體數據下載。根據系統用戶容量可以設置1個或多個超級管理節點SMP,各SMP負責一部分歸屬節點peer,形成一個自治域,用戶peer通過注冊加入各自歸屬的SMP,實現控制管理。各SMP之間通過P2P的機制增強,充當peer節點,使其集成的緩存服務器可以共享媒體分片,實現負載均衡。各SMP自治域中的用戶peer之間同樣以P2P的形式組織,實現資源共享,故系統SMP和媒體傳輸層的用戶節點peer構成一個混合型P2P網絡。
媒體源服務器負責節目內容的提供、內容的編碼、媒體格式轉換、切片,并將部分內容根據區域等通過CDN方式推送到不同SMP的緩存服務器。網絡電視應用服務器主要集成內容發布和管理服務器、頻道及點播信息服務器。EPG服務器主要向用戶提供直播頻道列表、點播VOD節目列表信息以及互動信息。
在本系統架構中,HSS數據庫中存儲著SMP信息和注冊節點信息,HSS在用戶注冊期間根據用戶IP信息和SMP的歸屬范圍,為該用戶指派一個SMP,使其加入相應的自治域。SMP和HSS之間采用Diameter協議在用戶注冊和退出時進行信息更新。
新節點在加入時,首先經過IMS的注冊,得到自己S-CSCF,HSS通過加入節點的IP地址,采用IP最長前綴匹配策略為其分配歸屬SMP節點。新加入節點在完成IMS注冊獲取到其歸屬SMP節點的信息(IP地址和端口)后,發起加入系統申請,其歸屬SMP通過同HSS進行信息更新,獲取到該節點的注冊信息,并對其進行鑒權。如果鑒權通過,該節點加入到該系統,SMP更新其維護的自治域中的peerlist信息,將該節點加入;否則,返回鑒權未通過,加入系統失敗。
節點的離開包括兩種情況:一種是節點正常關機退出,該節點向S-CSCF發出另一register請求來解除注冊,收到解除注冊請求后,HSS更新該節點在線狀態,并通知其SMP節點該節點已解除注冊,SMP收到此通知消息更新其維護的peerlist,刪除該節點信息,并向自治域中的其他以該節點為數據源的peers發送更新數據源消息,至此,該節點正常退出;另一種情況是節點非正常關機或掉線失效,系統通過SMP發送心跳檢測及時感知其自治域中節點的在線狀態,根據實際情況每隔5~10 s發送一個alive消息來確認。一旦檢測到某一節點失效,則SMP更新其peerlist信息,刪除失效節點信息,并通知相關節點更新數據源,以及通知HSS該節點失效,HSS更新數據信息,同步到S-CSCF。
2.3.1 系統注冊和認證
基于IMS可控可管P2P網絡電視架構系統的注冊和認證流程如圖2所示。

圖2 系統注冊和認證流程
1)用戶peer發送register請求給P-CSCF,這個請求包含要注冊的標識編碼(IP地址)和I-CSCF地址。
2)P-CSCF處理并轉發register請求到提供的ICSCF。
3)~4)I-CSCF聯系HSS,分配所需的 S-CSCF,并將register請求轉發給S-CSCF。
5)~8)S-CSCF會發現這個用戶沒有被授權,它向HSS索取認證數據,并且通過401未授權響應對該用戶注冊表示異議。
9)~12)用戶計算對這個異議的響應,發送另一register請求給P-CSCF,P-CSCF再次找到 I-CSCF,I-CSCF依次找到S-CSCF,轉發register請求。
13)S-CSCF檢查該響應,如果響應正確,就從HSS下載用戶配置,同時HSS根據用戶的IP信息來分配一個SMP給用戶,將該用戶歸屬到一個自治域,該SMP的IP地址和端口號會同用戶的配置一同下載到S-CSCF,S-CSCF保存下載的用戶信息。
14)~15)用戶進行IPTV注冊,S-CSCF將register請求發送給對應的IPTV應用服務器,進行專屬服務的注冊和鑒權,如果注冊通過將返回200 OK給相應的SCSCF,并將電子節目指南EPG服務器的地址一并下發,否則,返回4xx終止注冊消息給S-CSCF,這里假定注冊成功。
16)~18)S-CSCF通過200 OK來響應接受注冊。
19)SMP與HSS之間進行信息更新同步,HSS將注冊節點的信息發送到相關的SMP,用于SMP對節點加入系統的鑒權,SMP也周期性地將自己維護的節點信息更新到HSS。
20)~21)用戶通過200 OK響應中攜帶的SMP節點信息,發起系統加入申請,并在申請中將自己的IP地址和端口號,以及自己的配置和資源狀況發送給SMP,SMP通過從HSS更新到的注冊節點信息對該節點進行鑒權驗證,如果驗證通過,SMP將該節點IP信息報告給集成的Tracker服務器,該IP信息將會成為peerlist成員,作為候選資源,并響應鑒權成功;否則響應未注冊。
完成以上注冊和認證,用戶可以進行視頻的直播、點播。用戶可以通過終端嵌入的瀏覽器訪問注冊過程中IPTV應用服務器下發的EPG服務器地址來瀏覽節目表,訪問視頻節目。
2.3.2 資源及服務的調度策略
該系統充分利用了CDN網絡的調度能力,由CDN網絡自行完成在SMP集成緩存服務器的內容部署,可根據區域等進行分區域部署,各SMP之間以Chord環方式組織起來,使其集成緩存服務器之間通過P2P機制增強,共享媒體分片,實現負載均衡和分擔,從而提高系統容量。每個SMP又與其歸屬域中的peers也以Chord環組成,這樣整個系統構成一個混合式P2P網絡。
當某一視頻流媒體源上線后,向用戶peer提供服務的是其歸屬區域中的SMP緩存服務器或SMP的鄰居peer;對于觀看人數多的內容節目,大部分資源由其歸屬域中的peer提供,其中SMP的緩存服務器只作為應急之選,提供必要的補償。
對于連接用戶peer很少的節目內容,主要由SMP的緩存服務器來保證服務,系統通過對用戶的主動干預進行資源的快速增加。在這種情況下,系統會選定某個區域作為初始發布區,系統會選定某個SMP作為初始發布點。SMP保留多少資源由策略決定,可能是完整的內容資源,也可能是一定長度的片頭。
本系統的資源及服務調度策略可以歸結為“本地資源優先+分層次中心調度+SMP緩存服務器補償”。
1)首先,用戶peer通過訪問EPG服務器來瀏覽節目單信息,點播相關的視頻節目,包括直播和點播視頻,向其歸屬自治域中的SMP發起節目查詢請求。
2)SMP收到該用戶節目請求,首先查詢其保存的緩存服務器的視頻資源信息是否有該節目源,如果有則優先將緩存服務器中的資源發送給該用戶,并查詢其維護的自治域中的peer信息,將正在點播該節目或之前某段時間內點播過該節目的peer IP組成一個peerlist發送給該節點,并更新自己維護的peer資源信息。
3)該用戶節點播放視頻資源,并將收到的peerlist進行排序,選擇其中部分節點直接連接,實現P2P的資源獲取,其余節點作為后備節點使用,并根據同peerlist中節點獲取資源的情況來減少對SMP視頻資源的獲取,釋放帶寬資源。
4)如果SMP緩存中沒有該用戶所請求的資源,則SMP查找其維護peer資源信息中是否有節點擁有該節目源,如果有則返回相關peerlist;否則說明該歸屬域中沒有節點點播或緩存該節目,SMP與其組成P2P網絡的其他SMP節點發出查詢請求,進行SMP層的視頻資源查詢。如果在SMP層查詢到相關視頻信息,則返回peerlist;否則需要直接請求S-CSCF通過媒體資源服務器來提供資源。
5)用戶節點在觀看視頻的同時也將一段時間內的視頻片段逐漸存儲在本地,同時更新自己的資源信息到SMP,SMP的Tracker服務器將其存儲在對應的資源peerlist中,供其他用戶請求該資源使用。
2.3.3 用戶計費管理
本文提出的系統架構是基于IMS系統,因此可以使用IMS中的計費體系。SMP記錄了各個用戶的網絡行為信息,包括登錄時間、退出時間以及獲得的資源信息,這樣可以幫助IMS系統對P2P網絡中的節點進行收費信息的收集和管理,從而實現不同的計費策略。運營商可指定用戶類型進行計費,比如普通用戶和預付費用戶,也可以根據SMP記錄的用戶網絡行為來計費,可以根據流量或者時間,也可以根據獲取資源的類型來收費。
基于IMS的可控可管的P2P網絡電視系統架構,充分利用了IMS系統的管理、信令控制優勢和P2P網絡傳輸的優勢。本文的創新點是,充分利用IMS核心網來進行用戶管理、安全控制、數字版權管理、個性化計費管理;利用分布式P2P內容交換技術減少了媒體源服務器數量,可實現大規模內容共享,充分提高了用戶的參與。該系統架構充分考慮了運營商的運營需求,實現了可控可管理,支持個性化計費。為運營商實現基于下一代網絡的可運營P2P流媒體服務提供了一種新的思路。
[1]秦慶梅.發展P2P IPTV可實現互贏[J].中國有線電視,2009(12):1271-1272.
[2]黃方亮,吳開軍.基于P2P技術的IPTV解決方案研究與設計[J].微計算機信息,2010(15):139-141.
[3]楊燦,張沖.基于新型P2P與CDN融合技術的流媒體系統設計[J].電視技術,2009,33(12):71 -74.
[4]吳亦川,彭晉,段曉東.基于IMS的DSN P2P流媒體系統[J].移動通信,2010(8):66-70.
[5]BIKFALVI A,GARCIA R J,VIDAL I,et al.Nozzilla:a peer-to - peer IPTV distribution service for an IMS-based NGN[C]//Proc.Fifth International Conference on Networking and Services.[S.l.]:IEEE Press,2009:450-455.
[6]陳建華,黃道穎.計算機對等網絡P2P技術[J].計算機工程與應用,2003(33):162-164.
[7]李銳,鄭建宏.IPTV架構探討與演進[J].電視技術,2007,31(9):59-61.