视频监控平台的互联应用研究
2019-09-25
(西安理工大学 自动化与信息工程学院, 西安 710048)
0 引言
视频监控平台在人类的生产生活中充当着极其重要的角色,尤其是在当今这个快速发展的世界上,各个领域的安防问题都在视频监控的管辖范围,而视频监控的发展也推动了世界安防的发展。近年来,随着视频监控的广泛应用,人们开始在互通方面寻求突破,而当下的视频监控平台都是由不同的公司构建而成,每个公司都有自己的协议标准和控制要求,所以存在着很大的差异性。各个领域的视频监控平台由于开发商不同,没有统一整体的架构和协议规范,从而形成了很多信息孤岛,也使得所在区域的视频监控资源无法进行整合。
在现代化技术高速发展的今天,犯罪分子的手段越来越智能化,他们学习并利用高科技手段去进行高智商犯罪,让城市的安保工作越来越困难,如果能将这些监控资源的信息孤岛连接起来,使得城市间的所有监控平台形成一个整体的视频监控网络,实现密不透风的监控防护墙,可以让犯罪分子无处遁形。而如何能将各个视频监控平台通过连接,使公安机关能够共享这些视频监控平台的资源,成为安防领域的热门话题。对于公安部门来说,甚至省市区这种上下级关系的安防平台之间也因为这个原因难以相通。在这个背景下,中国公安部于2012年6月1日出台了国标28181协议[1]在全国推广,该协议基于SIP协议,有良好且详尽的规范。该协议的出现,让视频监控平台的互联互通成为了可能。该协议标准规定了统一的协议规范,并在全国范围内的平安城市项目建设中被普遍推广应用。
由于SIP协议在系统互联互通方面得到广泛应用,尤其是该协议在网络体系和数据通信等领域的优越性。故采用一种基于SIP协议的视频监控互联方案,该方案通过平台代理的方式将两个平台的资源进行共享,以代理服务器作为传输媒介进行视频流传输,从而达到平台与平台之间互联互通的作用。实验结果表明该方案在视频监控平台互联中表现出了良好的效果。
1 相关工作
1.1 信令网关
信令网关(SG)[2]的主要功能是指能接收和发送No.7信令消息体,并与IP网的信令进行消息中继等作用,进而实现信令承接层TDM形式与IP形式的转换功能。其一般网络结构如图1所示。
图1 信令网关的一般网络结构
随着信令网关功能发展的日益强大,开始向其他领域发展应用,例如在智能网,移动互联网等电信业务开发中发展信令网络的互通功能和访问能力,同时在协议转换范围方面也取得了重大的进展,使得信令网关的应用前景变得豁然开朗,当然这也是信令网发展的必然趋势。当前的信令网关已经支持到对SIP、H.323的等多信令协议的互通,其中广泛的协议栈支持能力包括:
1)No.7信令:支持ANSI、ITU、中国等No.7信令变体,提供基本信令(MTO,SCCP),呼叫控制(ISUP、IUP、TUP)、面向业务的消息(TCAP、INAP、GSM MAP、ANSI-41 MAP)等处理功能。
2)数据通信:RTP/RTCP、H.323、SIP、MegacoH.248等。
3)SIGTRAN(Signling Transport,信令传输协议)协议簇:M3UA、M2UA、M2PA、IUA、SUA、TUCL等。
4)另外还支持ATM、帧中继(Frame Relay)、ISDN、V5等的相关协议簇。
1.2 SIP协议
SIP[3](Session Initiation Protocol,会话初始协议)是基于IP网络的应用信令协议,用于实时通信的会话建立、修改和多媒体会话终止。SIP协议的消息机制是将控制信令的信息放到消息体的头字段中,再通过网络传递消息来实现对会话连接和媒体传输的控制。此协议的特点的是灵活简单且移动性好,在可扩展方面也有很好的效果,能够高效地进行系统平台间的信令交互,这点非常符合视频监控平台的应用要求,而且其扩展性也能支持大规模监控网络的分布式部署的需要。因而采用SIP协议作为视频监控平台的信令控制协议,实现视频监控平台的互联互通,已赢得安防各个领域的赏识。例如Internet电话,SIP可以邀请用户进入已经存在的会话,并在多方会议中也可以随时邀请其他用户加入进来,同时在已建议的会话连接中随时进行删除和增加多媒体应用。此外,SIP还支持用户名映射和重定向服务,此功能大多用于支持个人的移动业务需求。在建立会话和保持多媒体会话的连接方面,主要支持以下等5个功能:
1)名字翻译和用户定位: 找出通信用户的IP地址,并将定位到的地址信息与描述信息进行映射连接,确保呼叫双方无论在任何时候和任何场地都能进行会话,以支持呼叫双方的信息交互。
2)用户有效性:查看用户是否愿意加入会话。任何呼叫一方都可以邀请加入其它用户进行多方用户呼叫连接,同时当用户接收不到呼叫或应答时,可设置为等待连接。
3)用户能力: 查验媒体目录和媒体参数。要求参与呼叫的组在行为特征上保持一致,例如媒体的鉴权许可信息等。
4)建立会话: 在呼叫方和被呼叫方之间建立会话参数,用于会话连接。
5)会话管理: 管理会话。对参与会话连接的参数以及状态进行实时监管。
2 平台互联方案研究
以SIP协议开发的视频监控平台,可通过IP网络相互连接,且不需要进行协议转换,然后在SIP协议的定位机制[5]下,参照SIP消息体的头字段进行取值和数据库的存储,在不同的视频监控网络平台之间传递SIP消息,建立会话连接和控制信令转发,从而实现视频监控的互联互通。而当SIP消息体在平台与平台之间进行传递时,此时的中心管理相当于代理服务器。而非SIP协议的视频监控平台,则需要开发信令网关连接到IP网络,完成其私有协议到SIP协议的转换,进而进行互联互通的工作。
一个监控域是指监控平台及其所接入的所有监控设备,而SIP协议作为控制信令的基本协议,适用于不同的监控域拓扑结构,因此不同监控域的监控网络可通过建立信令连接网以实现监控平台的互联互通。而一般的拓扑结构为扁平化和分层级联式两种,以SIP协议开发的网络视频监控平台适用于这两种拓扑结构[6]。而中心管理服务器本身继承了SIP网络服务器的功能,因此监控平台直接可以直接进行通信,此外通过配置服务器可实现视频监控网络的分层级联,此时的监控域之间就存在着严格的等级关系,监控平台之间也不可以越级进行访问。
2.1 代理服务器
代理服务器(Proxy Server)[7]可作为视频监控平台的中间服务器,用于代理平台进行数据转发服务。当用户代理(User Agent,UA)进行会话连接时,首先发出INVITE命令,之后再进行查询被呼叫端的网络地址信息。而UA又分为代理客户端(User Agent Client,UAC)和代理服务器(User Agent Server,UAS),其中代理客户端是指首先发出呼叫命令的一方,而代理服务器则是被呼叫的一方。当用户代理发起连接呼叫的时候,UA则以代理客户端的角色工作,当用户代理被呼叫时,UA则作为代理服务器的角色工作。这种方式类似于互联网的 C/S(Client/Server,客户端/服务器端)模式,因此通过客户端—服务器协议来完成监控平台对监控平台的呼叫。所以采用搭建代理服务器的方法,建立平台与平台的连接媒介,进行媒体协商之后,建立会话连接。当一方平台准备查看另一方平台监控资源的的时候,可通过代理服务器以请求查看监控资源的视频监控平台为呼叫端,而被查看的视频监控平台则作为被呼叫端,从而建立平台间的会话连接。UA模块的结构图如图2所示。
图2 UA结构图
2.2 注册服务器
注册服务器(Register Server)用于接收Register请求。将平台的IP网络地址与SIP URI一起存放于定位服务器上,以便于更方便的通过SIP URI查询实际网络地址。注册服务器也可以接收视频监控平台的注册请求,并将其IP地址存储,当地址发生改变的时候,通过新的注册请求来更改以往记录的位置信息。因此采用搭建注册服务器的方法建立各区域监控平台的路由映射链表,各监控平台通过注册服务器将地址信息存入此链表,以进行平台之间的连接服务和视频流传输服务。
2.3 互联结构
各级监控平台通过注册服务器将各自的URL地址存入位置服务器中,此时位置服务器中就会建立一个管理平台的映射列表。当某一级监控平台请求其他监控平台视频资源的时候,可通过位置服务器查询此监控平台的URL地址,然后通过代理服务器,以主叫端的身份去呼叫需要查看的监控平台,并建立会话连接。经该监控平台同意建立连接后,从而建立双方监控平台之间的视频流传输通道,最后通过RTP/RTCP协议[9]控制视频流的传输,用UDP/TCP传输协议传输媒体流。其中事件处理流程图如3所示。
图3 事件处理流程图
3 本文系统框架
3.1 体系结构
网络视频监控系统通常由三部分组成,即配置模块、SIP服务模块以及平台模块,其体系结构如图1所示。
图4 平台互联系统框架图
其中SIP服务模块负责两个监控平台的连接以及视频流的请求和接收服务, 配置模块负责管理平台的ID,端口以及媒体服务器的地址等信息,平台服务模块负责数据流的传输控制。
3.2 信令联网模块
两个信令网关之间是平级[10]关系,呼叫端的信令网关主动向被呼叫端信令网关发起注册,经被呼叫端网关鉴权认证后才能进行系统间通信。信令网关之间采用SIP进行通信和消息传递。
3.3 媒体流联网模块
呼叫端的监控平台媒体服务器在信令控制服务器的控制下,直接与被呼叫端的监控平台相连,采用实时传输协议RTP(Real-time Transport Protocol)进行接收或转发媒体流。
3.4 数据传递方案
双方监控平台建立连接通道以后,各模块间配合系统进行数据传递。请求播放视频流的模块步骤如图5所示。
其中视频播放主要流程如下:
1)呼叫端平台向被呼叫端平台发送INVITE消息;
2)被呼叫端平台收到请求后,回复200OK响应,携带SDP消息体,消息体描述了媒体流发送者的IP,端口等内容。
3)呼叫端平台收到被呼叫端平台的消息后,向被呼叫端平台发送ACK消息,携带SDP消息体,消息体描述了媒体流接收者的IP,端口等内容。
4)被呼叫端平台收到ACK消息后,可向呼叫端平台发送实时监控视频流。
5)呼叫端平台想要停止接收视频流失,向被呼叫端平台发送BYE消息请求。被呼叫端平台也可以向呼叫端平台发送BYE请求来结束会话。
6)被呼叫端平台收到BYE请求后,回复200OK结束会话。
图5 视频播放流程示意图
4 实验结果与分析
整个系统是在LINUX CentOS系统下搭建运行的,系统使用QT和GSOAP联合开发,协议栈采用Osip和exosip,并使用Yate模拟SIP服务器,系统搭建完成后,在调测软件SPVMN协助下进行联网测试。
4.1 注册服务器测试
首先搭建两个初级监控平台作为呼叫端和被呼叫端,并各自连接摄像头等前端设备,将两个初级监控平台的IP地址和端口等信息通过XML文件配置到平台代理程序的全局链表中,由呼叫端平台网关向被呼叫端网关发起注册认证,过程如下:
1)呼叫端平台网关被呼叫端平台网关发起注册请求。
2)被呼叫端平台网关接受到请求之后,向呼叫端平台网关发起认证请求,并其携带认证体制和认证参数。
3)呼叫端平台收到请求后,根据收到的认证体制和认证参数,并生成发送端的response值,并发送鉴权消息给被呼叫端平台网关。
4)被呼叫端平台网关收到鉴权消息后,对比认证后发送注册认证成功。
4.2 代理服务器测试
代理服务器通过配置的全局链表,建立监控平台之间的虚拟连接,使得呼叫端平台与被呼叫平台可以进行数据通信。测试流程如下:
1)首先呼叫端平台通过代理服务器向被呼叫端平台发起INVITE请求,此时代理服务器的UA模块作为客户端。代理服务器通过全局链表找到呼叫端的IP地址和媒体服务器端口等信息,然后发送请求给被呼叫端平台。
2)被呼叫端平台收到请求之后,发送响应回复并通过代理服务器将本平台的前端摄像头的NOTIF消息打包给呼叫端平台,此时代理服务器的UA作为服务器端。
3)呼叫端平台收到响应消息后,对NOTIF消息进行解析,并建立摄像头与被呼叫端平台之间的路由映射表,然后通过此表查询监控摄像头的目标资源,并通过代理服务器进行媒体连接。
4)被呼叫端平台收到媒体连接的消息后,将媒体服务器的地址和视频流的播放端口等信息通过代理服务器打包给呼叫端平台。
5)呼叫端平台收到媒体服务器的信息后,更新映射表,同时将己方的路由映射表通过代理服务器打包传送给被呼叫端平台。
6)双方建立路由映射表之后,可进行视频流的转发与通信。
4.3 视频流播放
各系统模块测试完成后,开始播放监控视频流。以搭建的系统平台作为呼叫端,地方平台作为被呼叫端,并请求查看地方平台的视频监控录像。选取本地的视频监控平台进行测试,最后在浏览器上播放此监控平台视频监控录像。
5 结语
视频监控平台广泛应用于各个领域,其互联互通问题也是当今安防领域发展的一大趋势,因此必须得到有效的解决。而随着平安城市的不断推广,各监控平台间的互联互通也成为了当下研究的热门话题。本文采用平台互联代理的方法,成功连接了两个视频监控平台的监控资源,使得互联互通问题得到了相应的解决,但在资源访问量方面未取得重大进展,这也是后续继续研究的一大重点。