李永濤,胡 朋,王志謙
(北京郵電大學(xué)a.網(wǎng)絡(luò)技術(shù)研究院;b.網(wǎng)絡(luò)與教育技術(shù)服務(wù)中心,北京 100876)
責(zé)任編輯:閆雯雯
中國(guó)有線數(shù)字電視接入和應(yīng)用業(yè)務(wù)正處于良性高速發(fā)展階段。隨著交互業(yè)務(wù)的推廣,業(yè)務(wù)運(yùn)營(yíng)規(guī)模的擴(kuò)大,IPQAM的數(shù)量也在不斷擴(kuò)大,對(duì)QAM資源的使用也日趨復(fù)雜,使用傳統(tǒng)的邊緣資源管理方案,不僅可能造成服務(wù)器資源、帶寬資源大量浪費(fèi),而且使服務(wù)質(zhì)量難以控制,難以滿足流媒體業(yè)務(wù)需要。為此,筆者提出基于NGOD架構(gòu)的邊緣資源管理的會(huì)話處理方案。
下一代視頻點(diǎn)播架構(gòu)NGOD(Next Generation On Demand Video Architecture),是由有線電視服務(wù)商美國(guó)康卡斯特電信公司(Comcast Corp.)提出的一種網(wǎng)絡(luò)框架結(jié)構(gòu)。針對(duì)邊緣資源的管理,NGOD提出邊緣架構(gòu)的概念,邊緣架構(gòu)如圖1所示。邊緣架構(gòu)中定義的主要模塊有邊緣資源管理器(ERM),邊緣資源管理重定向器(ERMR)和邊緣設(shè)備(ED)。其中,ERM負(fù)責(zé)管理ED中的QAM資源,ERMR服務(wù)于上層的會(huì)話管理器(SM),當(dāng)存在多個(gè)ERM時(shí)負(fù)責(zé)ERM的重定向。筆者將主要介紹ERM的功能。
圖1 NGOD系統(tǒng)邊緣架構(gòu)圖
ERM是NGOD架構(gòu)標(biāo)準(zhǔn)中的一個(gè)模塊,主要用于有效管理和調(diào)度邊緣QAM資源,當(dāng)點(diǎn)播客戶端發(fā)起點(diǎn)播請(qǐng)求時(shí),通過會(huì)話管理器SM(Session Manager,符合NGOD架構(gòu)的BO中的一個(gè)模塊,用于建立和撤銷會(huì)話)建立一個(gè)會(huì)話,SM則會(huì)向ERM發(fā)起資源請(qǐng)求,ERM則會(huì)收集符合標(biāo)準(zhǔn)的IPQAM的資源信息返回給SM。當(dāng)SM收到資源信息后會(huì)結(jié)合資源的其他情況完成會(huì)話過程,使得視頻服務(wù)器能和IPQAM有效配合完成點(diǎn)播。
在NGOD架構(gòu)中,ERM有積極和消極兩種資源請(qǐng)求模式。在積極模式中,SM會(huì)發(fā)送包含多個(gè)QAM Name的資源請(qǐng)求給ERM,ERM會(huì)從收到的QAM中根據(jù)一定的算法選擇唯一合適的資源返回給SM,ERM具有決定資源權(quán);在消極模式中,SM發(fā)送包含多個(gè)QAM Name的資源請(qǐng)求給ERM,ERM會(huì)從中根據(jù)算法返回一系列(至少一個(gè))資源信息,并保留這些資源,SM再?gòu)谋A舻馁Y源中根據(jù)其他的資源管理器來選擇其中合適的資源并告知ERM,然后ERM釋放其他不需要的資源。
這兩種分發(fā)模式各有利弊。首先,積極模式的優(yōu)點(diǎn)是SM和ERM的交互過程比較少,對(duì)服務(wù)器維護(hù)會(huì)話鏈接的壓力比較小;積極模式的缺點(diǎn)是因?yàn)橹挥蠸M能和流媒體服務(wù)器進(jìn)行交互,ERM并不能保證返回的唯一QAM資源和流媒體服務(wù)器的鏈接暢通,所以不能保證流媒體服務(wù)器能向指定的QAM推流。相反,悲觀模式彌補(bǔ)了積極模式的缺點(diǎn),在ERM選擇合適的資源并保留后,SM利用其他資源管理器檢查保留的資源和流媒體服務(wù)器的鏈接是否暢通,再確定最好的資源發(fā)給ERM,這樣就保證了業(yè)務(wù)的完整性;但相對(duì)積極模式,該模式的業(yè)務(wù)流程比較復(fù)雜,對(duì)服務(wù)器的壓力比較大。
一般多服務(wù)運(yùn)營(yíng)商(MSO)要求ERM必須對(duì)這兩種模式都能支持,這樣MSO可以根據(jù)自身流媒體服務(wù)器和邊緣設(shè)備的鏈接情況進(jìn)行選擇,制定最符合自身利益的方案。
2.3.1 S6接口及業(yè)務(wù)處理流程
S6接口用于SM和ERM之間進(jìn)行資源請(qǐng)求的Session信令交互,此接口基于RTSP協(xié)議,應(yīng)包括Setup/Teardown/Announce信令。點(diǎn)播客戶端發(fā)起點(diǎn)播請(qǐng)求時(shí),SM會(huì)建立會(huì)話,并通過S6接口向ERM發(fā)送資源請(qǐng)求Setup,ERM選擇好合適的資源后會(huì)給SM發(fā)送Response回應(yīng)。
S6接口悲觀模式下會(huì)話Setup流程圖如圖2所示。
圖2 S6接口悲觀模式下會(huì)話Setup流程圖
在悲觀模式下,SM表現(xiàn)為RTSP客戶端和服務(wù)器(具體情況在下面指明),ERM表現(xiàn)為RTSP代理。具體的消息流程如下:1)SM(這時(shí)SM表現(xiàn)為RTSP客戶端)通過S6接口向ERM發(fā)送資源請(qǐng)求Setup(1)消息,該消息中包括一組QAM的信息和會(huì)話建立所需要的帶寬信息;2)當(dāng)收到SM發(fā)過來的Setup(1)消息后,ERM從Setup(1)消息中解析出QAM名字列表,根據(jù)一定算法從該名字列表中選擇一個(gè)或多個(gè)QAM,并預(yù)留這些QAM資源,最后查詢QAM對(duì)應(yīng)的IP信息并通過Setup(2)消息發(fā)送給SM(這時(shí)SM表現(xiàn)為RTSP服務(wù)器);3)當(dāng)SM收到ERM發(fā)送的Setup(2)消息后,SM通過和點(diǎn)播資源管理器交互檢查ERM選擇QAM和流媒體服務(wù)器的鏈路是否暢通。當(dāng)選擇好最佳的QAM后,SM(這時(shí)SM表現(xiàn)為RTSP客戶端)發(fā)送攜帶QAM IP信息的Setup Response(3)消息給ERM;4)當(dāng)ERM收到SM發(fā)送的Setup Response(3)信息后,ERM確認(rèn)該QAM資源并返回Setup Response(4)消息給SM(這時(shí)SM為RTSP服務(wù)器),該消息攜帶機(jī)頂盒所需要的頻點(diǎn)和節(jié)目號(hào)信息。
S6接口積極模式下會(huì)話Setup流程圖如圖3所示。
圖3 S6接口積極模式下會(huì)話Setup流程圖
在積極模式下,SM表現(xiàn)為RTSP客戶端,ERM表現(xiàn)為RTSP服務(wù)器。交互過程相對(duì)悲觀模式比較簡(jiǎn)單,具體消息流程如下:1)SM向ERM發(fā)送Setup消息,該消息包括一組QAM的信息和會(huì)話建立所需要的帶寬信息,該消息跟悲觀模式下Setup(1)相同;2)當(dāng)收到SM發(fā)送來的Setup消息后,ERM從解析出的QAM名字列表中根據(jù)一定的算法選擇唯一的QAM資源并確定該資源,最后查詢QAM對(duì)應(yīng)的IP信息和頻點(diǎn)、節(jié)目號(hào)信息,通過Setup Response消息發(fā)送給SM。
會(huì)話建立后,在會(huì)話過程中,ERM也會(huì)實(shí)時(shí)發(fā)送Announce消息給SM反映QAM資源情況。
當(dāng)客戶端發(fā)起中斷點(diǎn)播命令或者出現(xiàn)突發(fā)情況時(shí),SM也會(huì)發(fā)起Teardown消息給ERM,以告知釋放資源。
S6接口會(huì)話Teardown流程圖如圖4所示。
Teardown具體的消息流程如下:1)SM向ERM發(fā)送Teardown(1)消息;2)ERM作為代理將Teardown(2)消息發(fā)給SM;3)SM收到ERM的Teardown(2)消息,SM釋放通知流媒體服務(wù)器釋放資源,作為確認(rèn)消息向ERM發(fā)送Teardown Response(3)消息;4)ERM收到SM的Teardown Response(3)消息,ERM釋放會(huì)話中的QAM資源,并作為確認(rèn)消息向SM發(fā)送Teardown Response(4)。
圖4 S6接口會(huì)話Teardown流程圖
2.3.2 R6接口及業(yè)務(wù)處理流程
R6接口也是基于RTSP協(xié)議,用于ERM和IPQAM之間的Session信令交互接口,也應(yīng)包括Setup/Teardown/Announce/Get_Parameter/Session keep-alive信令。
當(dāng)SM初始化一個(gè)會(huì)話并要求ERM來建立一個(gè)點(diǎn)播會(huì)話時(shí),ERM將向邊緣IPQAM發(fā)送一個(gè)會(huì)話建立消息,邊緣IPQAM可以使用R6提供消息信息建立數(shù)據(jù)平臺(tái),ERM也可要求邊緣IPQAM在沒有被提供節(jié)目的情況下停止數(shù)據(jù)檢查、注入以及流保護(hù),ERM決定資源不再需要時(shí)也會(huì)通過R6通知IPQAM。
R6接口會(huì)話Setup流程如圖5所示。
圖5 R6接口會(huì)話Setup流程圖
對(duì)于Setup,ERM通過R6和IPQAM進(jìn)行信令交互的過程如下:1)ERM發(fā)送RTSP會(huì)話建立請(qǐng)求給IPQAM,如果超時(shí)將會(huì)發(fā)送teardown;2)IPQAM收到ERM發(fā)送來的RTSP Setup請(qǐng)求;3)ERM接收IPQAM的回應(yīng),并保存Session ID;4)ERM接收SM發(fā)送的RTSP會(huì)話建立請(qǐng)求;5)ERM發(fā)送RTSP會(huì)話建立請(qǐng)求給IPQAM,并同時(shí)攜帶Session ID和StartChecking消息頭;6)ERM接收RTSP Setup回應(yīng)。
R6接口會(huì)話Teardown流程如圖6所示。
對(duì)于Teardown,ERM通過如下步驟進(jìn)行:1)SM發(fā)送teardown請(qǐng)求,ERM接收;2)ERM完成內(nèi)部處理后回應(yīng)SM;3)ERM告知IPQAM終止會(huì)話;4)ERM接收終止會(huì)話回應(yīng)。
圖6 R6接口會(huì)話Teardown流程圖
另外,在會(huì)話過程中出現(xiàn)問題時(shí),QAM會(huì)發(fā)送Announce消息給ERM反映QAM資源情況。ERM也可通過Get_Parameter消息獲取會(huì)話的相關(guān)信息,并可通過Ping請(qǐng)求保證會(huì)話的鏈接可靠性。
在ERM的實(shí)現(xiàn)過程中,發(fā)現(xiàn)NGOD架構(gòu)中對(duì)會(huì)話消息流中有些異常處理描述的不是很詳細(xì)。例如:在R6協(xié)議中規(guī)定,在ERM向邊緣設(shè)備發(fā)送provision消息后開啟定時(shí)器,如果超時(shí)后未收到response認(rèn)為會(huì)話建立失敗,這時(shí)ERM重發(fā)provision消息并重啟定時(shí)器;如果超時(shí)后收到response也認(rèn)為會(huì)話建立失敗,但這時(shí)邊緣設(shè)備已預(yù)分配QAM資源,因此要求ERM向邊緣設(shè)備發(fā)送teardown消息釋放該資源。在這種情況下,并不能判斷超時(shí)后收到的response消息是先發(fā)送的provision消息的回復(fù)還是超時(shí)后重發(fā)的provision消息的回復(fù)。為了解決這種問題,可以判斷超時(shí)后收到的response消息中的序列號(hào)CSeq與provision消息中的CSeq是否匹配,如果response消息中的CSeq和首先發(fā)送的provision消息中的CSeq匹配,則需要發(fā)送teardown消息把資源釋放掉;如果response消息中的CSeq和重發(fā)的provision消息中的CSeq匹配,如果未超時(shí)則認(rèn)為QAM資源分配成功。
另外,在ERM的實(shí)現(xiàn)過程中,發(fā)現(xiàn)MSO現(xiàn)在采用的業(yè)務(wù)系統(tǒng)有可能不直接提供QAM名字列表,而是提供Service Group的信息,相當(dāng)于提供一組QAM信息,但是在NGOD架構(gòu)中并不存在Service Group的概念,因此并不能在Service Group和QAM名字列表間建立映射關(guān)系。為了實(shí)現(xiàn)ERM對(duì)多業(yè)務(wù)系統(tǒng)的支持,滿足MSO對(duì)ERM支持多業(yè)務(wù)的要求,可采用通過SM查詢ERM的數(shù)據(jù)庫(kù)表并建立自己的映射關(guān)系來解決。
在NGOD架構(gòu)中利用邊緣資源管理器(ERM)管理邊緣資源,可實(shí)現(xiàn)資源的動(dòng)態(tài)分配,避免了不必要的帶寬浪費(fèi),能更好地處理用戶的請(qǐng)求,實(shí)現(xiàn)了對(duì)邊緣資源更方便、更高效的管理和使用。ERM還能同時(shí)支持VOD,SDV,M-CMTS等多業(yè)務(wù)系統(tǒng),為多業(yè)務(wù)間邊緣資源的共享提供了解決方案,有利于有線電視產(chǎn)業(yè)的發(fā)展。
[1]甘育裕,商彬,陳銘灝.視頻點(diǎn)播系統(tǒng)核心設(shè)備研究與設(shè)計(jì)[J].電視技術(shù),2007,31(8):63-64.
[2]Comcast Corp.NGOD Overall Architecture Version 2.0[G].[S.l.]:Comcast Corp,2006.
[3]Comcast Corp.NGOD Edge Architecture Version 2.0[G].[S.l.]:Comcast Corp,2006.
[4]Comcast Corp.NGOD Session & Edge Resource Interface-S6 Version 2.0[G].[S.l.]:Comcast Corp,2006.
[5]Comcast Corp.NGOD Edge Resource Interface-R6 Version 2.0 [G].[S.l.]:Comcast Corp,2006.
[6]SCHULZRINNE H,RAO A,LANPHIER R.RFC-2326 Real Time Streaming Protocol[S].1998.
[7]Comcast Corp.NGOD RTSP Usage Specification Version 2.0[G].[S.l.]:Comcast Corp,2006.
[8]Cable Television Laboratories DOCSIS,Inc.Edge Resource Manager Interface Specification[EB/OL].(2008-11-12)[2011-01-05].http://www.cablelabs.com/specifications/CM-SP-ERMI-I03-081107.pdf.