【转】网络视频监控P2P解决方案

一.摘要

本文分析了日益增长的民用级别家庭和个人网络视频监控市场的需求特点,并给出了一种经济可行易于大规模部署的P2P解决方案。

由于篇幅有限,本文只给出了方案的思路,未对更深入的技术细节做详细的论述,有兴趣的朋友可以继续深入研究。

二.关键词

IPCAM,  P2P,NAT,  STUN,  TURN,  ICE,  PJSIP,  OPENSIPS,  UDT, TCP,  UDP

三.需求提出

网络视频监控市场持续火爆升温,除了公共安全市场持续高速增长之外,民用市场中家庭和个人视频监控的需求近年也在逐渐增多。这主要得益于以下几点:

1.       网络视频监控产品的价格已经降低到个人很容易接受的程度。

2.       家庭宽带网络的逐步普及。

3.       3G网络的逐步普及。

家庭和个人监控的需求和传统的公共安全监控需求有明显的不同,其特点主要体现在以下几个方面:

1.       规模很小。通常是1台或者几台。

2.       无需专用的监控客户端,无需长时间监控。

3.       监控客户端和网络摄像机多位于不同的网络。比如网络摄像机在家中,用户通过公司的网络或者手机查看视频。

4.       不会多人同时查看一路视频,最多一两人同时看,且概率较小。

5.       无需连续长时间录像,多采用移动侦测或者其他告警触发录像,拍照,同时通过邮件,短信提醒。

四.技术难点

通过以上分析可以看出,家庭以及个人视频监控的需求和传统公共安防市场的需求有很大的不同,决定了其必须采用不同的技术路线和方案:

1.       网络摄像机和监控客户端(PC/手机)位于不同的网络,中间有防火墙隔离,无法像传统安防产品一样采用网络直连通过IP地址直接访问的方式。

2.       网络摄像机数量庞大(至少以万为单位),但分属多个用户。如果采用中央服务器转发的方案,需要互联网上部署相当数量的转发服务器,成本相当高。

3.       必须实现即插即用,不能让用户进行复杂的安装配置。否则售后服务的代价太高。

要实现位于不同网络里的大量网络摄像机和客户端点对点的访问,比较可行而且比较经济的方法是实现防火墙的穿透(NAT),让客户端和网络摄像机之间建立一个直接的数据传输通道,传输视频流和信令。

要实现NAT穿越,需要有一套机制,能够轻松的让客户端和网络摄像机之间能建立起联系,简单的说,就是让客户端能找到自己要访问的摄像机,然后去实现NAT穿越,进而可以访问视频和进行其他操作。

只有解决了上述两个技术难点,大规模部署P2P网络视频监控系统,才有可能实现。

五.解决方案

笔者经过深入的研究和分析,给出以下解决方案。

1.       NAT的穿越

NAT的穿越并非安防监控领域的技术,是目前VOIP以及即时通信等产品的基础性技术,目前来讲已经比较成熟,且有完整的技术标准RFC,同时也有众多的实现方案,包括许多已经得到广泛应用的开源项目。

简单来讲,实现NAT的穿越是可能的,成功的概率也比较高。UDP的协议进行数据传输穿透NAT的成功率比较高,接近100%,TCP则存在一些情况无法实现穿越,主要受限路由器的端口映射机制。

要实现NAT穿越,需要有穿越控制服务器部署在互联网(有固定的域名或者IP),由该服务器来协助网络摄像机和客户端来实现NAT穿越。有些服务器还能在TCP不能穿越的情况下,实现RELAY(数据中继转发)的功能,以确保二者之间能实现数据通信。

由于NAT穿越控制服务器不同于安防监控系统中的媒体转发服务器,主要进行信令交互,不转发媒体数据,在协助打通数据通道之后,对应的网络摄像机和客户端就不会再占用服务器带宽和处理能力了,因此一台穿越控制服务器可以接入数量庞大的网络摄像机和客户端。

2.       网络摄像机和客户端之间的访问机制

通常网络摄像机都有唯一ID,并通过该ID注册到穿越控制服务器。客户端要访问对应的网络摄像机时,也需要先注册到穿越控制服务器,并提交对应网络摄像机的ID,由穿越控制服务器查找对应的网络摄像机,并协助网络摄像机和客户端之间进行NAT穿越,最后打通一个点对点的数据传输通道。之后,二者即可进行正常的媒体和信令交互了。

为实现更加有效的管理,服务器可对设备接入进行认证。此外,如果设备ID过长,也可以为设备建立别名,客户端访问时用设备别名作为参数,服务器来查找对应设备。

3.       数据传输机制

网络摄像机和客户端之间的数据传递包括有媒体流,信令流等。信令流数据量较小,媒体流数据量加大,而且需要有较好的实时性。

如果媒体流和信令流分开传输,需要打通多个通道,增加了复杂性和出错可能,同时增加了服务器的负担。

前面也讲过,UDP协议能有比较好的NAT穿透性,也比较适合媒体流的传输,但可靠性较差,不宜传输信令。为减轻服务器负担(避免TCP无法穿透需要转发),提高穿透成功率,笔者建议只打通一个UDP通道,利用该UDP通道封装媒体和信令流,在应用层加以区分,哪些是媒体流,那些是信令流。

由于UDP传输信令可靠性极差,即使是传输媒体数据,在互联网环境下肯定会出现丢包的情况,仍然会出现图像花屏或者解码出错的情况,因此必须要解决此问题。

好在此问题并非我们第一个提出,利用UDP协议进行可靠的数据传输的需求早就存在,并有了比较好的解决方案,那就是通过UDP协议在应用层实现数据的缓冲,序列化,重传,可靠性控制和拥塞控制。

如果上述三个问题都已解决,则网络视频监控的P2P方案已经基本实现,剩下的就是产品化的问题。以下笔者针对PC访问和手机访问分别给出简要的实现说明:

1.       PC访问网络摄像机。

PC访问网络摄像机,可以先访问一个网页,传入网络摄像机的序列号。

网页加载一个控件,该控件通过NAT穿越控制服务器和该序列号对应的网络摄像机实现NAT穿透后,通过可靠的UDP传输信令和媒体数据。控件提供视频浏览,对讲,云台控制,参数查询设置等功能。

2.       手机访问网络摄像机。

手机由于平台的不同,需要单独开发对应的客户端或者插件以实现和PC访问类似功能。但原理是一样的,都需要通过NAT穿越控制服务器和该序列号对应的网络摄像机实现NAT穿透后,通过可靠的UDP传输信令和媒体数据。由于开源的NAT穿越库是可以移植的,在LINUX,WINCE,IOS, Android,Sbrian等都可以实现同样的NAT穿越功能。

六.实现建议

最后笔者给出几个技术方案的建议,有兴趣的朋友可以自己再去做深入研究,欢迎探讨。

1.       NAT穿越库的选择,笔者推荐PJSIP,网路摄像机以及客户端都可以采用。

2.       NAT穿越控制服务器的选择,笔者推荐OPENSIPS。

3.       可靠UDP传输方案的选择,推荐UDT。

时间: 2024-10-15 12:30:29

【转】网络视频监控P2P解决方案的相关文章

高清网络视频监控系统中交换机的选择

目前视频监控系统已经完成从传统模拟视频监控到数字视频监控的全面升级,并逐渐发展到高清网络数字视频监控阶段,利用现有的办公网络.行业专网.光纤专网,甚至互联网和无线网络等基础架构,搭建以区域安防.生产监视等不同目的的高清网络视频监控系统.其中百万级像素网络摄像机的大规模普及,既解决了传统模拟视频监控系统清晰度不足的尴尬局面也提高了监控系统的便捷性和安全性. 高清网络视频监控系统优势 先进性:利用现有的综合布线网络传输图像,进行实时监控系统所需的前端设备少,连线简洁,后端仅需一套软件系统即可; 可靠

海思Hi3518Ev200 4G wifi无线网络视频监控摄像开发板可二次开发

21世纪,经济社会及物联网,云计算,社会网络,车联网等新型移动通信业务日新月异的发展,2013年,我们的通信技术进入了第四代的移动信息系统--4G通信技术.网线下的网络已不能满足需求,人们对移动通信网络,无线通信网络技术的需求已经被应用到各个行业领域.其中4G网络的无线网络视频监控就被各个行业所应用,如野外环境下的监控.渔塘.果园.无人售货柜.无人配送等等. 为了便于产品研发,减少成本.BOJINGnet基于海思HI3518EV200的H264视频压缩SOC研发出了用于4G网络无线网络视频监控摄

(转)基于单片机的网络视频监控系统的设计

本文提出了一种网络化视频监控系统,将单片机控制技术.USB数据采集技术与基于TCP/IP协议栈的计算机网络结构有机结合起来,使人们能够通过监控现场的摄像机和麦克风等视频音频捕捉设备. 将监控现场的信号通过局域网传输,并送到监视器上以获得实时图像和声音,从而实现远程遥视现场. 随着嵌入式系统的飞速发展,在许多领域,以微控制器为中心的应用系统正逐步取代以计算机为中心的应用.因此,对于网络应用系统的研究,越来越多的研究人员将研究重点转移到嵌入式系统上来.基于此背景,本文提出了一种网络化视频监控系统方案

2440+zc301摄像头 无线网络视频监控系统

一.环境 交叉工具链 :arm-linux-gcc-4.1.2        摄像头 :ZC301 二.移植过程 1.配置内核是内核支持芯片为ZC301的摄像头        Make menuconfig                Device Drivers --->                         <*> Multimedia support --->                                <*> Video For L

网络视频监控系统开发系列---YUV格式详解

转载一篇对yuv格式解释的比较清楚地文章,也可以直接参考微软的那篇文章. 对于YUV格式,比较原始的讲解是MPEG-2 VIDEO部分的解释,当然后来微软有一个比较经典的解释,中文的大多是翻译这篇文章的.文章来源:http://msdn.microsoft.com/en-us/library/aa904813(VS.80).aspx 这里转载有人已经翻译过的, http://hondrif82q.spaces.live.com/blog/cns!776E82726DE60562!177.entr

商场网络监控项目解决方案 零遁SD-WAN

一.系统概述视频监控系统是指以维护社会公共安全为目的,防***.防被盗.防破坏.防火.防暴和安全检查等措施.为了达到安防的目的,采用以电子技术.传感器技术和计算机技术为基础的安全防范技术的器材设备,并将其构成一个系统.一旦出现非法***.盗窃等犯罪活动,安全防范系统能及时发现.及时报警,IP网络监控系统能自动记录下犯罪现场以及犯罪分子的犯罪过程,以便及时破案,节省了大量的人力.物力.重要单位.重要部门安装了多功能.多层次的安防监控系统后,大大减少了巡逻值班人员,从而提高效率,减少开支.正是因为安

3G手机视频监控

手机监控业务是把无线监控设备的视频信号通过公众无线移动通信网络传输,实现实时在线查看现场情况,不受时间和地域限制的3G新业务.用户可以随时随地主动去查看监控现场,或者当有报警信号产生的时候,也可以马上得到通知,并通过查看现场情况对报警进行确认. 手机监控系统的基本功能有: 实时报警:监控场地发生意外情况时,通过活动视频向手机报警. 主动查看:平时也可以随时随地的查看监控场地的情况. 在线设置:可以通过手机对监控设备进行设置,比如是否入侵检测,开机关机,图像设置等. 多手机支持:一部手机由于关机或

网络高清视频监控传输:如何减少带宽消耗?

高清视频监控在带来更加清晰.逼真的视觉效果的同时,其海量的视频数据也对网络传输环境提出了更大的挑战.例如,采用标准H.264MainProfile压缩算法的高清网络摄像机,单路视频要达到1080P全实时(30fps),需要的网络带宽至少要在4Mbsp以上,对于一个监控点在20个以上的大型监控项目来讲,这样的系统需要的网络带宽则约为80Mbsp.而在实际应用中,目前国内部分应用环境的网络带宽仍无法满足这一要求,并且网络的稳定性也不够,这些使得高清视频监控系统在网络传输环节上存在着巨大的安全隐患,具

基于Android平台的移动视频监控系统开发

网络信息化的趋势,跟着流媒体技术.无线网络技术以及视频压缩技术的不断进步,视频监控技术得到了广泛的运用,一起,监控的规划和规划也在不断的扩展.大家关于安全保证的需求不断的提高,然后使得过去以图文为主的内容服务应经不能够满意用户的需要,取而代之的则是音视频多媒体服务.运用移动终端技术的视频监控体系,不只具有体积小型化.装置傻瓜化以及装备灵活化的优势,最重要的是还降低了成本.因为网络功用和视频压缩都被会集的保存在小体积的设备中,因此,经过网络长途监控视频设备就能够取得监控视频.当前,网络视频监控不只