杨 超,索妮尔,王志谦
(北京邮电大学 a.网络技术研究院,北京 100876;b.信息网络中心,北京 100876)
随着社会的发展和生活的进步,近些年来,人们对于日常生活中精神文化和信息的需求快速增长,对于相应服务质量的要求也越来越高,尤其是高清的数字电视和交互式的数字电视服务[1]现在已经成为城镇地区居民的消费时尚。随着交互式业务的推广和业务规模的扩大,必然会对业务网络中推流服务器的性能和效率提出更高的要求。为此,本文提出一种基于NGOD架构的推流服务器的会话处理方案。
下一代视频点播架构NGOD(Next Generation On Demand)[2-3]是由 Comcast提出的一种最新的 VOD 系统结构框架。1997年,Time Warner提出一种以VOD为代表的网络框架结构——交互服务架构ISA。在中国,由于用户数量众多,加上交互业务的快速发展,ISA架构已不能满足中国数字电视发展的需要,广电网络运营商将VOD系统建设的关注点逐步移向以NGOD为代表的新一代交互式服务基础架构,本文主要介绍其中SS系统及其相关模块的功能,其他系统的信息在此就不再赘述了。
NGOD系统的一大特点是在功能划分方法上细化了各个模块的功能及其之间的接口和消息交互。对于SS来说,细化了与其相关的模块和接口,这样可以更好地处理用户的请求和资源的管理,而且给了广电运营商更多的选择系统供应商的权利,更加符合运营商的利益。所以,国内的运营商更加青睐NGOD架构,有的正在进行ISA架构向NGOD架构的转型。
SS(Streaming Server)流媒体服务器系统是NGOD架构标准中的一个模块。SS及其相关的模块还有相关接口,如图1所示。
图1 流媒体服务器相关的模块及相关接口
推流服务器的主要作用是,通过HFC(Hybrid Fiber-Coaxial)网络中的传输网络和边缘设备,将数字视频流输出到数字机顶盒(STB)。在典型的系统中,在容错能力范围内,常用巨大的存储硬盘阵列来存储MPEG-2格式的视频内容。典型的视频服务器通过IP网,使用UDP/IP协议来输出MPEG-2单节目传输流(SPTS)至边缘设备,然后由边缘设备广播至客户接收端。
一个或多个典型的推流服务器可能会跨网络部署。推流服务器可以配置在一个集中的数据转发器上或者是分布式的部署在相应的内容分配网(CDN)中,也有可能是两种方式都采用。配置结构的选择取决于许多因素,如操作可行性、网络传输有效性、可量测性、内容存储及传播和总的成本。
通过允许引入新的低成本高性能的视频服务器这样一种方式来定义NGOD这个架构和接口是很重要很关键的,可以促成未来在存储、网络和内容分发技术上的革新。NGOD将使得多个厂家的推流服务器可以配置在同一个数据转发器上,为相同的客户端设备提供服务。特别是,推流服务器也能够处理VCR类似的流控制,也就是时移/回看功能,如暂停、快进、快退等。
对推流服务器的总的功能要求有:高并发的实时事务请求处理能力,多种媒体编码格式与编码速率的支持,高效的流媒体存储、检索算法,高性能的流媒体输出与控制,以及可用性和可操控性。
NGOD里只是提出了这些处理的基本流程,并没有描述具体的架构,而在现实情况中,很可能会同时有多个用户请求,这样同时要处理的Session数可能会很多,从而需要考虑到并发处理多连接请求,所以本文设计了一种并发SS服务器模型,将Session的处理及推流分成两大部分:RTSP Server模块和推流管理进程;另有一部分模块是用来处理与内部其他模块之间的交互的HTTP模块。
本文设计基于NGOD架构的Stream Server的内部实现分为3个主要部分:1)RTSP服务模块;2)推流管理模块;3)HTTP消息处理模块。
SS模块对于每一个Session的处理流程大致是:
1)RTSP Server模块收到ODRM通过R2接口发来的RTSP Setup消息,然后将Session ID插入一张Session表中,并且为预留分配资源,为推流做准备;
2)RTSP Server模块收到客户端的通过C1接口发来的RTSP PLAY/PAUSE消息,然后查询Session表中有无此Session ID,如果没有,则返回错误信息;如果有,则解析出推流所需要的参数(时间参数,视频参数等),然后发送给推流管理进程,由它控制推流进程将合适的视频流推送给客户端;
3)RTSP Server模块收到ODRM通过R2接口发来的RTSP TEARDOWN消息,然后在Session表中查询,若有,则删除,并通知推流管理进程结束对应的推流;若无,则返回错误代码。
2.3.1 R2 接口及业务处理流程
NGOD架构中,资源相关接口包括R1~R6共6个接口。各种资源管理服务器利用各自相应的接口管理相应的组件资源。这些资源允许资源管理服务器检索对应资源的配置、拓扑结构、状态和资源能力。这些资源接口之间可平行运行,而不必考虑与会话相关接口的同步。
点播资源管理器ODRM与推流服务器SS之间的R2接口,主要负责管理推流服务器资源。通过此接口,ODRM可以监控各推流服务器的配置、状态和资源能力。此接口还被用于确认推流服务器推送媒资的可用性并拥有足够的带宽资源。
R2接口用于ODRM和SS之间的关于Session建立和关闭的消息交互,此接口基于RTSP协议,应包括Setup/Teardown/Announce/Get_Parameter消息。
ODRM建立Session时,会通过R2接口向SS发送会话建立请求Setup,SS会根据收到的消息,预留好推流所需的资源,然后建立Session,并发回回复消息。
会话建立后,在会话过程中,SS也会发送Announce消息给ODRM反应客户端的情况,比如客户端终止了播放。
如要删除已存在的Session,ODRM会发送Teardown消息给SS,以告知释放资源,然后SS处理完毕之后发回回复消息。
2.3.2 C1 接口及业务处理流程
C1接口也是基于RTSP协议,用于SS和客户端(STB)之间的Session消息交互接口,包括Play/Pause/Announce/Get_Parameter信令。主要是STB用来直接与SS直接进行交换,从而控制视频流的推送。
2.3.3 A3 接口
A3接口基于HTTP协议,用于APM和SS之间的Topology信令交互,IPQAM会通过D6接口给ERM上报RTSP地址信息及更新信息(QAM名称、带宽、QAM参数、IP地址、UDP表、服务状态等)。
2.3.4 服务发现D接口
五是要提高狠抓落实能力。各级党委都是上级党委决策的执行者,狠抓落实的能力是由决策意志向实践结果转化的根本。在部署与落实的关系中,习主席说“一分部署,九分落实”。落实能力就是执行力,提高执行力重在3个要点:其一,速度,以明确的时间表,按照时间节点走,绝对不能拖。其二,力度,以抓铁有痕、踏石留印的精神和态度推进工作,下大力完成既定任务。其三,信度,改革创新而不离经叛道,使最终结果与先定目标相一致。
系统头端组件之间的服务发现接口,即D接口,主要负责资源和服务的发现工作。该接口与会话和资源信号接口之间是异步运行的。
点播资源管理器ODRM与推流服务器SS之间是D5接口。D接口采用的协议是通过对TRIP协议(RFC 3219)进行扩展而得到的VREP协议。VREP协议主体跟TRIP协议相同,其消息种类主要包括4种:OPEN消息、UPDATE消息、KEEPALIVE消息和NOTIFACATION消息。
1)OPEN消息:用于初始化通信双方之间的TRIP会话。
2)UPDATE消息:用于一方向通信另一方报告具体的参数信息。
3)NOTIFACATION消息:用于发现并报告错误的消息。
4)KEEPALIVE消息:用于维持通信双方之间的连接的心跳信息。
[1]胡朋,李永涛,王志漾.数字电视互动服务中ERM对边缘资源的管理[J].电视技术,2011,35(20):17 -20.
[2]李永涛,胡朋,王志谦.基于NGOD架构的VOD系统边缘资源会话管理方案[J].电视技术,2011,35(19):1 -3.
[3]郑鹏思.基于NGOD架构建设SDV系统[J].广播与电视技术,2011,38(3):119-120.