CN117955886A - 一种服务器的软件架构及分布式自动测试系统 - Google Patents
一种服务器的软件架构及分布式自动测试系统 Download PDFInfo
- Publication number
- CN117955886A CN117955886A CN202311728370.2A CN202311728370A CN117955886A CN 117955886 A CN117955886 A CN 117955886A CN 202311728370 A CN202311728370 A CN 202311728370A CN 117955886 A CN117955886 A CN 117955886A
- Authority
- CN
- China
- Prior art keywords
- test
- module
- node
- communication
- gateway
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 297
- 230000006854 communication Effects 0.000 claims abstract description 165
- 238000004891 communication Methods 0.000 claims abstract description 163
- 230000006978 adaptation Effects 0.000 claims abstract description 64
- 230000003993 interaction Effects 0.000 claims abstract description 23
- 238000000034 method Methods 0.000 claims abstract description 13
- 230000008569 process Effects 0.000 claims abstract description 13
- 230000007175 bidirectional communication Effects 0.000 claims abstract description 10
- 230000005540 biological transmission Effects 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 37
- 238000004458 analytical method Methods 0.000 claims description 20
- 238000013507 mapping Methods 0.000 claims description 14
- 238000005538 encapsulation Methods 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 abstract description 63
- 230000009286 beneficial effect Effects 0.000 abstract description 4
- 238000012544 monitoring process Methods 0.000 abstract description 4
- 238000013461 design Methods 0.000 description 6
- 230000006855 networking Effects 0.000 description 4
- 238000004806 packaging method and process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- QVFWZNCVPCJQOP-UHFFFAOYSA-N chloralodol Chemical compound CC(O)(C)CC(C)OC(O)C(Cl)(Cl)Cl QVFWZNCVPCJQOP-UHFFFAOYSA-N 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/08—Testing, supervising or monitoring using real traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/16—Gateway arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种服务器的软件架构及分布式自动测试系统,涉及自动测试领域,分布式自动测试系统中的节点适配终端与测试节点连接,各网关通过服务器与云平台管理模块连接,任一个网关与遵循相同无线通信协议的节点适配终端之间无线连接,该软件架构包括上层通信模块、主控逻辑模块及下层通信模块,依托于作为中间信息交互枢纽的包括该软件架构的服务器,实现了在无线通信方式下,分布式自动测试过程中云平台管理模块的测试指令的准确下达以及测试节点的反馈信息的回传,完成数据双向通信,使得分布式自动测试系统能够更好地适应遵循多种无线通信协议的多测试节点的复杂场信号测试与监控,利于工程实际应用。
Description
技术领域
本发明涉及自动测试技术领域,具体而言,涉及一种服务器的软件架构及分布式自动测试系统。
背景技术
在多场景、长距离的分布式测试应用场景下,典型的自动测试系统主要依靠有线连接,受限于电缆束缚,存在布线困难、组网不便、管理困难及扩展性差等问题,设计一种功能解耦的、基于无线通信的分布式自动测试系统的重要性不言而喻。
但是,无线通信方式众多,不同方式之间的传输速率、功耗、网络协议及传输数据格式等性能参数互不统一,很难做到将各种无线通信方式直接接入分布式自动测试系统的上层云平台服务器。因此,如何提供一种技术方案来实现基于无线通信的分布式自动测试系统成为当前技术人员亟待解决的问题。
发明内容
本发明解决的问题是:提供了一种服务器的软件架构及分布式自动测试系统,充分发挥了无线通信传输的灵活性、便于布局以及扩展性强的特点,实现了在无线通信方式下,分布式自动测试过程中云平台管理模块的测试指令的准确下达以及测试节点的反馈信息的回传,完成数据双向通信。
为解决上述问题,本发明提供了一种服务器的软件架构,所述服务器应用于分布式自动测试系统,所述分布式自动测试系统还包括云平台管理模块、遵循不同无线通信协议的网关及节点适配终端,所述节点适配终端与测试节点连接,各所述网关通过所述服务器与所述云平台管理模块连接,任一个网关与遵循相同无线通信协议的节点适配终端之间无线连接,所述软件架构包括:
上层通信模块;
主控逻辑模块,用于对所述上层通信模块发送的多个测试指令信息进行分解以确定待发送至各所述测试节点的第一测试指令并确定所述第一测试指令发送的数据传输链路,并对下层通信模块发送的第二反馈信息进行处理,以生成与所述测试节点对应且符合所述预设交互协议的测试结果信息,并通过所述上层通信模块上传至所述云平台管理模块;其中,所述测试指令信息为所述上层通信模块接收到的、所述云平台管理模块基于与其之间的预设交互协议而下发的用于对任一测试节点进行测试的指令信息;
所述下层通信模块,用于根据与所述数据传输链路对应的无线通信协议的数据传输规则,对所述主控逻辑模块发送的第一测试指令进行处理,以生成符合所述数据传输规则的第二测试指令并发送至对应的网关以便发送至对应的测试节点;并将任一个测试节点通过对应网关上传的第一反馈信息按照所述网关对应的数据传输规则进行处理,以生成解析后的所述第二反馈信息发送至所述主控逻辑模块。
本发明的有益效果为:依托于作为中间信息交互枢纽的包括该软件架构的服务器,充分发挥了无线通信传输的灵活性、便于布局以及扩展性强的特点,实现了在无线通信方式下,分布式自动测试过程中云平台管理模块的测试指令的准确下达以及测试节点的反馈信息的回传,完成数据双向通信,使得分布式自动测试系统能够更好地适应遵循多种无线通信协议的多测试节点的复杂场信号测试与监控,解决了传统分布式自动测试系统中布线困难、组网不便、管理困难及扩展性差的问题,降低系统构建成本,增强了系统使用的灵活性,利于工程实际应用。
进一步的,所述上层通信模块包括:
MQTT通信服务模块,分别与所述主控逻辑模块及所述云平台管理模块中的私有云应用软件平台模块连接,用于基于MQTT协议构建与所述私有云应用软件平台模块之间的信息传递通道以进行双向通信;
LXI总线通信服务模块,分别与所述主控逻辑模块及所述云平台管理模块中的测试应用软件模块连接,用于基于VXI-11协议构建与所述测试应用软件模块之间的信息传递通道以进行虚拟LXI总线双向通信。
本方案中,通过MQTT通信服务模块及LXI总线通信服务模块的设计,实现了与云平台管理模块之间的双向通信,实现了数据的可靠传递和数据的高效处理且能够实现对多个测试节点的查找及识别。
进一步的,所述下层通信模块包括协议处理模块及无线通信适配模块;
所述协议处理模块用于针对所述主控逻辑模块下发的第一测试指令,按照所述数据传输链路对应的无线通信协议的数据传输规则生成封装测试指令以达成软件协议适配,并将所述封装测试指令发送至所述无线通信适配模块;根据所述无线通信适配模块发送的一次解析数据及所述一次解析数据对应的网关的数据传输规则生成第二反馈信息以达成协议解析,并将所述第二反馈信息发送至所述主控逻辑模块;
所述无线通信适配模块用于针对所述封装测试指令,根据所述数据传输链路对应的网关的硬件适配要求生成第二测试指令以达成硬件设置适配,并将所述第二测试指令发送至所述网关;针对任一个网关上传的第一反馈信息,按照所述网关对应的硬件适配要求进行解析处理以得到一次解析数据并发送至所述协议处理模块。
本方案中,通过协议处理模块及无线通信适配模块的设置,可靠地实现了双向通信过程中数据的封装与解析。
进一步的,所述主控逻辑模块包括多线程消息处理模块及通信路由选择模块;
所述多线程消息处理模块用于对所述上层通信模块发送的多个测试指令信息进行分解,以确定当前待发送至各所述测试节点的第一测试指令;根据所述下层通信模块发送的第二反馈信息及所述第二反馈信息对应的测试节点,生成与所述测试节点对应且符合所述预设交互协议的测试结果信息上传至所述上层通信模块;
所述通信路由选择模块用于通信定向,以确定各所述第一测试指令对应的数据传输链路,或者,确定所述第二反馈信息对应的测试节点。
进一步的,所述主控逻辑模块还包括节点调度模块;
所述节点调度模块用于确定当前待通信的各所述测试节点的通信顺序,以按照所述通信顺序依次实现与各所述测试节点的信息传输。
本方案中,将主控逻辑模块设置成多线程并发模式,多线程消息处理模块实现了对交互信息的处理,通信路由选择模块实现了数据传输过程中的通信定向,确定数据能够被送往相应的节点进行处理,节点调度模块实现了待通信的多个测试节点的有序通信,以实现最佳调度。
进一步的,所述主控逻辑模块还包括节点管理模块;
所述节点管理模块用于管理各所述测试节点,以控制各所述测试节点的注册、登录及注销,和/或,控制与各所述测试节点交互的信息的存储及清除,和/或,监控各所述测试节点的运行状态。
本方案中,通过节点管理模块的设置提高了整个分布式自动测试系统的可用性,利于实际应用。
进一步的,所述节点管理模块具体用于基于各所述测试节点的入网认证号及预设节点映射规则确定各所述测试节点的唯一身份标识,以基于各所述身份标识对应管理各所述测试节点。
进一步的,所述节点管理模块具体用于针对任一个测试节点,基于所述测试节点的入网认证号及预设关系式确定所述测试节点对应的哈希映射值,并将所述哈希映射值作为所述测试节点的唯一身份标识,以便管理所述测试节点;
所述预设关系式为:
Hash(A)=k1*ascii(A1)+k2*ascii(A2)+...+kn*axcii(An)
其中,Hash(A)表示所述入网认证号A的哈希映射值,ascii(A1)为所述入网认证号的第一位字符A1的ASCII码,ascii(A2)为所述入网认证号的第二位字符A2的ASCII码,axcii(An)为所述入网认证号的第n位字符An的ASCII码,n为所述入网认证号的字符总位数,k1为与所述A1对应的第一参数,k2为与所述A2对应的第二参数,kn为与所述An对应的第n参数。
本方案中,通过上述预设关系式的设置保证了各测试节点间的身份标识不冲撞,保证了身份标识的唯一性。
进一步的,所述主控逻辑模块还包括数据安全模块;
所述数据安全模块用于加密所述第一测试指令,或者,解密所述下层通信模块发送的加密后的第二反馈信息以生成解密后的第二反馈信息。
本方案中,通过数据安全模块的设置实现了双向通信过程中数据的加解密,以避免数据通信传输过程中被窃取。
本发明还提供了一种分布式自动测试系统,包括云平台管理模块、遵循不同无线通信协议的网关及节点适配终端,还包括如上述所述的软件架构的服务器;
所述节点适配终端与测试节点连接,各所述网关通过所述服务器与所述云平台管理模块连接,任一个网关与遵循相同无线通信协议的节点适配终端之间无线连接。
本申请中的分布式自动测试系统可实现云平台管理模块与多个测试节点之间的精确通信,同时兼顾了整个系统运行的时效性和鲁棒性,利于实际应用。
附图说明
图1为本发明提供的一种分布式自动测试系统的结构示意图;
图2为本发明提供的另一种分布式自动测试系统的结构示意图;
图3为本发明提供的一种服务器的软件架构的结构示意图;
附图标记说明:
1-服务器,2-云平台管理模块,3-网关,4-节点适配终端,31-蓝牙网关,32-ZigBee网关,33-HaLow网关,34-LoRa网关,35-LTE虚拟网关,36-Wi-Fi虚拟网关,41-遵循蓝牙协议的节点适配终端,42-遵循ZigBee协议的节点适配终端,43-遵循HaLow协议的节点适配终端,44-遵循LoRa协议的节点适配终端,45-遵循LTE协议的节点适配终端,46-遵循Wi-Fi协议的节点适配终端,11-上层通信模块,12-主控逻辑模块,13-下层通信模块,111-MQTT通信服务模块,112-LXI总线通信服务模块,131-协议处理模块,132-无线通信适配模块,121-多线程消息处理模块,122-通信路由选择模块,123-节点调度模块,124-节点管理模块,125-数据安全模块。
具体实施方式
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
本发明提供了一种实施例,一种服务器的软件架构,服务器1应用于分布式自动测试系统,分布式自动测试系统还包括云平台管理模块2、遵循不同无线通信协议的网关3及节点适配终端4,节点适配终端4与测试节点连接,各网关3通过服务器1与云平台管理模块2连接,任一个网关3与遵循相同无线通信协议的节点适配终端4之间无线连接,软件架构包括:
上层通信模块11;
主控逻辑模块12,用于对上层通信模块11发送的多个测试指令信息进行分解以确定待发送至各测试节点的第一测试指令并确定第一测试指令发送的数据传输链路,并对下层通信模块13发送的第二反馈信息进行处理,以生成与测试节点对应且符合预设交互协议的测试结果信息,并通过上层通信模块11上传至云平台管理模块2;其中,测试指令信息为上层通信模块11接收到的、云平台管理模块2基于与其之间的预设交互协议而下发的用于对任一测试节点进行测试的指令信息;
下层通信模块13,用于根据与数据传输链路对应的无线通信协议的数据传输规则,对主控逻辑模块12发送的第一测试指令进行处理,以生成符合数据传输规则的第二测试指令并发送至对应的网关3以便发送至对应的测试节点;并将任一个测试节点通过对应网关3上传的第一反馈信息按照网关3对应的数据传输规则进行处理,以生成解析后的第二反馈信息发送至主控逻辑模块12。
展开来说,考虑到现有技术中的自动测试系统主要是依靠有限连接,存在布线困难、组网不便、管理困难及扩展性差等问题,而无线通信协议众多,使得遵循不同通信协议的测试节点很难直接接入分布式自动测试系统的云平台管理模块2,为此,本申请设计了一种作为中间信息交互枢纽的服务器1,实现了无线通信方式下的分布式自动测试系统的建立,请参照图1,需要说明的是,图1中以1个测试节点、节点适配终端4及网关3为例对分布式自动测试系统的连接方式作简洁示意,其中,将网关3与节点适配终端4之间的无线通信连接以虚线示意。
还需要说明的是,服务器1与云平台管理模块2之间的连接、节点适配终端4与测试节点之间的连接均包括但不限于为有线连接方式,如利用以太网连接,图2中将这种有线连接以实线展示;更具体的,从实际应用层面的设计来看,多种遵循不同无线通信协议的网络接入服务器1的具体方式可以为,在不变更服务器1的硬件设施的情况下,将以太局域网作为集中网络,通过网关3对无线网络进行桥接,并在服务器1中实现网络协议转换,而无线网络与以太网络的转换具体可通过三种方式实现:
第一种方式为依靠TCP/IP协议进行适配,即考虑到Wi-Fi和HaLow均属于802.11无线通信协议簇标准,都具有三层网络接入能力,因此直接使用TCP/IP协议进行网络寻址;节点适配终端4可以使用软件工具配置无线子网参数来实现子局域网,从而借助封装的TCP服务端和TCP客户端接口进行无线通信。
第二种方式为依靠网络代理进行适配,由于服务器1运行于私有网络,而LTE-M模组使用拨号接入基站公共网络,因此对于基站蜂窝网络来说,服务器1所在分布式网络是不可见的,即LTE-M无线网络与服务器1核心网之间无法直接实现互通,因此构建一个可见的公共代理器,为服务器1和节点适配终端4所在的网络建立一个通信连接。
第三种方式为依靠协议转换进行适配,在服务器1中实现二层以上的数据包的封装,将数据包基于该无线通信物理寻址封装为无线传输协议帧,并通过以太网络通信手段将封装好的协议帧发送给网关3,由网关3中的无线通信模组进行发送。
此外,多种无线通信协议包括但不限于为Wi-Fi、蓝牙(Bluetooth)、LTE(LongTerm Evolution,长期演进)等,在此不作特别的限定;对于任一个测试节点来说,其通过节点适配终端4与对应遵循相同通信协议的网关3连接,其中,构建该测试节点的设备包括但不限于现场集成的测试机柜、通用测试仪器、嵌入式测试板卡等。每个测试节点均由节点适配终端4为其提供无线通信支持,网关3传递过来的第二测试指令经由节点适配终端4下发给测试节点以发起具体的测试任务,于是,测试节点得到了无线通信能力的扩展,继而可以在实际测试流程中灵活变动其位置分布。
云平台管理模块2即为整个分布式自动测试系统中的上层云平台服务器1,具体的请参照图2,用户可使用PC(Personal Computer,个人电脑)、平板或者便携式PC等多种终端设备登录至云平台管理模块2,进入到自动测试运行平台中,进而可以获取当前测试场景下已注册的多个测试节点的状态,构建测试任务序列,下发测试指令信息以发起自动测试任务。可以理解的是,测试结果信息反映了对测试指令信息的执行情况,云平台管理模块2可进一步对该结果进行可视化展示;至于上层通信模块11与云平台管理模块2之间通信时用到的预设交互协议在此不作特别的限定,可以设计一种私有的通信交互协议,根据实际需求而定即可。
综上,本申请提供了一种服务器的软件架构,该架构结构清晰、逻辑清楚且易于维护,依托于作为中间信息交互枢纽的包括该软件架构的服务器,充分发挥了无线通信传输的灵活性、便于布局以及扩展性强的特点,将多个测试节点进行聚合,达成通信的边缘化,实现了在无线通信方式下,分布式自动测试过程中云平台管理模块2的测试指令的准确下达以及测试节点的反馈信息的回传,完成数据双向通信,使得分布式自动测试系统能够更好地适应遵循多种无线通信协议的多测试节点的复杂场信号测试与监控,时效性良好、鲁棒性强、高并发高可用,解决了传统分布式自动测试系统中布线困难、组网不便、管理困难及扩展性差的问题,降低系统构建成本,增强了系统使用的灵活性,利于工程实际应用。
作为一种优选的实施例,上层通信模块11包括:
MQTT通信服务模块111,分别与主控逻辑模块12及云平台管理模块2中的私有云应用软件平台模块连接,用于基于MQTT协议构建与私有云应用软件平台模块之间的信息传递通道以进行双向通信;
LXI总线通信服务模块112,分别与主控逻辑模块12及云平台管理模块2中的测试应用软件模块连接,用于基于VXI-11协议构建与测试应用软件模块之间的信息传递通道以进行虚拟LXI总线双向通信。
具体来说,整个分布式自动测试系统的软件体系遵循硬件平台架构,分为上层的云平台管理模块2对应的应用软件平台层、中层的上述服务器1对应的中间件服务层及下层的测试节点对应的测试终端软件层三个层次,实现了系统结构解耦,适配多种异构数据的系统接入,便于二次开发以构建用户定制化的自动测试及数据收集平台,用途广泛,其中,应用软件平台层具体包括私有云应用软件平台模块以及测试应用软件模块,私有云应用软件平台模块包括Web前端和Web后端,Web后端由多个子软件模块构成,如测试软件工具集、信息门户、测试资源管理系统、被测节点数据管理系统、测试任务组建及运行系统等,以实现该自动测试系统中测试任务的管理、测试节点的资源管理、和数据处理、分析及展示等工作;测试应用软件模块包括应用程序、IVI驱动、VISA库等,以与LXI总线通信服务模块112实现双向通信,还需要说明的是,上述测试终端软件层具体可以为节点适配终端4中的嵌入式软件系统,以实现有线仪器接口到无线通信接口的适配,下发具体的测试指令及辅助对测试节点的监控。
MQTT通信服务模块111可基于MQTT协议消息队列(Message Queuing TelemetryTransport,消息队列遥测传输)实现信息的可靠传递和数据的高效处理,从而实现该服务器1与云平台管理模块2的私有云应用软件平台模块之间的数据传递;具体的,从实际应用层面的底层设计上来看,在本申请提供的服务器1启动后,云平台管理模块2中私有云应用软件平台模块中的Web后端利用自身与MQTT通信服务模块111关联的MQTT客户端充当订阅者,订阅服务器1定义的数据反馈、故障判断及信息同步等相关通道的话题,服务器1也会利用关联的MQTT通信服务模块111充当订阅者,订阅Web后端定义的任务下发、数据请求等相关通道的话题。于是,一方面,私有云应用软件平台模块的Web前端将任务请求发送给Web后端,Web后端充当发布者,并会根据任务属性调用对应属性的消息交互话题将任务命令推送到MQTT的Broker。由于服务器1订阅了对应的话题,任务消息经由Broker推送给服务器1中的MQTT通信服务模块111,将任务消息拆解为不同测试节点的第二测试指令,并调度对应的通信接口将第二测试指令依次下发;另一方面,测试节点任务执行结束后,会将表示执行结果的第一反馈信息返回到服务器1,经由服务器1处理后得到第二反馈信息,该第二反馈信息将被推送到数据回传交互通道,最终第二反馈信息被Broker推送到订阅该数据回传交互通道的云平台管理模块2,以供进一步分析处理和展示,可以理解的是,在此过程中,服务器1充当发布者的角色。
LXI总线通信服务模块112基于VXI-11协议构建与测试应用软件模块之间的信息通道,实现了服务器1和测试节点的统一管理,并与云平台管理模块2的测试应用软件进行程控交互。具体的,云平台管理模块2需要控制测试节点完成测试任务,为了使得本申请提供的分布式自动测试系统具备对测试节点的控制能力而无需开发复杂的测试总线接口,可以实现LXI总线标准的通信架构,以提高该系统的可用性。展开来说,云平台管理模块2需要具备对下层的测试节点进行查找及识别的能力,以便监控测试节点对测试任务的执行情况,而基于VXI-11协议构建信息传输通道可以很好地保证查找及识别功能的实现。更具体的,从实际应用层面的底层设计上来看,进一步对LXI总线通信服务模块112的工作原理给出如下说明,虚拟化网络可以在一个物理网络环境中虚拟出多个逻辑网络,可解决多个LXI总线设备单机共存的问题,因此,基于虚拟化网络构建容器网络,实现单机网络环境中多个逻辑网络空间的共存,也即,基于虚拟交换机的实现原理,在作为中间信息交互枢纽的服务器1的操作系统中实现虚拟交换机且该虚拟交换机连通多个网络空间,在每个实现的网络命名空间中将虚拟网卡的IP地址设置为同一子网段,如设置网络空间1的IP地址为192.168.10.2,网络空间2的IP地址为192.168.10.3,网络空间3的IP地址为192.168.10.4,然后在每个网络空间中分别启动VXI-11进程,可以实现单机宿主下的多LXI设备共存,则服务器1每挂载一个测试节点,便使用上述虚拟网络化技术为其虚拟出一个独立的IP地址,并将这个独立的IP地址分配到独立的网络空间形成容器,在该容器中运行VXI-11进程,则该VXI-11进程基于RPC服务被访问,由于本申请中上述所述的LXI总线设备由各测试节点作为硬件实现,相当于将LXI总线向无线通信网络进行了拓展,实现了对多测试节点的查找及识别。
作为一种优选的实施例,下层通信模块13包括协议处理模块131及无线通信适配模块132;
协议处理模块131用于针对主控逻辑模块12下发的第一测试指令,按照数据传输链路对应的无线通信协议的数据传输规则生成封装测试指令以达成软件协议适配,并将封装测试指令发送至无线通信适配模块132;根据无线通信适配模块132发送的一次解析数据及一次解析数据对应的网关3的数据传输规则生成第二反馈信息以达成协议解析,并将第二反馈信息发送至主控逻辑模块12;
无线通信适配模块132用于针对封装测试指令,根据数据传输链路对应的网关3的硬件适配要求生成第二测试指令以达成硬件设置适配,并将第二测试指令发送至网关3;针对任一个网关3上传的第一反馈信息,按照网关3对应的硬件适配要求进行解析处理以得到一次解析数据并发送至协议处理模块131。
具体的,协议处理模块131根据第一测试指令生成封装测试指令以达成软件层面的协议适配,相当于数据处理前置工作,数据的解析与封装均面向多种无线通信协议实现;无线通信适配模块132根据封装测试指令生成第二测试指令以达成硬件层面的设置适配,相当于为第二测试指令在无线通信过程中的传输提供硬件基础支持,最终可靠地实现了双向通信过程中数据的封装与解析。
作为一种优选的实施例,主控逻辑模块12包括多线程消息处理模块121及通信路由选择模块122;
多线程消息处理模块121用于对上层通信模块11发送的多个测试指令信息进行分解,以确定当前待发送至各测试节点的第一测试指令;根据下层通信模块13发送的第二反馈信息及第二反馈信息对应的测试节点,生成与测试节点对应且符合预设交互协议的测试结果信息上传至上层通信模块11;
通信路由选择模块122用于通信定向,以确定各第一测试指令对应的数据传输链路,或者,确定第二反馈信息对应的测试节点。
具体的,请参照图3,主控逻辑模块12中的各模块均依托多线程并发模型实现,以实现多线程信息并发处理;更具体的,多线程消息处理模块121实现了对交互信息的处理,通信路由选择模块122实现了数据传输过程中的通信定向,确定数据能够被送往相应的节点进行处理。
作为一种优选的实施例,主控逻辑模块12还包括节点调度模块123;
节点调度模块123用于确定当前待通信的各测试节点的通信顺序,以按照通信顺序依次实现与各测试节点的信息传输。
具体的,为了对当前待通信的多个测试节点进行通信调度,主控逻辑模块12中还设置了节点调度模块123,用于确定通信顺序,确保待传输的信息能够在最短时间内有序推送,实现最佳调度;至于确定该通信顺序的原则根据实际需求灵活设置即可,在此不作特别的限定。
作为一种优选的实施例,主控逻辑模块12还包括节点管理模块124;
节点管理模块124用于管理各测试节点,以控制各测试节点的注册、登录及注销,和/或,控制与各测试节点交互的信息的存储及清除,和/或,监控各测试节点的运行状态。
本方案中,给出了主控逻辑模块12还可以包括用于管理各测试节点的节点管理模块124,具体的,对于与各测试节点交互的信息及数据可以根据设置的数据保存时限灵活管理,如进行持久化保存或者实时保存,在此不作特别的限定,根据实际需求灵活设置即可;由于各测试节点在运行过程中可能出现故障,因此该节点管理模块124还可以监控各测试节点的运行状态以判定节点是否还存活。
作为一种优选的实施例,节点管理模块124具体用于基于各测试节点的入网认证号及预设节点映射规则确定各测试节点的唯一身份标识,以基于各身份标识对应管理各测试节点。
本实施例中,节点管理模块124为了实现对各测试节点的管理,首要的是要明确各个测试节点的唯一身份标识,进而依靠该唯一身份标识管理该节点,以控制该测试节点的注册、登录与注销,和/或,控制与该测试节点交互的信息的存储及清除,和/或,查找该测试节点并监控该测试节点的运行状态。
作为一种优选的实施例,节点管理模块124具体用于针对任一个测试节点,基于测试节点的入网认证号及预设关系式确定测试节点对应的哈希映射值,并将哈希映射值作为测试节点的唯一身份标识,以便管理测试节点;
预设关系式为:
Hash(A)=k1*ascii(A1)+k2*ascii(A2)+...+kn*axcii(An)
其中,Hash(A)表示入网认证号A的哈希映射值,ascii(A1)为入网认证号的第一位字符A1的ASCII码,ascii(A2)为入网认证号的第二位字符A2的ASCII码,axcii(An)为入网认证号的第n位字符An的ASCII码,n为入网认证号的字符总位数,k1为与A1对应的第一参数,k2为与A2对应的第二参数,kn为与An对应的第n参数。
本实施例中,设计了预设关系式,将确定的测试节点对应的哈希映射值作为该测试节点的唯一身份标识,便于后续管理。下面对预设关系式的设计机理给出进一步的说明,与多个测试节点对应的连接拓扑可以为将一个测试通道以无线通信方式类进行抽象得到类通道,则任一个类通道下可以挂载多个网关3,任一个网关3下可通过对应的节点适配模块挂载多个测试节点,按照面向对象的基本原则对资源进行分类抽象,则每个测试通道进程中的资源可以抽象为类通道对象、类网关3对象和类节点对象,根据面向对象的编程思想,将每个无线测试通道实现为一个类通道对象,每个网关3实现为类网关3对象,每个无线终端节点实现为类节点对象。类网关3对象存储在内存中,通过将其地址按照数组的方式保存在类通道对象中,使得类通道对象能够依次遍历每个类网关3对象。类节点对象也通过地址映射存储在类网关3中,由于类节点对象数量众多,采用数组的方式存储类节点对象会导致查找时间消耗巨大。因此,本申请采用哈希映射作为有效手段,理想情况下查找期望时间(即时间复杂度)为O(1),利于提高节点查找效率,确保实时性。
更具体的,为了后续节点管理过程中对各测试节点的可靠查找,各测试节点的唯一身份标识即指该节点的ID,从实际应用层面的底层设计上,测试节点的存储结构可设计为三级映射模式,第一级包括类通道对象空间,其中包括多个类网关3对象的地址,第二级包括与任一个类网关3对象对应的ID映射模块,第三级包括多个测试节点,ID映射模块中的各个子模块分别与各个测试节点一一对应,第二级还可以包括与任一个类网关3对象对应的路由映射模块且各个路由映射模块分别与各个测试节点一一对应。
考虑到测试节点的入网认证号具有分布均匀性,设计了预设关系式,其中,为避免相同字符但不同顺序的字符串被映射到同一个数值,造成哈希映射值碰撞严重,对处于不同位置的字符一一对应地定义了参数,即第一参数k1、第二参数k2至第n参数kn均不同,其具体数值根据实际需求而定。可见,通过该设置大大降低了碰撞的概率,保证了各测试节点间的身份标识不冲撞,保证了身份标识的唯一性。
作为一种优选的实施例,主控逻辑模块12还包括数据安全模块125;
数据安全模块125用于加密第一测试指令,或者,解密下层通信模块13发送的加密后的第二反馈信息以生成解密后的第二反馈信息。
本方案中,为了避免数据在传输过程中被窃取而泄露,主控逻辑模块12还包括数据安全模块125,以进行数据的加解密,至于具体采用的加密算法,本申请在此不作特别的限定,根据实际需求灵活设置即可。
本发明还提供了一种分布式自动测试系统,包括云平台管理模块2、遵循不同无线通信协议的网关3及节点适配终端4,还包括如上述所述的软件架构的服务器1;
节点适配终端4与测试节点连接,各网关3通过服务器1与云平台管理模块2连接,任一个网关3与遵循相同无线通信协议的节点适配终端4之间无线连接。
对于本发明中提供的分布式自动测试系统的介绍请参照上述服务器的软件架构的实施例,在此不做赘述。
虽然本公开披露如上,但本公开的保护范围并非仅限于此。本领域技术人员,在不脱离本公开的精神和范围的前提下,可进行各种变更与修改,这些变更与修改均将落入本发明的保护范围。
还需要说明的是,在本说明书中,诸如第一、第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,并不暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。
Claims (10)
1.一种服务器的软件架构,其特征在于,所述服务器(1)应用于分布式自动测试系统,所述分布式自动测试系统还包括云平台管理模块(2)、遵循不同无线通信协议的网关(3)及节点适配终端(4),所述节点适配终端(4)与测试节点连接,各所述网关(3)通过所述服务器(1)与所述云平台管理模块(2)连接,任一个网关(3)与遵循相同无线通信协议的节点适配终端(4)之间无线连接,所述软件架构包括:
上层通信模块(11);
主控逻辑模块(12),用于对所述上层通信模块(11)发送的多个测试指令信息进行分解以确定待发送至各所述测试节点的第一测试指令并确定所述第一测试指令发送的数据传输链路,并对下层通信模块(13)发送的第二反馈信息进行处理,以生成与所述测试节点对应且符合所述预设交互协议的测试结果信息,并通过所述上层通信模块(11)上传至所述云平台管理模块(2);其中,所述测试指令信息为所述上层通信模块(11)接收到的、所述云平台管理模块(2)基于与其之间的预设交互协议而下发的用于对任一测试节点进行测试的指令信息;
所述下层通信模块(13),用于根据与所述数据传输链路对应的无线通信协议的数据传输规则,对所述主控逻辑模块(12)发送的第一测试指令进行处理,以生成符合所述数据传输规则的第二测试指令并发送至对应的网关(3)以便发送至对应的测试节点;并将任一个测试节点通过对应网关(3)上传的第一反馈信息按照所述网关(3)对应的数据传输规则进行处理,以生成解析后的所述第二反馈信息发送至所述主控逻辑模块(12)。
2.如权利要求1所述的服务器的软件架构,其特征在于,所述上层通信模块(11)包括:
MQTT通信服务模块(111),分别与所述主控逻辑模块(12)及所述云平台管理模块(2)中的私有云应用软件平台模块连接,用于基于MQTT协议构建与所述私有云应用软件平台模块之间的信息传递通道以进行双向通信;
LXI总线通信服务模块(112),分别与所述主控逻辑模块(12)及所述云平台管理模块(2)中的测试应用软件模块连接,用于基于VXI-11协议构建与所述测试应用软件模块之间的信息传递通道以进行虚拟LXI总线双向通信。
3.如权利要求1所述的服务器的软件架构,其特征在于,所述下层通信模块(13)包括协议处理模块(131)及无线通信适配模块(132);
所述协议处理模块(131)用于针对所述主控逻辑模块(12)下发的第一测试指令,按照所述数据传输链路对应的无线通信协议的数据传输规则生成封装测试指令以达成软件协议适配,并将所述封装测试指令发送至所述无线通信适配模块(132);根据所述无线通信适配模块(132)发送的一次解析数据及所述一次解析数据对应的网关(3)的数据传输规则生成第二反馈信息以达成协议解析,并将所述第二反馈信息发送至所述主控逻辑模块(12);
所述无线通信适配模块(132)用于针对所述封装测试指令,根据所述数据传输链路对应的网关(3)的硬件适配要求生成第二测试指令以达成硬件设置适配,并将所述第二测试指令发送至所述网关(3);针对任一个网关(3)上传的第一反馈信息,按照所述网关(3)对应的硬件适配要求进行解析处理以得到一次解析数据并发送至所述协议处理模块(131)。
4.如权利要求1至3任一项所述的服务器的软件架构,其特征在于,所述主控逻辑模块(12)包括多线程消息处理模块(121)及通信路由选择模块(122);
所述多线程消息处理模块(121)用于对所述上层通信模块(11)发送的多个测试指令信息进行分解,以确定当前待发送至各所述测试节点的第一测试指令;根据所述下层通信模块(13)发送的第二反馈信息及所述第二反馈信息对应的测试节点,生成与所述测试节点对应且符合所述预设交互协议的测试结果信息上传至所述上层通信模块(11);
所述通信路由选择模块(122)用于通信定向,以确定各所述第一测试指令对应的数据传输链路,或者,确定所述第二反馈信息对应的测试节点。
5.如权利要求4所述的服务器的软件架构,其特征在于,所述主控逻辑模块(12)还包括节点调度模块(123);
所述节点调度模块(123)用于确定当前待通信的各所述测试节点的通信顺序,以按照所述通信顺序依次实现与各所述测试节点的信息传输。
6.如权利要求4所述的服务器的软件架构,其特征在于,所述主控逻辑模块(12)还包括节点管理模块(124);
所述节点管理模块(124)用于管理各所述测试节点,以控制各所述测试节点的注册、登录及注销,和/或,控制与各所述测试节点交互的信息的存储及清除,和/或,监控各所述测试节点的运行状态。
7.如权利要求6所述的服务器的软件架构,其特征在于,所述节点管理模块(124)具体用于基于各所述测试节点的入网认证号及预设节点映射规则确定各所述测试节点的唯一身份标识,以基于各所述身份标识对应管理各所述测试节点。
8.如权利要求6所述的服务器的软件架构,其特征在于,所述节点管理模块(124)具体用于针对任一个测试节点,基于所述测试节点的入网认证号及预设关系式确定所述测试节点对应的哈希映射值,并将所述哈希映射值作为所述测试节点的唯一身份标识,以便管理所述测试节点;
所述预设关系式为:
Hash(A)=k1*ascii(A1)+k2*ascii(A2)+...+kn*axcii(An)
其中,Hash(A)表示所述入网认证号A的哈希映射值,ascii(A1)为所述入网认证号的第一位字符A1的ASCII码,ascii(A2)为所述入网认证号的第二位字符A2的ASCII码,axcii(An)为所述入网认证号的第n位字符An的ASCII码,n为所述入网认证号的字符总位数,k1为与所述A1对应的第一参数,k2为与所述A2对应的第二参数,kn为与所述An对应的第n参数。
9.如权利要求4所述的服务器的软件架构,其特征在于,所述主控逻辑模块(12)还包括数据安全模块(125);
所述数据安全模块(125)用于加密所述第一测试指令,或者,解密所述下层通信模块(13)发送的加密后的第二反馈信息以生成解密后的第二反馈信息。
10.一种分布式自动测试系统,其特征在于,包括云平台管理模块(2)、遵循不同无线通信协议的网关(3)及节点适配终端(4),还包括如权利要求1至9任一项所述的软件架构的服务器(1);
所述节点适配终端(4)与测试节点连接,各所述网关(3)通过所述服务器(1)与所述云平台管理模块(2)连接,任一个网关(3)与遵循相同无线通信协议的节点适配终端(4)之间无线连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311728370.2A CN117955886A (zh) | 2023-12-15 | 2023-12-15 | 一种服务器的软件架构及分布式自动测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311728370.2A CN117955886A (zh) | 2023-12-15 | 2023-12-15 | 一种服务器的软件架构及分布式自动测试系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117955886A true CN117955886A (zh) | 2024-04-30 |
Family
ID=90793537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311728370.2A Pending CN117955886A (zh) | 2023-12-15 | 2023-12-15 | 一种服务器的软件架构及分布式自动测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117955886A (zh) |
-
2023
- 2023-12-15 CN CN202311728370.2A patent/CN117955886A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7012836B2 (ja) | ネットワークスライス管理方法及び装置 | |
CN112511611B (zh) | 节点集群的通信方法、装置、系统及电子设备 | |
EP2888858B1 (en) | Method and apparatus of generalized network controller for a software defined network (sdn) | |
CN108092884A (zh) | 一种无线接入网关系统及应用方法 | |
CN102334112B (zh) | 用于虚拟机网络的方法和系统 | |
CN100433645C (zh) | 网络设备的管理方法及网络管理系统 | |
CN102761864A (zh) | 一种数据传输的方法、系统及设备 | |
CN110838936B (zh) | 一种配电通信网管理系统及方法 | |
CN112039746B (zh) | 一种工业控制网络系统 | |
CN109639484B (zh) | 基于软件定义的工业融合网络管理方法及其网络管理器 | |
JP2021505020A (ja) | フレーム集約方法、ネットワーク設定フレーム送信方法およびデバイス | |
CN113810271B (zh) | 一种物联网网关南向设备接口代理装置及实现方法 | |
US20220158939A1 (en) | Simulation Design Method for Bay Layer Devices of Smart Substation | |
CN102438017B (zh) | 基于路由功能的Modbus和BACnet Ethernet协议转化装置及转化方法 | |
CN104243198B (zh) | 一种基于网络配置协议的网络管理方法和系统 | |
CN113067737A (zh) | 一种时间敏感网络配置管理系统及方法 | |
KR102094041B1 (ko) | IoT 단말 간 실시간으로 자율적인 상호작용을 위한 RDF 그래프 기반의 Semantic 엔진을 구비한 시스템 | |
CN117955886A (zh) | 一种服务器的软件架构及分布式自动测试系统 | |
CN114513792B (zh) | 基于eSIM卡的远程网络控制方法及装置 | |
CN112783049B (zh) | 一种基于微服务的灯联网远程控制系统 | |
US9100267B2 (en) | Network management method, a system and a device | |
CN115550313A (zh) | 外接设备的通信方法、装置、电子设备和存储介质 | |
Li et al. | Efficient oneM2M protocol conversion platform based on NB-IoT access | |
CN114362872A (zh) | 一种基于tsn网络的多网协同边缘智能设备 | |
KR20200098282A (ko) | 이기종 필드버스용 게이트웨이 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |