基于NGOD架构的VOD系统边缘资源会话管理方案
2011-08-09李永涛王志谦
李永涛,胡 朋,王志谦
(北京邮电大学a.网络技术研究院;b.网络与教育技术服务中心,北京 100876)
责任编辑:闫雯雯
0 引言
中国有线数字电视接入和应用业务正处于良性高速发展阶段。随着交互业务的推广,业务运营规模的扩大,IPQAM的数量也在不断扩大,对QAM资源的使用也日趋复杂,使用传统的边缘资源管理方案,不仅可能造成服务器资源、带宽资源大量浪费,而且使服务质量难以控制,难以满足流媒体业务需要。为此,笔者提出基于NGOD架构的边缘资源管理的会话处理方案。
1 NGOD架构
下一代视频点播架构NGOD(Next Generation On Demand Video Architecture),是由有线电视服务商美国康卡斯特电信公司(Comcast Corp.)提出的一种网络框架结构。针对边缘资源的管理,NGOD提出边缘架构的概念,边缘架构如图1所示。边缘架构中定义的主要模块有边缘资源管理器(ERM),边缘资源管理重定向器(ERMR)和边缘设备(ED)。其中,ERM负责管理ED中的QAM资源,ERMR服务于上层的会话管理器(SM),当存在多个ERM时负责ERM的重定向。笔者将主要介绍ERM的功能。
2 边缘资源会话管理方案
2.1 边缘资源管理器
图1 NGOD系统边缘架构图
ERM是NGOD架构标准中的一个模块,主要用于有效管理和调度边缘QAM资源,当点播客户端发起点播请求时,通过会话管理器SM(Session Manager,符合NGOD架构的BO中的一个模块,用于建立和撤销会话)建立一个会话,SM则会向ERM发起资源请求,ERM则会收集符合标准的IPQAM的资源信息返回给SM。当SM收到资源信息后会结合资源的其他情况完成会话过程,使得视频服务器能和IPQAM有效配合完成点播。
2.2 边缘资源分发模式
在NGOD架构中,ERM有积极和消极两种资源请求模式。在积极模式中,SM会发送包含多个QAM Name的资源请求给ERM,ERM会从收到的QAM中根据一定的算法选择唯一合适的资源返回给SM,ERM具有决定资源权;在消极模式中,SM发送包含多个QAM Name的资源请求给ERM,ERM会从中根据算法返回一系列(至少一个)资源信息,并保留这些资源,SM再从保留的资源中根据其他的资源管理器来选择其中合适的资源并告知ERM,然后ERM释放其他不需要的资源。
这两种分发模式各有利弊。首先,积极模式的优点是SM和ERM的交互过程比较少,对服务器维护会话链接的压力比较小;积极模式的缺点是因为只有SM能和流媒体服务器进行交互,ERM并不能保证返回的唯一QAM资源和流媒体服务器的链接畅通,所以不能保证流媒体服务器能向指定的QAM推流。相反,悲观模式弥补了积极模式的缺点,在ERM选择合适的资源并保留后,SM利用其他资源管理器检查保留的资源和流媒体服务器的链接是否畅通,再确定最好的资源发给ERM,这样就保证了业务的完整性;但相对积极模式,该模式的业务流程比较复杂,对服务器的压力比较大。
一般多服务运营商(MSO)要求ERM必须对这两种模式都能支持,这样MSO可以根据自身流媒体服务器和边缘设备的链接情况进行选择,制定最符合自身利益的方案。
2.3 ERM主要接口和业务处理流程
2.3.1 S6接口及业务处理流程
S6接口用于SM和ERM之间进行资源请求的Session信令交互,此接口基于RTSP协议,应包括Setup/Teardown/Announce信令。点播客户端发起点播请求时,SM会建立会话,并通过S6接口向ERM发送资源请求Setup,ERM选择好合适的资源后会给SM发送Response回应。
S6接口悲观模式下会话Setup流程图如图2所示。
图2 S6接口悲观模式下会话Setup流程图
在悲观模式下,SM表现为RTSP客户端和服务器(具体情况在下面指明),ERM表现为RTSP代理。具体的消息流程如下:1)SM(这时SM表现为RTSP客户端)通过S6接口向ERM发送资源请求Setup(1)消息,该消息中包括一组QAM的信息和会话建立所需要的带宽信息;2)当收到SM发过来的Setup(1)消息后,ERM从Setup(1)消息中解析出QAM名字列表,根据一定算法从该名字列表中选择一个或多个QAM,并预留这些QAM资源,最后查询QAM对应的IP信息并通过Setup(2)消息发送给SM(这时SM表现为RTSP服务器);3)当SM收到ERM发送的Setup(2)消息后,SM通过和点播资源管理器交互检查ERM选择QAM和流媒体服务器的链路是否畅通。当选择好最佳的QAM后,SM(这时SM表现为RTSP客户端)发送携带QAM IP信息的Setup Response(3)消息给ERM;4)当ERM收到SM发送的Setup Response(3)信息后,ERM确认该QAM资源并返回Setup Response(4)消息给SM(这时SM为RTSP服务器),该消息携带机顶盒所需要的频点和节目号信息。
S6接口积极模式下会话Setup流程图如图3所示。
图3 S6接口积极模式下会话Setup流程图
在积极模式下,SM表现为RTSP客户端,ERM表现为RTSP服务器。交互过程相对悲观模式比较简单,具体消息流程如下:1)SM向ERM发送Setup消息,该消息包括一组QAM的信息和会话建立所需要的带宽信息,该消息跟悲观模式下Setup(1)相同;2)当收到SM发送来的Setup消息后,ERM从解析出的QAM名字列表中根据一定的算法选择唯一的QAM资源并确定该资源,最后查询QAM对应的IP信息和频点、节目号信息,通过Setup Response消息发送给SM。
会话建立后,在会话过程中,ERM也会实时发送Announce消息给SM反映QAM资源情况。
当客户端发起中断点播命令或者出现突发情况时,SM也会发起Teardown消息给ERM,以告知释放资源。
S6接口会话Teardown流程图如图4所示。
Teardown具体的消息流程如下:1)SM向ERM发送Teardown(1)消息;2)ERM作为代理将Teardown(2)消息发给SM;3)SM收到ERM的Teardown(2)消息,SM释放通知流媒体服务器释放资源,作为确认消息向ERM发送Teardown Response(3)消息;4)ERM收到SM的Teardown Response(3)消息,ERM释放会话中的QAM资源,并作为确认消息向SM发送Teardown Response(4)。
图4 S6接口会话Teardown流程图
2.3.2 R6接口及业务处理流程
R6接口也是基于RTSP协议,用于ERM和IPQAM之间的Session信令交互接口,也应包括Setup/Teardown/Announce/Get_Parameter/Session keep-alive信令。
当SM初始化一个会话并要求ERM来建立一个点播会话时,ERM将向边缘IPQAM发送一个会话建立消息,边缘IPQAM可以使用R6提供消息信息建立数据平台,ERM也可要求边缘IPQAM在没有被提供节目的情况下停止数据检查、注入以及流保护,ERM决定资源不再需要时也会通过R6通知IPQAM。
R6接口会话Setup流程如图5所示。
图5 R6接口会话Setup流程图
对于Setup,ERM通过R6和IPQAM进行信令交互的过程如下:1)ERM发送RTSP会话建立请求给IPQAM,如果超时将会发送teardown;2)IPQAM收到ERM发送来的RTSP Setup请求;3)ERM接收IPQAM的回应,并保存Session ID;4)ERM接收SM发送的RTSP会话建立请求;5)ERM发送RTSP会话建立请求给IPQAM,并同时携带Session ID和StartChecking消息头;6)ERM接收RTSP Setup回应。
R6接口会话Teardown流程如图6所示。
对于Teardown,ERM通过如下步骤进行:1)SM发送teardown请求,ERM接收;2)ERM完成内部处理后回应SM;3)ERM告知IPQAM终止会话;4)ERM接收终止会话回应。
图6 R6接口会话Teardown流程图
另外,在会话过程中出现问题时,QAM会发送Announce消息给ERM反映QAM资源情况。ERM也可通过Get_Parameter消息获取会话的相关信息,并可通过Ping请求保证会话的链接可靠性。
3 基于NGOD架构的ERM改进方案
在ERM的实现过程中,发现NGOD架构中对会话消息流中有些异常处理描述的不是很详细。例如:在R6协议中规定,在ERM向边缘设备发送provision消息后开启定时器,如果超时后未收到response认为会话建立失败,这时ERM重发provision消息并重启定时器;如果超时后收到response也认为会话建立失败,但这时边缘设备已预分配QAM资源,因此要求ERM向边缘设备发送teardown消息释放该资源。在这种情况下,并不能判断超时后收到的response消息是先发送的provision消息的回复还是超时后重发的provision消息的回复。为了解决这种问题,可以判断超时后收到的response消息中的序列号CSeq与provision消息中的CSeq是否匹配,如果response消息中的CSeq和首先发送的provision消息中的CSeq匹配,则需要发送teardown消息把资源释放掉;如果response消息中的CSeq和重发的provision消息中的CSeq匹配,如果未超时则认为QAM资源分配成功。
另外,在ERM的实现过程中,发现MSO现在采用的业务系统有可能不直接提供QAM名字列表,而是提供Service Group的信息,相当于提供一组QAM信息,但是在NGOD架构中并不存在Service Group的概念,因此并不能在Service Group和QAM名字列表间建立映射关系。为了实现ERM对多业务系统的支持,满足MSO对ERM支持多业务的要求,可采用通过SM查询ERM的数据库表并建立自己的映射关系来解决。
4 结束语
在NGOD架构中利用边缘资源管理器(ERM)管理边缘资源,可实现资源的动态分配,避免了不必要的带宽浪费,能更好地处理用户的请求,实现了对边缘资源更方便、更高效的管理和使用。ERM还能同时支持VOD,SDV,M-CMTS等多业务系统,为多业务间边缘资源的共享提供了解决方案,有利于有线电视产业的发展。
[1]甘育裕,商彬,陈铭灏.视频点播系统核心设备研究与设计[J].电视技术,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.