APP下载

基于P2P串流技术的异构网络家庭联合监视系统

2012-08-10先柯桦

电视技术 2012年24期
关键词:串流监视系统加密

先柯桦

(四川建筑职业技术学院,四川 德阳 618000)

责任编辑:薛 京

在传统家庭监视系统中,若紧急事件发生时房主不在家,就无法即时处理事件[1-2]。本文采用Web 2.0方法,将房主的好友、邻居等加入监视群体,只需其中任何一位成员发出警示信息,就可立即将监视画面传给其他监视群体成员。因为单一Camera的上传带宽有限,本文还将采用P2P网络串流技术[3-4],来节省视频上传所需的带宽[5-7]。本文还设计了具备监视视频加密功能的安全联防网络系统[4],包含金钥管理和交换机制,还有为满足不同成员终端设备的需求,在Camera端采用视频网络编码,将监视画面转换编码成800×600,640×480和480×360三种不同的分辨力,可以分别在PC、笔记本式计算机和智能手机上显示。最后,通过实验来验证本文所设计系统的稳定性和视频加密效能。

1 系统架构

如图1所示,本文所提出的家庭联合监视系统,主要包括3个部分,包括IP Camera和Source PC端、Web Portal端和P2P网络上的监视终端。

图1 家庭联合监视系统架构

1)IP Camera与Source PC端:IP Camera端可以基于RTSP协议,发送监视视频数据到Source PC。Source PC端可以采用VLC视频编码技术,将Camera产生的RTSP串流转换编码成MPEG-4/H.264串流。再采用OpenSSL将编码后的串流以对称式加密法进行加密,并使用Hash Function在串流中加入验证码,以确保数据完整性。最后通过所建立的安全通道向管理中心,进行注册/认证,以及发送解密金钥。

2)Web Portal端:主要负责记录、维护每一户的联防群体名单,当有紧急事件发生时,Source PC端会向Web Portal端取得群体名单,并以P2P方式将监视画面进行传输。此外还支援IP Camera与Source PC端的注册/登入/认证功能,并进行金钥发布及金钥更新。如图2所示,Web Portal端的核心模组简要说明如下:

(1)Apache Kernel:采用Apache软件来构建服务器,提供一个友善的界面,允许Peer从远端通过HTTP通信协议进行联防群体的设定。

(2)Database:所架设的Web服务器,可以通过开放式数据库系统接口来存取后端的数据库,并在Repository中存放大型二进制档案的磁盘空间,如联防的多媒体数据。

(3)Transmission Kernel:前述欲发送的数据包,可以采用不同的通信协议,应用不同的网络拓扑架构,发送到远端的联防成员。

(4)金钥管理模组:它是一个集中式的金钥管理框架,主要用来支援IP Camera与Source PC端的注册/登入/认证和进行金钥发布及金钥更新。

图2 Web Portal端的功能模组

3)P2P网络上的监视终端:监视终端设备将负责把Transcoding和加密后不同分辨力的监视视频,经缓冲、解密和解码,最终显示在监视设备上。

2 研究方法

在本节中将介绍3个主要研究方法,包括IP Camera和Source PC间的RTSP通信、金钥发布中心和监视视频转换编码架构。各个方法的描述如下。

2.1 IP Camera和Source PC端的RTSP通信

IP Camera与Source PC间通过RTSP协议进行视频串流的沟通,所以Source PC需负责RTSP的对话,接收来自IP Camera的视频串流,并且将串流视频封装为P2P的数据传输单位。

1)发送串流

当Source PC发起URL请求与IP Camera建立RTSP连接时,通常采用TCP进行可靠连线。IP Camera在这个连线上等待Source PC端发起RTSP会话,包括Options,Describe,Setup,Play等一系列的请求,请求步骤为:

(1)Options请求及回应:TCR连线建立后,Source PC向IP Camera发送Options请求,IP Camera的回应则包括其所能提供的方法,如 Describe,Setup,Teardown,Play,Pause,Set_Parameter等。

(2)Describe请求及回应:Source PC采用Describe向IP Camera请求Requested Media Data的相关数据,这些数据以SDP协议描述。

(3)Setup请求及回应:获得多媒体信息后,则需要告知IP Camera用何种机制接收数据,这里使用的是RTP与RTCP协议进行数据传输。

(4)Play请求及回应:Play Method本是用来告知所需的数据范围,不过这里IP Camera要不停地发送监视视频,因此不需要加上。

(5)Teardown请求及回应:当应用程序要结束时,可以采用Teardown告知IP Camera停止发送视频,并释放系统资源。

2)接收串流

当Play请求及回应完成后,IP Camera会开始传输视频数据,这里使用了RTP与RTCP两种通信协议。由于Video Frame有可能会切割成数个RTP封包,对Source PC来说,可以采用RTP Header中的Timestamp信息来还原视频数据。RTCP则是与RTP一起使用的,主要功能是发送品质的监视与回馈、媒体间的同步,能够提供拥塞控制。

在RTCP的Setup会话中,可以要求RTP/RTSP协议使用UDP/TCP协议发送,如果使用UDP,在Setup会话过程中会告知双方使用的Port。由于使用UDP传输会有丢失封包的可能,所以在解码还原Video Frame的过程中,可能会有无法还原,须舍弃Video Frame的情况。若使用TCP协议进行传输,则直接利用RTSP会话的连线,并会在Header中加一段以区分RTP与RTCP封包,尽管TCP连线能保证封包不会遗失,但在网络拥塞的情况下Source PC得到的画面将会与IP Camera有一段时间上的延迟。

2.2 金钥发布中心

对于数据量较大的视频信息,例如入侵侦测和IP Camera录下的内容,本文将采用P2P方式加快监视视频播送的速度。为避免监视视频遭拦截窃取,设计了一个金钥发布中心,并根据家庭联防监视群体的特性,增设GroupKey,方便管理群体数据的加解密。将采用OpenS⁃SL开发P2P Security功能,并提供金钥管理机制与数据传输加密(安全强度为AES-128),完整通报流程包括以下3个阶段:

1)IP Camera/Source PC端事件通报流程:IP Camera/Source PC端连线至Web Portal的金钥发布中心,使用发布中心的公开金钥将个人帐号、密码、随机数字及串流金钥(将来供客户端解码串流信息用)加密后,传至管理中心。由公开金钥加密的过程完成了数据的保密性及完整性,并采用个人帐号/密码来验证IP Camera/Source PC端的身份。

2)金钥发布中心通知联防群体成员流程:金钥发布中心连线至各联防群体成员,将串流金钥、IP Camera/Source PC端的信息和其公开金钥,先使用金钥发布中心的私密金钥加密,再使用联防群体成员端的公开金钥加密传至联防群体成员端,因为过程中使用了联防群体成员端的公开金钥加密,如此确保了加密性,再者因为金钥发布中心用了私密金钥加密,联防群体成员端可以用金钥发布中心的公开金钥将其解回。

3)联防群体成员端交换串流数据流程:在P2P传输过程中,联防群体成员可能从其他联防群体成员或是IP Camera/Source PC端得到串流数据,此串流数据的源头一定是IP Camera/Source PC端,联防群体成员端只负责将收到的串流数据转发出去。联防群体成员端首先使用AES-128对称式加密法对串流片段(Streaming Segment)进行加密成E,然后再将E经过SHA-1转换成20 byte的Digest D。接着使用IP Camera/Source PC端的Private Key对D做数字签章成SD,将E+SD透过P2P传输散布至所有的客户端。因为串流片段本身已经经过AES-128加密,所以已达成保密性(要有串流金钥才能解开);再者因为D已经做了数字签章,联防群体成员可以用IP Camera/Source PC端的公开金钥将其解回,只有IP Camera/Source PC端本身才能做数字签章,所以也验证了IP Camera/Source PC端的身份,达成了验证性。最后,因为有加密串流片段的Digest数据,所以可以验证是否为原始的加密数据和中途是否经过窜改或损坏,所以可完成完整性验证。

2.3 监视视频转换编码

由于移动装置,如Notebook和Smartphone的普及,终端设备趋于多样化,单一分辨力的监视画面无法满足需求,因此本文将开发一个动态多串流编码技术,可以由Camera采集到的视频,采用VLC进行转码,根据P2P网络拓扑中各装置的计算能力设计动态分群、群收视位元率评估和Peer在不同群间的Handoff机制,分成800×600,640×480和480×360三种不同分辨力的监视视频串流,会形成不同的联防监视群体,如图3所示。

图3 异构联防网络示意图

当Source PC端接收到异常事件通知时,会立即开启IP Camera并接收监视串流和播放,并且通知联防群体中的所有成员进行协防监视,Source PC会根据联防成员的装置种类和要求的串流品质进行评估,决定是否直接连接IP Camera或分配到理想的Peer Group中来接收视频,整体流程如图4所示。

图4 监视串流品质评估流程图

3 实验结果

在本文的实验中,将验证系统稳定性、视频加密效能,并采用台式计算机、笔记本式计算机和智能手机,分别连接有线、无线网络,以展示异构家庭联防应用情境。整个系统展示情境设计如图5所示,包括以下情境:

1)A住户门窗传感器侦测到异常。

2)A住户警报器发出警报声。

(1)联防监视成员用PC播放门附近的视频串流(分辨力较大);

(2)其他联防监视成员以Notebook或Smartphone播放门窗附近视频串流。

3)B住户警报器发出警报声,并由家庭联防计算机播放A住户门窗附近视频串流。

4)A或B住户关闭事件通知。

5)A和B两户警报器及串流都停止运作。

图5 系统展示情景示意图

图6是呈现当发生门窗被入侵时,会启动联防机制,监视视频会通过P2P网络,发送到不同的监视端,包括Netbook,Smartphone和Notebook。系统平均点对点的播放时间延迟约15~20 s,优于目前Live P2P应用程序,如PPStream。

图6 异构家庭联防应用情境(截图)

在家庭联防视频监视系统的验证部分,本文通过非对称式架构和AES-128,来加密保护社群数据安全。首先探讨启动安全机制后,对系统整体效能的影响,并以传感视频数据的传输速率作为参考指标,跟未启动安全机制的情况相比,启动安全机制后监视视频的传输速率,由30 f/s(帧/秒)降低至 26~28 f/s,也就是额外增加的Overhead约为6%~10%左右。

另外,尝试用紧急事件发生次数与联防监视网络成功建立的比例关系来作为家庭联合监视系统稳定性的评估指标。以往的主从式架构的监控串流设计,经常因为服务器端的上传带宽过小,以及所有监控装置均要求同一品质的监控视频,造成网络断线、负荷过载或系统的稳定性降低。本文应用安全P2P网络串流技术,让每一个监控端成员都能够负责上传监控视频,减少服务器端的负载,让系统稳定性在95%以上,避免因为网络、监控装置、使用者行为的异构性,造成系统不稳定、服务中断的情况。在实验期间模拟紧急事件发生次数共126次,其中联防网络成功建立次数为121次,系统稳定性约96.03%。分析联防网络建立失败的主要原因是Web Portal端的网络不稳定,造成紧急事件信息无法发送出去。为改善此问题,在Camera端加一信息序列的设计,当信息无法以HTTP Get的方式发送到Web Portal,将会放到此信息序列中再重新发送。经过改善后,系统稳定性已达100%。

4 结论

本文实现了一个家庭联合监视系统的系统样机,采用P2P网络串流技术,来节省监视视频上传所需的带宽。本文还设计了具备监视视频加密功能的安全联防网络系统,包含金钥管理和交换机制。同时为了满足不同成员终端设备的需求,在Camera端将采用视频网络编码,将监视画面转换编码成800×600,640×480和480×360三种不同的分辨力,可以分别在PC、笔记本式计算机和智能手机上显示。

将来,此家庭联合监视系统还可以与电信运行公司合作,以绑定促销等方式将家庭联合监视系统及增值服务等推广到一般家庭,使用者也可根据个人需求,自助定制追加其他传感套件及服务。

[1]梅鲁海.一种远程监控的家庭智能化系统设计[J].电视技术,2008,32(8):85-87.

[2]李卫,李志纯,高强.基于嵌入式的P2P流量监控系统的设计及实现[J].计算机工程与设计,2012(4):121-125.

[3]张昱,郝莹.一种支持结构化P2P网络性能优化的双向克隆节点模型[J].中国通信,2012(4):368-372.

[4]钟锋,陆以勤.基于家庭网关的嵌入式远程图像监控系统[J].计算机工程与设计,2011,32(5):1626-1629.

[5]张守辉,于会山.家庭智能化网络监控系统的设计[J].通信技术,2011,44(11):44-48.

[6]丁华,刘文超.运营商开展家庭视频监控业务的现状和未来[J].电信科学,2008,36(10):41-45.

[7]邓光青,危婷,陈常嘉,等.P2P视频点播系统的服务质量模型[J].北京邮电大学学报,2012(2):245-250.

猜你喜欢

串流监视系统加密
一种新型离散忆阻混沌系统及其图像加密应用
北极监视系统
视频监视系统新型终端设备接入方案
一种基于熵的混沌加密小波变换水印算法
只会迟到,不会缺席 苹果无线多房间串流技术AirPlay2
认证加密的研究进展
创新的摄像监视系统取代车外和车内后视镜
基于ECC加密的电子商务系统
被动成像广域空中监视系统综述