• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于NGOD架構(gòu)的VOD系統(tǒng)邊緣設(shè)備接口設(shè)計

      2014-09-17 10:26:58劉怡俊
      電視技術(shù) 2014年2期
      關(guān)鍵詞:端口消息客戶端

      李 超,劉怡俊

      (廣東工業(yè)大學(xué) 計算機學(xué)院,廣東 廣州 510006)

      基于NGOD架構(gòu)的VOD系統(tǒng)邊緣設(shè)備接口設(shè)計

      李 超,劉怡俊

      (廣東工業(yè)大學(xué) 計算機學(xué)院,廣東 廣州 510006)

      為方便數(shù)字電視設(shè)備商能夠開發(fā)出滿足互動服務(wù)中邊緣資源管理系統(tǒng)的功能要求,設(shè)計并實現(xiàn)了一種基于NGOD架構(gòu)的對邊緣資源注冊監(jiān)控與管理分配的接口。邊緣設(shè)備通過該接口與ERM交互,使VOD系統(tǒng)中的邊緣資源可以得到合理高效的使用。實驗結(jié)果表明,采用D6,R6接口的EdgeQAM能夠順利掛載在廣東省網(wǎng)高清互動平臺。

      NGOD架構(gòu);D6接口;R6接口;EdgeQAM;RTSP

      隨著中國有線數(shù)字電視接入用戶和高清互動業(yè)務(wù)的高速增長,業(yè)務(wù)運營規(guī)模的急劇擴大,使得邊緣設(shè)備數(shù)量不斷增加,對邊緣設(shè)備的使用也日趨復(fù)雜[1]。由美國Comcast公司提出的開放式標(biāo)準化視頻架構(gòu)NGOD(Next Generation on Demand)[2-3]已經(jīng)被國內(nèi)越來越多的廣電運營商采用,數(shù)字電視前端設(shè)備支持標(biāo)準化視頻架構(gòu)成為國內(nèi)設(shè)備商急需解決的問題。國外數(shù)字電視設(shè)備供應(yīng)商美國哈雷公司(Harmonic Inc)NSG系列EdgeQAM平臺和思科系統(tǒng)公司(Cisco Systems Inc)IPQAM設(shè)備都支持NGOD架構(gòu)[4-5]。國內(nèi)數(shù)字電視業(yè)務(wù)起步晚,只有數(shù)碼視訊等少數(shù)幾家設(shè)備商支持NGOD架構(gòu)。為此,筆者設(shè)計并實現(xiàn)了一種基于NGOD架構(gòu)的D6,R6接口,為設(shè)備商的邊緣設(shè)備接入NGOD平臺提供了較高的參考價值。

      1NGOD架構(gòu)

      新一代視頻點播服務(wù)的基本架構(gòu)NGOD是由有線電視服務(wù)商美國康卡斯特電信公司(Comcast Corp.)提出的一種網(wǎng)絡(luò)框架結(jié)構(gòu),已經(jīng)逐漸取代ISA架構(gòu)。為滿足不斷更新的視頻業(yè)務(wù)的部署需求,NGOD采用模塊化、靈活性、可擴展性的視頻架構(gòu)以支持多種業(yè)務(wù)。NGOD架構(gòu)中,采用ERM來實現(xiàn)邊緣資源的管理和分配。ERM的邏輯功能分為設(shè)備發(fā)現(xiàn)功能和資源管理功能,D6接口[6]用于動態(tài)發(fā)現(xiàn)邊緣設(shè)備,R6接口[7]用于邊緣資源的分配和回收,兩者相互獨立,同時,R6接口和邊緣設(shè)備通信前,需要從D6接口來收集自己管理的資源信息。如圖1所示為NGOD架構(gòu)中的邊緣組件架構(gòu)圖。

      本文的工作重心為NGOD架構(gòu)下EdgeQAM端D6、R6接口的設(shè)計與實現(xiàn)。

      2 D6接口的設(shè)計與實現(xiàn)

      D6接口是基于VREP(Video Registration Protocol)協(xié)議(在TRIP協(xié)議的基礎(chǔ)上進行擴展)實現(xiàn)的。VREP協(xié)議基于底層TCP/IP提供可靠傳輸,包括OPEN消息、UPDATE消息、NOTIFICATION消息和KEEPALIVE消息4種。交互時序圖文獻[8]已有明確說明,當(dāng)連接處于已建立狀態(tài)時,D6客戶端通過UPDATE消息向管理自己的唯一ERM注冊,主要包括每個QAM通道的屬性以及邊緣設(shè)備相關(guān)參數(shù)。

      2.1 客戶端D6接口的功能模塊圖

      D6接口的客戶端程序主要包括主流程模塊、組包模塊、解包模塊、定時器模塊、狀態(tài)轉(zhuǎn)換模塊、事件模塊、與EdgeQAM主板軟件NGOD進程的通信模塊。D6客戶端功能模塊如圖2所示。

      主程序模塊主要負責(zé)與ERM建立連接,與其交互,并對相關(guān)異常進行處理。組包模塊負責(zé)OPEN消息、UPDATE消息、NOTIFICATION消息、KEEPALIVE消息的組包。解包模塊則為除UPDATE之外的其他消息提供解析函數(shù)。定時器模塊包括重連定時器、保持定時器和心跳連接定時器,定時器的功能各不相同,但一般保持定時器hold time的時間是心跳連接定時器的3倍,也就是連續(xù)3次發(fā)送KEEPALIVE消息仍收不到回復(fù),那么hold time超時,需要斷開連接。狀態(tài)模塊包括空閑、連接、激活、OPEN已發(fā)送、OPEN確認和已建立6種狀態(tài)。事件模塊包括起始、終止、TCP異常、定時器超時、收包等12種事件。其中,收到消息、定時器超時等會觸發(fā)相應(yīng)事件,事件的發(fā)生會導(dǎo)致狀態(tài)的轉(zhuǎn)換。自定義的通信模塊主要是與EdgeQAM的主板軟件NGOD進程之間通信。

      2.2 客戶端D6接口的狀態(tài)轉(zhuǎn)換圖

      程序?qū)崿F(xiàn)采用有限狀態(tài)機方式編程,如圖3所示,VREP會話共有6種狀態(tài)。在IDLE狀態(tài)下,當(dāng)一個開始事件(IE1來自系統(tǒng)或者操作員)出現(xiàn)時,初始化所有的VREP資源,打開重連定時器,初始化到ERM的連接,轉(zhuǎn)換到CONNECT狀態(tài),其他事件發(fā)生則保持IDLE狀態(tài)不變。在CONNECT狀態(tài)下,如果TCP連接成功(IE3),則發(fā)送OPEN消息給ERM,設(shè)置定時器的值,并轉(zhuǎn)移狀態(tài)為OPENSENT;若TCP連接建立失?。↖E5),則轉(zhuǎn)移到ACTIVE狀態(tài),其他事件做相應(yīng)處理。在ACTIVE狀態(tài)下,VREP試圖與ERM建立TCP連接,如果連接成功則仍可建立連接,否則重連超時(IE7)會退回到CONNECT狀態(tài),其他事件做相應(yīng)處理。在OPENSENT狀態(tài)下,如果從ERM收到OPEN消息(IE10),檢測無誤則向ERM發(fā)送KEEPALIVE消息狀態(tài)轉(zhuǎn)移到OPENCONFIRM狀態(tài),否則發(fā)送NOTIFICATION報錯,轉(zhuǎn)到IDLE狀態(tài),其他事件做相應(yīng)處理。在OPENCONFIRM狀態(tài)下,收到KEEPALIVE消息的回復(fù)(IE11),那么最終會轉(zhuǎn)移到ESTABLISHED狀態(tài),在已建立狀態(tài)下D6客戶端即可向ERM發(fā)送UPDATE消息來實現(xiàn)QAM等詳細信息的注冊。

      3 R6接口的設(shè)計與實現(xiàn)

      R6接口的消息交互是基于RTSP(Real Time Streaming Protocol)[9]實時流傳輸協(xié)議,RTSP 文本消息的傳輸既可以建立于TCP/IP,也可以建立在UDP之上,鑒于文本消息的數(shù)據(jù)有限,采用TCP傳輸更為可靠。主要包括 Setup,Teardown,Announce,Get_Parameter,Session Keepalive信令。當(dāng)SM發(fā)送一個資源請求,要求ERM建立一個點播會話時,ERM作為客戶端將向EdgeQAM服務(wù)端發(fā)送一個會話建立請求消息,EdgeQAM根據(jù)分配請求的參數(shù),建立UDP+節(jié)目號+QAM的映射關(guān)系,也可以要求EdgeQAM向TS流中注入帶內(nèi)標(biāo)記,或停止注入、檢查等功能。當(dāng)用戶撤銷點播時,SM發(fā)送撤銷請求給ERM,ERM通過R6接口的Teardown信令通知EdgeQAM,回收資源。

      3.1 R6接口的流程圖

      程序首先創(chuàng)建RTSP服務(wù)器,監(jiān)聽554端口,ERM客戶端根據(jù)D6接口注冊的IP地址訪問該端口。由于RTSP協(xié)議不同于HTTP協(xié)議,其交互是雙向的,信令可以由客戶端發(fā)起,服務(wù)端應(yīng)答,也可反過來。如果已分配的QAM在會話過程中發(fā)生異常時,可主動發(fā)送Announce消息通知ERM。所以收到的消息可能是Announce請求的應(yīng)答消息,也可能是其他信令請求消息中的一種。若是請求應(yīng)答,則調(diào)用應(yīng)答處理函數(shù)。若是請求消息,則根據(jù)請求首部的命令字段判斷消息類型,如Setup消息,且含有ProvisionPort字段,此消息就是預(yù)分配請求,R6接口服務(wù)端收到該請求,調(diào)用rtsp_r6_setup_parse函數(shù)進行解析,需要服務(wù)器隨機產(chǎn)生一個不重復(fù)的Session ID,并將該Session添加到一個會話鏈表,然后把Transport字段的參數(shù)傳遞給EdgeQAM的主板軟件做相應(yīng)底層配置,最后給出回復(fù)消息。Teardown消息請求則需要將會話從鏈表中撤銷,完成資源的回收工作。若為其他請求消息,則共同維護一個Session ID。R6服務(wù)端流程圖如圖4所示。

      3.2 R6接口端口狀態(tài)轉(zhuǎn)換機

      在該狀態(tài)機中,端口狀態(tài)可以從Not Configured或Provisioned任一個狀態(tài)開始。如果EdgeQAM支持動態(tài)端口映射,那么端口起始狀態(tài)是Not Configured,如果EdgeQAM支持其他方式(如固件映射或配置文件)的靜態(tài)配置端口,則端口可選擇從Provisioned狀態(tài)開始。當(dāng)EdgeQAM收到ERM的預(yù)分配請求后,端口從Not Configured狀態(tài)轉(zhuǎn)換為Provisioned狀態(tài)。端口在Not Configured狀態(tài),沒有數(shù)據(jù)被傳輸?shù)絈AM輸出,然而在Provisioned狀態(tài),所有數(shù)據(jù)被映射到QAM輸出,如果可能,ERM請求EdgeQAM在輸入流帶內(nèi)標(biāo)記發(fā)生變化時通知它,這會導(dǎo)致流在無帶內(nèi)標(biāo)記到有帶內(nèi)標(biāo)記之間互相轉(zhuǎn)換。當(dāng)EdgeQAM收到ERM的StartChecking消息后,端口從Provisioned狀態(tài)進入到In Session狀態(tài),其又分為兩個子狀態(tài),Markers Match和Markers Mismatch。在Markers Match狀態(tài),帶內(nèi)標(biāo)記必須檢查,如果帶內(nèi)標(biāo)記不匹配,數(shù)據(jù)流不會被輸出到QAM,也不會注入任何數(shù)據(jù);若匹配,則可以注入一些帶內(nèi)標(biāo)記。當(dāng)收到StopChecking消息后,會退回到Provisioned狀態(tài)。當(dāng)收到Teardown消息后,端口進入Not Configured狀態(tài)。如圖5所示為R6接口的端口狀態(tài)機。

      4 D6,R6與主板軟件的通信機制

      EdgeQAM的主板是整個設(shè)備的控制中心,主板軟件中的NGOD進程負責(zé)與D6,R6接口通信,該通信協(xié)議標(biāo)準中并未定義。進程間通信可采用管道、信號量、共享內(nèi)存、套接字、消息隊列等。此處采用消息隊列比較合適,Linux下的消息隊列中的消息體字符數(shù)組最大支持8 192 byte,如果消息的長度大于8 192 byte,應(yīng)該按8 192為單元劃分成若干條消息。為了實現(xiàn)雙方交互,可以在兩個進程中都開啟一個發(fā)送和接收隊列。NGOD進程與D6,R6進程通信協(xié)議如圖6所示。

      命令頭中的第1個字節(jié)Type為D6或R6,表示通信對象。第2個字節(jié)Ret為返回值取0、1或2,分別表示消息返回狀態(tài)是默認、失敗和成功。Total Length表示消息的總長度包括命令頭的長度。All Frame num表示消息的總幀數(shù),Current Frame表示當(dāng)前幀數(shù),接收端根據(jù)這兩個值判斷消息是否接收完成,后面保留4 byte長度。參數(shù)頭則包括4 byte的參數(shù)類型和2 byte的參數(shù)長度。由于EdgeQAM輸入端口參數(shù)和QAM子板各通道的參數(shù)比較多,所以為了區(qū)分不同類型的參數(shù)采用基地址加偏移量的方式表示。

      5 實驗與測試結(jié)果

      本接口是基于Linux(內(nèi)核版本3.5)進行驗證的,采用的芯片是Xilinx公司的基于ARM cortex-A9處理器平臺的Zynq-7030。EdgeQAM的Flash最小為32 Mbyte,DDR容量為256 Mbyte。由于測試內(nèi)容比較多,主要分別對D6,R6接口建立過程和部分消息進行測試。測試結(jié)果在下文介紹。

      5.1 D6接口與ERM的通信驗證

      D6接口的實現(xiàn)包括與ERM連接的建立,以及各種消息的交互,ERM的IP地址通過Web端由用戶設(shè)置為192.168.0.160,端口號為8888。圖7為D6接口與ERM的連接建立過程以及OPEN消息的詳細信息。程序啟動之后會采用EdgeQAM主板軟件傳遞過來ERM的IP地址和端口號等參數(shù)嘗試連接ERM,地址正確則可以連接上,主動發(fā)送OPEN消息,收到的OPEN消息如圖7所示,最終處于已建立狀態(tài),保持心跳連接等待UPDATE消息和其他消息的交互。由圖中運行結(jié)果與預(yù)期一致,可以證明D6接口與ERM交互正確。

      5.2 R6接口與ERM的通信驗證

      R6接口的實現(xiàn)包括與ERM連接的建立,以及各種請求消息和應(yīng)答消息的交互,R6接口啟動之后在本地的554端口監(jiān)聽,ERM通過D6接口注冊的IP地址及固定端口與R6建立連接。如圖8所示為R6接口收到ERM的端口預(yù)分配請求,CSeq為314,Transport頭包括請求分配的QAM信息和UDP信息,InbandMaker頭包括請求注入帶內(nèi)標(biāo)記信息等。R6通過解析該請求,發(fā)現(xiàn)請求正確并且底層成功處理完成,回復(fù)該請求如圖9所示,Session為隨機產(chǎn)生的不重復(fù)的ID,該結(jié)果與預(yù)期的結(jié)果一致。除此之外,還通過大量的測試,如帶寬請求過大等,R6接口皆能識別并能正確回復(fù)請求應(yīng)答或是發(fā)送異常請求,由此證明R6與ERM的交互是正確的。

      6 小結(jié)

      廣東省新一代數(shù)字電視交互平臺NGOD采用Comcast的標(biāo)準實現(xiàn),大部分接口嚴格按照標(biāo)準執(zhí)行。采用本方案實現(xiàn)的D6,R6接口能夠可靠地運行在邊緣設(shè)備上,設(shè)備功能和性能指標(biāo)得到廣泛的認可,并且能與ERM有效配合實現(xiàn)邊緣資源的管理和使用,最終完成NGOD點播業(yè)務(wù)的應(yīng)用。

      [1] 甘育裕,商彬,陳銘灝.視頻點播系統(tǒng)核心設(shè)備研究與設(shè)計[J].電視技術(shù),2007,31(8):63-64.

      [2] Comcast Corp.NGOD overall version 2.0[M].[S.l]:Comcast Corp,2006.

      [3] Comcast Corp.NGOD edge architecture 2.0[M].[S.l]:Comcast Corp,2006.

      [4] Harmonic Inc.NSG 9000-6G universal software user’s guide[EB/OL].[2013-07-10].2010.http://www.Harmonicinc./sites/default/files/datasheets/NSG9000-6G_Datasheet.pdf.

      [5] Cisco Systems Inc.End-of-sale and end-life announcement for the Edge QAM modulator power supplies(XDQA24)[EB/OL].[2013-07-10].2012.http://www.cisco.com/en/US/Prod/collateral/video/ps9159/ps9195/ps9248/product_data_sheet0900aecd806d19 3d.pdf.

      [6] Comcast Corp.NGOD service discovery registration interface version 2.0[M].[S.l]:Comcast Corp,2006.

      [7] Comcast Corp.NGOD edge resource interface-r6 version 2.0[M].[S.l]:Comcast Corp,2006.

      [8] 胡朋,李永濤,王志謙,等.數(shù)字電視互動服務(wù)中ERM對邊緣資源的管理[J].電視技術(shù),2011,35(20):17-20.

      [9] Comcast Corp.NGOD RTSP usage specification version 2.0[M].[S.l]:Comcast Corp,2006.

      [10] 李永濤,胡朋,王志謙.基于NGOD架構(gòu)的VOD系統(tǒng)邊緣資源會話管理方案[J].電視技術(shù),2011,35(19):1-3.

      Design of Edge Device Interface in NGOD-based VOD System

      LI Chao,LIU Yijun

      (School of Computer,Guangdong University of Technology,Guangzhou 510006,China)

      In this paper,an edge device interface based on NGOD and used for edge resources discovering,registering,managing and monitoring is designed and implemented,which helps digital TV equipment suppliers to develop the function requirement of edge resource management system in the interactive services.Edge equipment interacts with the ERM through the interface,and making the edge resources of the VOD system can be used reasonably and efficiently.The experimental results show that the EdgeQAM is mounted in Guangdong province network high-definition interactive platform successful.

      NGOD framework;D6 interface;R6 interface;EdgeQAM;RTSP

      TN949.197;TP37

      A

      【本文獻信息】李超,劉怡俊.基于NGOD架構(gòu)的VOD系統(tǒng)邊緣設(shè)備接口設(shè)計[J].電視技術(shù),2014,38(2).

      廣東省“省部產(chǎn)學(xué)研結(jié)合”項目(2012B091100363)

      李 超(1987—),碩士生,主研計算機體系結(jié)構(gòu)、計算機網(wǎng)絡(luò);

      劉怡?。?977—),碩士生導(dǎo)師,主研計算機體系結(jié)構(gòu)、物聯(lián)網(wǎng)等。

      責(zé)任編輯:薛 京

      2013-09-11

      猜你喜歡
      端口消息客戶端
      一種端口故障的解決方案
      一張圖看5G消息
      縣級臺在突發(fā)事件報道中如何應(yīng)用手機客戶端
      傳媒評論(2018年4期)2018-06-27 08:20:24
      孵化垂直頻道:新聞客戶端新策略
      傳媒評論(2018年4期)2018-06-27 08:20:16
      基于Vanconnect的智能家居瘦客戶端的設(shè)計與實現(xiàn)
      電子測試(2018年10期)2018-06-26 05:53:34
      端口阻塞與優(yōu)先級
      初識電腦端口
      電腦迷(2015年6期)2015-05-30 08:52:42
      生成樹協(xié)議實例探討
      消息
      消息
      大足县| 鸡西市| 黔西县| 寿宁县| 吕梁市| 崇礼县| 丹棱县| 缙云县| 兴仁县| 康平县| 蒲江县| 山阴县| 蓝山县| 黄大仙区| 怀仁县| 清河县| 枣庄市| 桂平市| 武陟县| 年辖:市辖区| 饶阳县| 集贤县| 云霄县| 龙川县| 钟祥市| 蓝山县| 锡林浩特市| 汝州市| 衡阳市| 黄梅县| 井冈山市| 青州市| 黄浦区| 海宁市| 凌海市| 宿松县| 台安县| 江油市| 新泰市| 襄垣县| 西乡县|