您的位置 首页 未分类

接口监控

接口监控 编者按:基站动力环境(动环)监控系统中的B≈接口协议,规范了监控中心与现场监控单?元互联的数据传输方…

接口监控

编者按:基站动力环境(动环)监控系统中的B≈接口协议,规范了监控中心与现场监控单?元互联的数据传输方式。文章在研究?B接口报文协议的基础上,设计了一种使用 ?gSOAP工具的Web Service框架。在Web S?ervice框架下,文?章给出了用于基站动环监控系统中B接口报文协议的编程实现过程和测试方法。测试结果表明,♂使用gSOAP工具能够简化B接口报文接口监控协¥议实现的=方式,符合监控中心与现场监控单元通信规范。 ?

作者 陈圆1 粟欣2 ?1.重庆邮电大?学 通信与信息工程学院(重庆 400065∈)2.清华大学 无≒线与移动㈱通信技术研究中心(北京 100084)﹣

本文引用地址:http://www.eepw.com.cn/a?rtiμcle/?201707/362275.htm

陈圆(1991-),男,硕士,研究方向:无线专网;粟欣,男?,研究员,研究方向:移动通信、宽带无线接入。ml

摘要:基站动力环境(动环)监控系统?中的B接口协议,规范了监控中心与现场监控单元互联的数据传输方式。文章在研究B接口报文协议的基础上,设计了一种使??用 gSOAP工具的Web Service框架。在Web Serv?i⊥ce框架下,文章给出了用于基站动环监控系统B接口℅报文协议的编程实现过程和∩测试方法。测试结果表明,使用gSOAP工具能够简化B?接口报文协议实现的方式,符合监控中心与现场监控单元通信规范。

引言

  目前基站动=环监控系统的架构分为三?层:接入层、传输层和业务层[1-4]。接∣入层包含现场监控单元(?Fie※ld Supervi≧si<on Un?it, FSU)和监控对象(Su?pervision O∽bject, SO),SO指的是被监控的*电源、空调等设备及?环境量等。传输层包含传≮输节点设备和传输网络设备?等。业务≥层包含?集中监控中心(Supervision Center, SC)。

  为规范基站?动环监控系统的建设标准,《中国铁塔动环监∷控系统统一互联B接口技术规范?》明确了动环监控系统互联?B接口互联规范、B接口定义和报文协议?[5]。FSU主要的功能是与基站监控现场的对象连接,监控设备的运行状态、控制设备的运行,?采集现场的环境参数。采集到数据之后,将数据传送到SC。当出现监控异常时,FSU产生告警事件并上报到SC,SC处理告警后反馈控制?命令至FSU¢,FSU通过控制命令控制智能㎡设备。图1表示㎞了SC与FSU?之间的B接口报文协议定义报文类型和数据流方向。

  本文介绍了B接口报文协议的内容,包括报文原则、WSDL定?义、基本报文格式的定义;然后在研究B接口报文协议的基础$上,引出一种实现B接口报文协议的开源工具gS ?OAP,描述了它?的原理和使用方法;接着设计了一种基于 gSOAP开源工具的Web Service框架[6-7];最后在提出的框架下,本文给出了用于基站动环监控系统中B接口报文协议的编程实现过£程和测试方法。测⌒试结果表明,使用gSOAP工具能够简?化B接口报文协议实现的方式,符合监控中心与现场监控单元通信规范。

1 B接口报文协议

  +B接口报文协议定义了报文的原则,即SC与FS⊿U之间的接№口是基于Web Service技术的,消息协议采用扩展标记语言(eXtensible Markup Language, XML)格式。Web Service是℉为支持通过网络的可互操作的机器到机器交互的软件系统,可以使用基于HTTP的简单对象接入∥协议 ?(Simple Object Access Protocol, SOAP)进行描述[6]。另外,B接口报文协议中提供了SC和FSU的网络服务描述语言(Web Servic?es Description Language, WSDL)文件:SCService.wsdl和FSUService.wsdl。这两个文件主要是用来描述SC和F?S?U的Web服务交互的消息格式、数据类﹢型、操作、协议绑定和服务地址。

  B接口是基于Web S?ervice技术的,所以采用XML格式,B接口基本的报文格式定义如表1所示。基本的报文格式共有两种类型,分别是请求报文和响应报文。每种类型的报文都包含1个一级节点和2个二级节点,例如请求报文,一级节点是Request,二级节点P?K_Type包含请求报文的类型,≤二级节点In×fo″包含请求报文的详细内容。同样,响应报文的一级节点?是Response,二级节点PK_Type包含响应报文的类型,二级节点Info包含响应报?文的详细内容。

2 接口报文协议实现

2℡.1 gSOAP

  目前?Web Service主要通过基于C/C++和JAVA两种编程语言来实现,使用提供的工具包来定制和发布We?b Service。利用g?SOAP自动编码工具实现We?b Service应用程序接口,可以简化实现客户端和服务器端1的编码工作。gSOAP是以HTTP协议为基础的通信协议,以XML文件形式请求远程服务,再以XML文件的形式返回执行结果。Web Service中的任?何一项服务都¬必?须实现一系列遵守SOmolAP协议的远程过程调用函数,以公开Web上的服务供远程端调用,?这是完全自动完成的。gSOAP服务函数接口定义是用一个标准C/C+∷+头文件说明的,服务也可以用WSDL文档定义。WSDL文?档与gSOAP中的WSDL输入被预处理以生成一个头文件,这个头文件包括服务函数的签名和其他额外的数?据类型声明。头文件由gS?OAP编译器编译后?,生成远程调用服务的框架和数据类型序列化代码,≠这些代码编译后能链接到服务应用程序,在数据分组网上作为W?eb Service。

  gSOAP工具箱提供两个重要的工具:?wsdl2h和?s‖oapcpp2。gSOA?P的3工作流程如?图2所示,详细地说明了客㎜户端和服务端代码3生成过程的两个步骤:WS?DL文件作为wsdl2h∑的输入,产生接口文件;将接㎏口文?件与导入的协议声明和自定义序列化程§序一起输入到soapcp﹣p2工具。soa?pcpp2的默认选项是输出soapClient.cpp和♀soapServer.cp?p,基于这两?个文件分别编写客?户端和服务器的代码。

2.2 基于Web Service的B接口程序框?架

  B接口协议规范中说明了SC和FSU接入双方的要求。当SC轮询FSU获取数o据:温湿度、电压、电流、电量、频率、开㏑关状态等时,FSU为服务端,SC为客户端。当FSU主动上报设备事件数据:告警、状态切换等时,FSU为客户端,SC为服务端。因此,SC和FSU都需要提供Web Ser·vice的客户端和服务端功能。如图3?所示,本文提出一种基于Web ?Service的B接?口程序框架。SC端的fsuSvcClient与FSU端的fsuSv∧cServer互联,完成SC轮询及FSU获取数据的功能,定≌义为FSUService。FSU端的scSvcClient与SC端的scSvcServer互联,完成FSU主动上报设备事件数据的×功∶能,定义为mSCService。fsuSvcClient和 fsu£SvcServer作为一个?FSUService的±客户端和服务端,scSvcClient与scSvcServer作为一个SCService的客户端?和服务端。这两个Web S?ervice是相互独立运行的。

2.3 B接口报文协议实现

  下面将使用gSOAP工具包来实现基站动环监控系统中的B接口报文协议。B接口报文协议中提供了SC和FSU的WSDL文件:SCService.ws∏dl和FSUService.wsdl。下面以实现SC端和FSU端的SCService为例,FSUSer?v≯ice同理。首先,在Linux终端上通过使用gSOAP开发包中wsdl2h工?具编译SCService.wsdl文件,其?命令行为:

  wsdl2h -o㏒ SCService.h SCService.wsdl

  这样就是生成构建?Web服务客户端和服务端所需的接口文件SCService.h。?

  ?接着使用soapcpp2生成C++文件∨形式的SOAP框架,具体命令行为:

  soapcpp2 SCService.h

  ℃命令运行完成后会得到∵soapServer.cpp和soapClie∫nt.cpp。soapServer.cpp中主要是soap_ser㏕ve_ns1_invoke()函数‰的定义,soap?Client.cpp中则是soap_call_ns1_invoke()函数的定义。这两个函数形成了一对远程调用¤的方法,即在客户端中调用了soap_call_n⊕-s1_invoke()函数,把数据发送至服务端?。那么服务端中则会执行soap_serv%e_ns1_?invoke()函数,接收由客户端发送过来的数据,完成数据处理后,把结果返回给soap_ser%ve_ns1_invoke()函数返回值中。?这样客户端和服务端就完成了一次请求/响应的通信过程。需﹥要指出的是,SCService.wsdl文件中描述了客户端和服务端ns1_㏄invoke函数。

  接下来就是在客户端中待发≦送XML数据生成和服务端接收到X∝ML数据后的解析处理和返回给客户端的响应XML数据生成。X∟ML数据的生成和解析使用的是TinyXML2库来实现的。XML数据的生成与解析不作为B接口报文协议的实现展开描述。

3 测试与分析

  以SCServi?ce中的用户注册登陆过程来说明一下B接口报文协议的测试方法。如图4所示,在Linux环境下,使用左侧的?终端代表客户端,右侧的终端代?表服务端。首先在服务端中运行scSvcServer服务,8080为端口参数,然后在客户端中运行scSvcClient,101为用户注册登陆类型参数。客户?端把准备好的LOGIN数据以XML文件的形式发送至服务端,例如终端显示?[LOGIN]FSU->SC。服务端处理LOG?IN数据,显示设备注册?成?功后,生成LOGIN_A?CK XML文件数据返回给客户端,例如终端显示的[LOGIN_ACK]SC->FSU。

  从终端显示的请求报文和响应报文°的内容可以看出,客户端与服务端交互的XML数据是符合B接口基本的报文格式??定义的。每种类型的报文都包含1个一级节点和2个二级?节点,如果是请求报文,则一级节点是Request,二级节点PK_Type包含请求报文的类型,二级节点Info包含请求报?文∠的详细内容@。同样,响应报文的一级节点是Res¥ponse,二级节点PK_Type包含响应报文的类型,二级节点In㎝fo包含响应报文的详细内容。

4? 结论

  本文设计的一种基于gSOAP开源工具的Web Service框架,用′于基站动环监控系统中B接口报文协议的编程实现,能够减少编程实现的编码工作量。测试结果表明,使用gSOAP工具能够简化B接口报文协议实现的方式,符合监控中心与现场监控单元通信规范。但是,B接口协议中还包含了数据库协议等规范说明,需要在目前的设计上完善B接口的功能。

  参考文献:

  [1]崔恒源,黎福海,姚雪芬.移动通﹢信基站〒动÷力环?境监控系统*设计及实∞现[J].计算机测量与控制,2009,17(10): 1955-1957.

  [2]高翠群.动力环境监控系统的消息传输协议设计研究[J?].软件工程师, 2010⊙(7):53-54.

  [3]何世健.电信机房远程监控系统的设计与软件实现[D].西南交通大学,2013.

  [4]黄凯漩.基于B/S模式远程监控系统的研究与实现[D].南京大学,20?11.?

  [5]C TOWER.中国铁塔动环监?控系统统一互联B接口技术规范(试行)V1.0[S].2014.

  [6]ENGELEN R A V,GALLIVAN K A.The gSOAP Toolkit for Web S2e>rvices and Peer-to-Pe?er C㎎omputing Ne?tworks; pro?ceedmings of the Ieee/acm International∪ Symposium on CLUSTER Computing and the Grid?, F, 2002[C?].

  [7]VA﹤N E∮NG?ELEN R, GUPTA G, PANT S.Develo?ping Web services f◎or C and C++[J].IEEE Internet Computing,2003,7(2):53-61.

∴  本文来源于《电子产≡品世界》2?01/7年第8期第49页,欢迎您写论文时引用,并注明出处。

关于更多接口监控内容,可以收藏本网页。直播周末 动环监控系统中B接口的实现

接口监控接口监控
本文来自网络,不代表天津五金网立场,转载请注明出处:http://www.mgnqyz.com/mgnqyz/1499.html

作者: mgnqyz

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@wangzhan.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部