最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

gSOAP+在基于+ONVIF协议的网络视频监控系统中的应用

来源:动视网 责编:小OO 时间:2025-09-29 19:19:01
文档

gSOAP+在基于+ONVIF协议的网络视频监控系统中的应用

ONVIF致力于通过全球性的开放接口标准推进网络视频在安防市场的应用[1]。这一标准定义了网络视频设备之间信息交换的通用协议,使不同生产厂商的网络视频产品具有互通性。该协议是以WebService为基础的,目前WebService主要通过基于C/C++编程的gSOAP开源工具、基于C#的NET:sveutil.exe开发工具和采用JAVA语言的ApacheAXIS2这几种编程工具来实现。不管是哪种编程语言,都已经有相应的工具包来定制和发布Web服务。考虑到gSOAP是一个快速应用程序开发(RA
推荐度:
导读ONVIF致力于通过全球性的开放接口标准推进网络视频在安防市场的应用[1]。这一标准定义了网络视频设备之间信息交换的通用协议,使不同生产厂商的网络视频产品具有互通性。该协议是以WebService为基础的,目前WebService主要通过基于C/C++编程的gSOAP开源工具、基于C#的NET:sveutil.exe开发工具和采用JAVA语言的ApacheAXIS2这几种编程工具来实现。不管是哪种编程语言,都已经有相应的工具包来定制和发布Web服务。考虑到gSOAP是一个快速应用程序开发(RA
ONVIF致力于通过全球性的开放接口标准推进网络视频在安防市场的应用[1]。这一标准定义了网络视频设备之间信息交换的通用协议,使不同生产厂商的网络视频产品具有互通性。该协议是以Web Service为基础的,目前WebService主要通过基于C/C++编程的gSOAP开源工具、基于C#的NET:sveutil.exe开发工具和采用JAVA语言的ApacheAXIS2这几种编程工具来实现。不管是哪种编程语言,都已经有相应的工具包来定制和发布Web服务。

考虑到gSOAP是一个快速应用程序开发(RAD)环境,因为该系统在利用C和C++开发Web服务和客户端应用程序时很大程度地实现了自动化,在简化Web服务的应用程序开发上具有一系列特征。本文将研究gSOAP工具包在基于ONVIF协议的网络视频监控系统中的应用。

1 gSOAP简介

1.1 gSOAP工具包

gSOAP的工具包项目受到美国联邦的研究和发展项目基金的资助[2],是一款开源的WebServices软件。该工具包提供了一个SOAP/XML关于C/C++语言的实现,一定程度上简化了使用C/ C++语言开发Web服务或客户端程序的工作。gSOAP利用编译器技术提供了一组透明化的SOAPAPI,并将与开发无关的SOAP实现细节相关的内容对用户隐藏起来,故对软件开发者而言无需了解SOAP协议实现细节而只需调用这些API即可,因此非常方便。同时gSOAP能够集成C/C++和Fortran代码,跨越多个操作系统平台和语言环境,使用范围相当广泛。该工具包分析WSDL语法和XML模式,并且把XML模式类型和SOAP传递协议映射到易于理解和使用的C/C++代码。如果使用C++语言开发万维网服务,还可以选择是否支持C++的STL。

1.2 gSOAP技术

gSOAP是以HTTP协议为基本的通信协议,它可以理解为一个C/C++的Web服务协议栈。该协议栈从下至上主要包括5部分:网络传输、Web服务调用(消息传输)、Web服务描述与注册(接口描述、发布与发现)、Web服务质量(安全性,可靠性,事务控制)、Web服务工作流(商业流程、事务等)。

虽然gSOAP服务栈由多层结构组成,并与其他网络协议结合使用,看似复杂,但在用gSOAP开发嵌入式系统中的Web服务非常方便。g S O A P工具包中提供了两个可执行文件:w s d l2h和soapcpp2。wsdl2h用来解析wsdl文档生成描述服务的C/C++头文件,soapcpp2用来解析该头文件并生成框架代码。生成的框架文件

gSOAP在基于ONVIF

协议的网络视频监控系统中的应用

肖路欢1 谢灿2 何策2

(1.重庆邮电大学通信新技术应用研究所 重庆 400065; 2.重庆信科设计有限公司 重庆 400065)

摘要:ONVIF(Open Network Video Interface Forum,即开放性网络视频接口论坛)是以Web服务标准为基础的网络视频接口标准。遵循该标准的终端设备均须提供与功能相应的Web Service。在基于ONVIF协议的网络视频监控系统开发中,通过ONVIF官网提供的WSDL文件,使用gSOAP技术,生成C/C++的RPC代码,XML数据绑定,不需要理解SOAP协议的具体细节,完成HTTP在SOAP上的具体封装,缩短了ONVIF 协议模块的开发周期。

关键词:ONVIF Web 服务 gSOAP 网络视频监控系统

中图分类号:TP277文献标识码:A文章编号:1007-9416(2013)06-0128-03

gSOAP Based on ONVIF Protocol Network Video Monitoring System

Xiao Luhuan1,Xie Can2 , He Ce2

(1.Institute of Applied Communication Technology, Chongqing University of Posts and Telecommunications Communication,

Chongqing China 400065; 2.Chongqing Chongyou Information Technology Co. , Ltd, Chongqing 400065)

Abstract:ONVIF (Open Network Video Interface Forum) is based on Web services standards’s Network Video Interface standard. Following the standard terminal equipment shall be provided with the function of the corresponding Web Service.This article discuss the network video monitoring system based on ONVIF protocol, through a WSDL file provide by the ONVIF website,use gSOAP technology, generate RPC of C/C + + code, XML Data binding,not need to understand the details of the SOAP protocol,completion of the package on the HTTP in the SOAP,Shorten the development cycle of the ONVIF protocol module.

Key Words:ONVIF Web services gSOAP the network video monitoring system

基金项目:科技型中小企业技术创新基金(11C26215113601)

作者简介:肖路欢(1987-),男,汉族,湖南娄底人,重庆邮电大学在读硕士研究生,研究方向为通信新技术应用。

谢灿(1980—),男,汉族,重庆人,硕士,研发工程师。主要研究方向物联网与视频监控技术。

何策(1985-),男,研发工程师,主要研究方向为嵌入式软件开发、网络通信协议等。

其功能描述如下:

soapStub.h:从输入头文件生成的经过修改且带命名空间前缀的头文件

soapH.h:主头文件,所有客户机和服务源代码都要将其包括在内

soapC.c:指定数据结构的序列化和反序列化soapClient.c:客户机存根例程soapServer.c:服务器端存根例程

除了gSOAP开发工具生成的以上文件外,在工具包还包含两个重要的文件:stdsoap2.h和stdsoap2.c/cpp。其中stdsoap2.h是stdsoap2.c/cpp运行时的头文件,stdsoap2.c/cpp是运行时的C/C++库,带HTTP/SOAP解析器和运行时支持例程。通过这两个文件和上述的框架代码,开发者可以很方便的进行客户端/服务器端程序开发。

gSOAP是跨平台的万维网服务开发平台,资源要求不高,它以XML文件形式请求远程服务,再以XML文件的形式返回执行结果。在gSOAP 开发Web服务的方法的过程,通过使用gSOAP 中的wsdl2h命令并根据输入的WSDL文档生成相应的头文件,接着根据刚刚生成的gSOAP头文件来运行gSOAP编译器soap2cpp生成源代码来实现客户端应用程序框架,客户端应用程序则可利用RPC存根和gSOAP通信模块在网络上触发SOAP/XML服务函数。具体流程如图1所示。

需要指出的是,上面客户端开发中所使用的WSDL文档实质上是一个XML文档,它用来描述一个Web服务的定义。

2 相关ONVIF模块实现

基于ONVIF协议的网络视频监控的网络视频接口方案,是基于Web服务框架,使用了WSDL网络描述语言进行服务定义,XML 语言对数据进行描述,并采用SOAP通信协议进行信息传输。其重点在于网络视频的发送端与网络视频接收端之间的接口,因而具有严格的执行过程,确保了作为统一化通用接口的兼容性与可靠性。ONVIF规范的接口功能包含网络服务框架、设备发现和管理、媒体服务和实时流传输、云台控制等。

ONVIF的相关服务模块,利用与其对应的WSDL文件来描述该服务。服务请求方可以利用该WSDL文件,通过gSOAP编译工具wsdl2h和soapcpp2产生SOAP框架代码。下面具体分析gSOAP对ONVIF规范下的媒体服务模块的应用开发。

2.1 媒体服务

媒体服务是ONVIF协议中最基本的组成模块之一,其决定了媒体流的性能。ONVIF协议使用媒体属性(profile)来体。媒体属性包含多种配置实体,其中包括视频编码、音频编码、云台、视频分

析、视频源、音频源、元数据、音频输出和音频解码[6]

。其中,音视频编码器配置分别控制音频和视频,源配置则与源关联,云台配置接受云台控制信息并与云台节点关联,其他配置控制其他性能信息。媒体属性也可以像用户信息一样进行创建/修改/删除操作。通常,设备具有默认的固化媒体属性,以便兼容到其他系统中,动态创建其他用户级的属性可以灵活地控制设备媒体(前提是设备支持该配置)。

2.2 具体实现

根据ONVIF规范开发流程,可以在ONVIF官方网站下载相应的媒体服务相关的media.wsdl文件,该文件主要是用来描述与媒体服务相关的Web服务交互的消息格式、数据类型、操作、协议绑定和服务地址。集中于对媒体服务相关的Web服务的基础方面的描

述,对服务查询交互进行了定义和格式化。

由于媒体服务模块包含的配置实体相对较多,现在主要以获得

媒体配置为实验对象,通过gSOAP开发工具进行具体实现。首先,在Linux开发平台上通过使用gSOAP开发包中wsdl2h工具编译

media.wsdl文档,其命令行为:

wsdl2h-c-o media.h-t typemap.dat media.wsdl

此时生成开发者所需要的media.h头文件,其中typemap.dat

为gSOAP提供的类型匹配文件。接着使用soapcpp2生成C文件形式的SOAP框架,具体命令行格式为:soapcpp2 -c -x -L media.h -I/home/xlh/gsoap-2.

8/gsoap -I/gsoap-2.8/gsoap/import/media.h 得到SOAP框架后,把gSOAP开发工具中的stdsoap2.h和

stdsoap2.c两个文件添加到工程中,即完成了用gSOAP开发包将WSDL文档到C/C++头文件的转换。重点工作就是编写入口程

序,创建soap环境和输入相应的设备信息,下图分别为ONVIF协议

下客户端与服务端的入口函数的流程图。在客户端中,通过调用gSOAP提供的stdsoap2.c文件中的soap_init()和自动产生的soap_call___trt__GetProfile()调用远程服务端上的trt__GetProfile()函数,而在服务端,总是处于监听状

态,等待客户端的访问信息,当客户端发来请求时,提供相应的响应服务。在程序设计中我们调用的SOAP系列函数是gSOAP

提供的透明化的API,通过它们,可以设置SOAP环境,并进而通过远程调用方法作为gSOAP交互模型的入口函数,发送请求。在gSOAP交互模型中,主要遵循HTTP/HTTPS通信协议来完成开发人员的需求。3 实验结果与分析

C文件形式下的SOAP框架和入口程序实现之后,接下了就是利用ONVIF官方网站提供ONVIF Device Test Tool测试工具与已开发的服务端进行通信测试。作为服

图1 gSOAP 客户端应用开发流程[4]

自动

开发配置图2 ONVIF 获取媒体属性客户端与服务端交互流程

服务端

······下转第221页

第一类,增强目前神经密钥协议中处理公共信息(公共生成的输入向量或者公共交换输出比特)的能力。目前已有三种机制作被相继提出:1)反馈机制,它通过采用一个线性反馈改变寄存器尝试去对攻击者保密部分输入向量。这个方法对神经密钥建立协议的安全性仅有很小的改善。2)询问机制,它通过询问序列的方式来替代随机的输入向量。这种方式下,通信双方能加快同步过程,而攻击者不会。3)错误预测机制,它能提高错误的输出值来降低攻击者成功的机率,从而提高攻击的难度。

第二类,构造新的神经密码协议的网络结构或者学习规则。目前还没有较为成功的案例。4 结语

神经密码是近十年才兴起的研究方向,它有着自己独特的特性,算法简单,易于实现。同时它与公钥密码理论不同,相信在不久的将来,神经密码会发展成为密码学的重要分支学科。

参考文献

[1]Ruttor A,Kinzel W,Kanter I.Dynamics of neural cryptography [J].Physical Review E,2007,75(5):056104.

[2]Kinzel W,Kanter I.Disorder generated by interacting neural networks:application to econophysics and cryptography[J].Jour-nal of Physics A:Mathematical and General,2003,36(43):11173.

[3]Kanter I,Kinzel W,Kanter E.Secure exchange of information by synchronization of neural networks[J].EPL (Europhysics Letters), 2002,57(1):141.

[4]Shacham L N,Klein E,Mislovaty R,et al.Cooperating attackers in neural cryptography[J].Physical Review E,2004,69(6):066137.

[5]Volkmer M,Wallner S.Tree parity machine rekeying architectures [J].Computers, IEEE Transactions on,2005,54(4):421-427.

[6]Kinzel W,Kanter I.Disorder generated by interacting neural networks:application to econophysics and cryptography[J].Jour-nal of Physics A:Mathematical and General,2003,36(43):11173.

图3 突触深度L与同步迭代次数关系图

务端,编译运行后,便一直处于监听状态等待客户端的请求,当测试工具作为客户端发送请求信息时,服务端便提供服务响应,将服务端信息通过序列化成XML的形式绑定发向客户端,然后客户端通过反序列器解析XML信息,提取有效信息反馈给用户。

测试工具与服务端通信成功如图3所示。而对客户端的通信测试,可以从两个方面来进行检验,在这里主要为了验证所开发客户端与服务端进行通信效果,首先运行服务端,进入监听状态,当客户端运行发送请求信息,服务端响应返回响应信息。客户端通信成功效果如图4。

4 结语

随着视频监控标准化的推进与ONVIF协议的大力推广,ONVIF 协议越来越受到大量安防企业的重视。而ONVIF协议是基于Web Service技术的应用,而Web Service技术是建立在标准性与开放性基础之上,从而彻底打破了以前封闭式的实现方法。通过Web Ser-vice技术,使用不同语言开发、运行在不同平台上的客户可以无缝的获取所需的应用,从而达到资源效率的最大化。在ONVIF协议模块的开发中,用gSOAP开发工具,生成C/C++的SOAP框架代码、XML数据绑定,不需要对SO AP协议有比较深刻的理解而完成HTTP对SOAP的封装,缩短了ONVIF协议模块的开发周期。后续工作就实现ONVIF各功能模块,并确保各模块的协调工作。

参考文献

[1]ONVIF core specification ver 2.1[D].June,2011.

[2]Robert van Engelen,Gunjan Gupta,Saurabh Pant Developing Web Services for C and C++ in IEEE Internet Computing March,2003, pp.53_61.

[3]gSOAP 2.8.14 User Guide[D].March 17,2009.Robert van Engelen Florida State University and Genivia,Inc.

[4]The gSOAP Toolkit for SOAP Web Services and XML-Based Applications[EB/OL] http://www.cs.fsu.edu/~engelen/soap.html [5]W3school.WSDL文档结构[EB/OL]. http://www.w3school.com.cn/wsdl/ wsdl_documents.asp.

[6]ONVIF Media Service Specification Version 2.1[D] June, 2011.

[7]李洋.网络协议本质论[M].电子工业出版社,2011.

[8]gSOAPToolkit[EB/OL]. http://www.cs.fsu.edu/~engelen/soap.html.

图3 ONVIF测试工具获取服务端媒体属性信息

图4 客户端与服务端信息交互成功······上接第129页

gSOAP 在基于 ONVIF协议的网络视频监控系统中的应用

作者:肖路欢, 谢灿, 何策, Xiao Luhuan, Xie Can, He Ce

作者单位:肖路欢,Xiao Luhuan(重庆邮电大学通信新技术应用研究所 重庆 400065), 谢灿,何策,Xie Can,He Ce(重庆信科设计有限公司 重庆 400065)

刊名:

数字技术与应用

英文刊名:Digital Technology and Application

年,卷(期):2013(6)

本文链接:http://d.wanfangdata.com.cn/Periodical_szjsyyy201306092.aspx

文档

gSOAP+在基于+ONVIF协议的网络视频监控系统中的应用

ONVIF致力于通过全球性的开放接口标准推进网络视频在安防市场的应用[1]。这一标准定义了网络视频设备之间信息交换的通用协议,使不同生产厂商的网络视频产品具有互通性。该协议是以WebService为基础的,目前WebService主要通过基于C/C++编程的gSOAP开源工具、基于C#的NET:sveutil.exe开发工具和采用JAVA语言的ApacheAXIS2这几种编程工具来实现。不管是哪种编程语言,都已经有相应的工具包来定制和发布Web服务。考虑到gSOAP是一个快速应用程序开发(RA
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top