一种基于MQTT的工业网络网关兼容测试方法技术

技术编号:18530141 阅读:222 留言:0更新日期:2018-07-25 14:56
本发明专利技术提供一种基于MQTT的工业网络网关兼容测试方法。测试方法主要是测试服务器读取现场设备分别通过被测网关发送到被测服务器的数据和通过测试网关采集到测试服务器的数据,将两种数据进行一致性验证来判定被测工业网关协议解析的正确性和信息传递的完整性,以此作为判断工业网关兼容性的依据。本测试方法在系统层面上测试工业网关的兼容性。测试网关封装原始目标协议报文发送到MQTT服务器对应的协议主题,通过MQTT服务器将协议报文发送到解析服务器的各个协议解析进程。本方法利用多进程与MQTT主题订阅机制完成网关的多协议并发兼容测试,增强了本发明专利技术的扩展性和通用性。

【技术实现步骤摘要】
一种基于MQTT的工业网络网关兼容测试方法
本专利技术涉及工业网关测试方法,具体设计一种基于MQTT的工业网关兼容测试方法,属于工业网关测试领域。
技术介绍
在新的智能制造系统中需要部署兼容众多工业网络协议的网关设备,从而使得各种异构工业网络通过广域网互联互通,而在实际工业设备上,部分老旧产品无法接入互联网,甚至无法接入局域网,因此需要部署能兼容众多工业网络协议的智能网关设备完成异构网络之间的通信。工业智能网关是现场设备与应用管理层交互的重要纽带,所以测试工业通讯系统对工业网关的兼容性,以确保工业智能网关信息传递的完整性和协议转换的正确性,对于整个工业通讯系统十分重要。目前,对于协议本身的测试已经有标准通用的方法,但是对于从系统层面来测试工业网关兼容性还没有通用方法和流程。由于现在大量老旧工厂设备的局限性,现在的工业网络网关兼容测试主要测试方法也是在本地网关和总线范围内进行互通性的测试,没有真正的将云传输技术和强大的云计算能力运用到测试技术总来进行系统测试,运用云技术的测试系统实现了数据共享,具有信息传递快捷和交互性强等特点,推动着测试技术向着网络化、分布性和开放性的方向发展,使测试系统的测试方法更加灵活,使用更加简便。针对工业网络的种类多样性特点,从消息传输的完整性和解析数据的正确性角度系统地提出了一种基于MQTT通用的工业网络网关兼容测试方法,运用远程在线数据解析技术和MQTT通信技术进行工业网关兼容测试。
技术实现思路
本专利技术提供了一种基于MQTT的工业网络网关兼容测试方法,在不干预被测通讯系统的情况下,测试系统与被测系统并行,被测设备将目标协议数据帧通过RS-485总线发送给测试网关与被测网关,测试网关将接受的目标协议报文后直接进行封装,通过MQTT订阅/发布机制发将不同协议分类送给报文解析服务器进行解析,被测网关接收被测设备发送的目标协议数据帧后解析出有效数据封装成TCP/IP数据报文发送到被测服务器储存,进一步,测试服务器读取被测服务器数据库接收到的数据,验证分析被测服务器数据库的数据与测试服务器完成解析数据的一致性来判断被测网关在工业异构网络环境下协议解析的正确性以及过程的完整性。该方法能用于被测网关在单协议转换和多种不同协议转换进行并发通信环境下的数据报文分类测试任务。测试用户通过测试系统的提供的Web人机交互界面向测试系统提出请求,系统根据用户的测试请求生成配置服务器测试环境,完成测试系统初始化后,测试系统向测试网关发出测试命令,测试网关收到命令后向现场设备发出报文请求,现场设备向目标网关和测试网关广播数据帧,测试网关接收目标协议数据报文后不进行解析,而是对数据报文进行二次封装,加入新的帧头和协议标号等辅助测试信息组成新的数据报文,再封装成MQTT消息,通过MQTT服务器发送到解析服务器进行解析,将解析服务器将解析后的数据与被测服务器的目标数据进行比对,验证数据信息是否一致,生成测试结果和报告。基于MQTT工业网络网关测试系统主要分为两部分:测试系统和被测系统。其中被测系统为一般的工业通讯系统,被测设备为工业现场网关。测试系统主要包括测试用户服务层和测试功能支撑服务层。测试用户服务提供人机交互的接口;测试功能支撑服务层包括测试执行模块和测试结果分析模块等。现场设备接入工业现场RS485总线,按照标准的工业通信协议进行通信。被测网关进行单协议转换或者并发的多协议转换,将转换后的协议报文发送目标服务器。测试系统包括测试网关,测试服务器,MQTT代理服务器。测试网关负责将接收到的协议报文增加辅助测试信息后存储到测试网关内部划分的协议数据映射区,MQTT应用程序负责读出不同协议数据区的协议报文并发送到MQTT代理服务器中对应的主题。测试服务器负责协议报文的标准解析和数据的一致性判别。测试系统中的网关传输数据的关键,测试网关中加入嵌入式操作系统,采用多进程的方式与MQTT代理服务器的发布/订阅机制相结合,能够实现被测网关在多协议通讯下的并发测试。测试网关MQTT程序设计:分为连接处理模块、主题订阅模块、发送模块、接收模块、服务配置模块和服务日志模块。连接模块:测试网关MQTT程序启动后,读取测试网关连接参数,与MQTT代理服务器建立连接,处理连接请求之间的交互数据。主题订阅模块:根据测试网关接收协议帧的需求向MQTT代理服务器订阅相应的协议主题,测试网关分别订阅所有的协议主题,以完成不同协议报文的传输需求。消息发送模块:接收来自MQTT代理服务器推送的相应协议主题的消息,根据测试网关的协议主题订阅将消息传送给解析服务器对应的协议解析进程进行处理。消息接收模块:接收MQTT代理服务器发送相应网关编号主题的消息。服务配置模块:配置文件主要包括一些程序运行参数,MQTT服务器IP地址和端口、心跳、定义的各种协议主题以及其它功能的设置。测试用户通过Web人机交互界面提供的服务界面根据测试需求提出对应的测试请求,创建测试项目。进一步,测试服务器将测试设备发送测试请求后,测试设备返回状态信息,测试服务器分析回的状态并判断测试系统是否连通,如果连通,会显示测试网关的IP地址、相应的端口、现场设备的编号和状态等信息。进一步,测试服务器向测试网关发送测试命令,测试网关作为从站通过RS485总线发送给被测的现场设备,现场设备收到网关的测试命令后向总线以广播方式发送目标协议消息帧,测试网关接收到协议报文后,采集到网关内部对应的协议数据映射区,按规定地址空间保存,测试网关不断快速采集现场设备参数,网关协议数据映射区的数据不断刷新,与现场设备保持一致直接。当被测网关进行多个协议转换任务并发与现场设备通信时,测试网关也应进行多任务测试,利用多任务处理机制,同时接收多个通信接口的数据报文,然后直接从测试网关数据映射区中取数据。测试网关并不直接解析出应用层的有效数据,而是将应用层的数据加上数据头和网关标号、端口号、协议编号和新的帧校验,再封装成MQTT消息。进一步,解析服务器根据设计的解析协议读出报文信息的帧头,对数据帧头部进行校验,符合要求的帧头部作进一步解析,不符合要求的帧头,就直接丢弃数据帧。经过数据帧头部验证后,首先解析出发送报文的端口、编号和解析协议。解析服务器启动协议解析进程对协议报文进行标准解析。完成数据报文解析后,将解析的数据发送到数据库服务器。进一步,数据报文经过解析服务器解析后,将数据信息发送到数据库,数据库将在数据库连接池中建立一个链接。同时数据库需要维护两个链接队列:空闲队列和已分配队列。数据库服务器接收到已经解析的数据包后,便从空闲连接队列中取出一个连接,测试进程获取这个连接,把这个连接放入已分配连接队列中。进一步,测试数据经图表化处理生成完整的测试报告,通过Web人机交互界面呈现给用户。附图说明图1是本专利技术提供的测试服务器功能示意图。图2是本专利技术提供的测试网关功能示意图。图3是本专利技术提供的测试网关封装数据报文的格式。图4是本专利技术提供的测试网关、MQTT代理服务器和测试服务器交互模式示意图。具体实施方式以下将结合附图,对本专利技术的优选实施例进行详细的描述,下面将结合附图对本专利技术作进一步的详细描述:如图1所示,测试服务器包括解析服务器和MQTT代理服务器,具体运行流程如下:步骤1:MQTT代理服务本文档来自技高网...

【技术保护点】
1.一种工业网络网关兼容测试方法,其特征在于:测试网关采集现场设备的报文信息通过MQTT协议分类上传到测试服务器,测试服务器再读取现场设备通过被测网关传送到上层服务器的数据,并将两种数据进行一致性验证,以此作为对判断工业网关兼容性的依据。

【技术特征摘要】
1.一种工业网络网关兼容测试方法,其特征在于:测试网关采集现场设备的报文信息通过MQTT协议分类上传到测试服务器,测试服务器再读取现场设备通过被测网关传送到上层服务器的数据,并将两种数据进行一致性验证,以此作为对判断工业网关兼容性的依据。2.根据权利要求1所述的一种工业网络网关兼容测试方法,其特征在于:该测试系统包括测试系统、被测系统。测试系统包括测试网关和测试服务器,测试服务器是测试的核心部分,负责目标协议报文和辅助信息的解析以及数据报文的一致性验证;网关的通信接口包括有TCP/IP通信接口、RS485总线通信接口,负责协议报文的分类发送。被测系统即被测网关所在的工业通讯系统。3.根据...

【专利技术属性】
技术研发人员:罗志勇王松韩冷杨美美郑焕平赵杰罗蓉蔡婷
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:重庆,50

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1