CN111885004B - 一种应用层消息传输方法及通信接口平台 - Google Patents
一种应用层消息传输方法及通信接口平台 Download PDFInfo
- Publication number
- CN111885004B CN111885004B CN202010600713.7A CN202010600713A CN111885004B CN 111885004 B CN111885004 B CN 111885004B CN 202010600713 A CN202010600713 A CN 202010600713A CN 111885004 B CN111885004 B CN 111885004B
- Authority
- CN
- China
- Prior art keywords
- communication
- client
- application layer
- interface platform
- communication interface
- 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.)
- Active
Links
Classifications
-
- 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/03—Protocol definition or specification
-
- 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/18—Protocol analysers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Abstract
本发明实施例提供一种应用层消息传输方法及通信接口平台,方法包括:根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立客户端与真实信号子系统之间的通信通道;其中配置信息为客户端所处的信号仿真系统基于客户端与真实信号子系统进行安全层通信所配置的信息;若接收到客户端发送的第一应用层消息,则对第一应用层消息进行安全层通信协议封装,并通过通信通道将封装后的第一应用层消息转发至真实信号子系统;若接收到真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对第二应用层消息进行安全层通信协议解析,并通过通信通道将解析后的第二应用层消息转发至客户端。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种应用层消息传输方法及通信接口平台。
背景技术
RSSP-I安全层通信协议和RSSP-II安全层通信协议已成为铁路信号安全设备之间进行安全相关信息交互的标准规范协议,适用于信号系统封闭式传输系统下,实现信号安全设备间的安全数据通信。在信号仿真系统中,为提供模拟演示或者专项测试环境,需要实现仿真区域控制器(ZC,Zone Controller)、仿真自动列车监控系统(ATS,Automatic TrainSupervision)、仿真列车超速防护(ATP,Automatic Train Protection)、仿真计算机联锁(CI,Computerinterlocking)来与真实ATP、ZC、CI及ATS进行通信。信号仿真系统经常需要实现如RSSP-I或RSSP-II协议封装和解析与其他真实子系统正常通信。
按照现有做法,在基于通信的列车自动控制系统(CBTC,Communication BasedTrain Control System)互联互通规范中,如ZC与ATP之间通信可以采用RSSP-I通信协议或RSSP-II通信协议。对于仿真ZC来说,就需要同时实现两种通信接口,这将给仿真开发人员带来巨大的软件修改量。另外,RSSP-I通信协议和RSSP-II通信协议等安全层通信协议都是基于C语言实现的,对于仿真开发人员的开发语言选择有很大的限制,而且每次都需要实现安全层通信协议的移植,会带来较大的开发和调试工作量。
发明内容
本发明的目的是提供一种应用层消息传输方法及通信接口平台,能够降低安全层通信协议开发和调试带来的工作量。
第一方面,本发明实施例提供一种应用层消息传输方法,包括:
通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信所配置的信息;
若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;
若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端。
可选地,所述若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统,包括:
若所述通信接口平台接收到所述客户端发送的第一应用层消息,则从所述第一应用层消息中解析出通信双方的源标识ID、目的ID以及有效应用数据流;
若所述通信接口平台确定所述源ID和目的ID检查正确,则调用RSSP-I或RSSP-II协议栈对所述有效应用数据流进行封装。
可选地,所述通信接口平台通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统,包括:
所述通信接口平台根据所述源ID和目的ID查找所述通信通道,若所述通信通道处于打开状态,则将封装后的所述有效应用数据流发送至所述通信通道的待发送消息队列;
若所述待发送消息队列不为空,则将封装后的所述有效应用数据流转发至所述目的ID对应的所述真实信号子系统。
可选地,所述若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,包括:
若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则按照所述安全层通信协议对所述第二应用层消息进行解析,得到通信双方的源标识ID、目的ID以及有效应用数据流。
可选地,所述通信接口平台通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端,包括:
若所述通信接口平台确定所述源ID和目的ID检查正确,则根据所述源ID和目的ID查找所述通信通道,若所述通信通道处于打开状态,则将所述有效应用数据流转发至所述源ID对应的所述客户端。
可选地,所述通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道,包括:
所述通信接口平台接收客户端发送的通信连接建立请求;
所述通信接口平台根据所述通信连接建立请求建立与所述客户端之间的第一通信通道;
所述通信接口平台根据接收到的所述客户端发送的配置信息进行安全层通信协议初始化,并建立与所述真实信号子系统之间的第二通信通道;
所述通信接口平台基于所述第一通信通道和所述第二通信通道建立所述客户端与真实信号子系统之间的通信通道。
可选地,所述方法还包括:
所述通信接口平台设置通信中断规则,其中,所述通信中断规则包括:若所述通信接口平台在预设时长内未接收到所述客户端的消息或接收到所述客户端发送的中断通信命令,则断开与所述客户端的通信连接。
第二方面,本发明实施例提供一种通信接口平台,包括:
建立模块,用于根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信所配置的信息;
封装模块,用于若接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;
解析模块,用于若接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法。
本发明实施例提供的应用层消息传输方法及通信接口平台,基于通信接口平台能够将客户端发送的第一应用层消息进行安全层通信协议封装并转发至真实信号子系统,并将真实信号子系统发送的第二应用层消息进行安全层通信协议解析并转发至客户端,相对于现有方案中采用两个通信接口的方式,本发明采用通信接口模块化方式能够降低安全层通信协议开发和调试带来的工作量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种应用层消息传输方法流程图;
图2为本发明实施例提供的通信接口平台对客户端提供RSSP-II协议封装与解析示意图;
图3为本发明实施例提供的通信接口平台对客户端提供RSSP-I协议封装与解析示意图;
图4为本发明实施例提供的接收多个客户端连接并提供安全层通信协议封装和解析的主线程处理方法流程图;
图5为本发明实施例提供的对接收到的客户端应用层数据进行处理的方法流程图;
图6为本发明实施例提供的给客户端转发应用层数据的方法流程图;
图7为本发明实施例提供的监测客户端是否通信超时的方法流程图;
图8为本发明实施例提供的一种通信接口平台结构示意图;
图9为本发明实施例提供的一种电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例公开了一种应用层消息传输方法,包括:
101、通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信所配置的信息;
通常,通信接口平台可以采用多线程设计,可同时与多个客户端建立不同的通信链接(通信通道)并互不干扰,如传输控制协议(TCP,Transmission Control Protocol)通信或用户数据报协议(UDP,User Datagram Protocol)通信等,同时为多个客户端提供服务。即通信接口平台内可以包含有多个通信接口,每个通信接口可以分别与相应的客户端建立通信链接并互不干扰。
信号仿真系统所配置的信息包括但不限于RSSP-I和RSSP-II通信参数、通信双方所有通信通道的网际互联协议(IP,Internet Protocol)及端口号。
例如,通信接口平台可以根据通信双方的IP地址和端口号、以及TCP或UDP配置,建立客户端与真实信号子系统(目的方)之间通信的通信通道(如SOCKET通道),
客户端可以理解为仿真ZC、仿真ATS、仿真ATP或仿真CI。
真实信号子系统可以理解为真实ZC、真实ATS、真实ATP或真实CI。
102、若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;
通信接口平台在完成与客户端的通信链接和安全层通信协议初始化(协议栈初始化)后,若收到来自客户端的发送的第一应用层消息,则对第一应用层消息进行安全层通信协议封装,并通过通信通道将封装后的第一应用层消息转发至真实信号子系统。
103、若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端。
相对应地,通信接口平台在完成与客户端的通信链接和安全层通信协议初始化(协议栈初始化)后,通信接口平台可以周期性检查所有通信接口对应的通信通道是否收到数据,若收到真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对第二应用层消息进行安全层通信协议解析,并将解析后的第二应用层消息通过相应的通信通道转发至客户端。
本发明实施例提供的应用层消息传输方法,基于通信接口平台能够将客户端发送的第一应用层消息进行安全层通信协议封装并转发至真实信号子系统,并将真实信号子系统发送的第二应用层消息进行安全层通信协议解析并转发至客户端,相对于现有方案中采用两个通信接口的方式,本发明采用通信接口模块化方式能够降低安全层通信协议开发和调试带来的工作量。
在前述方法实施例的基础上,步骤101中所述通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道,包括:
所述通信接口平台接收客户端发送的通信连接建立请求;
所述通信接口平台根据所述通信连接建立请求建立与所述客户端之间的第一通信通道;
所述通信接口平台根据接收到的所述客户端发送的配置信息进行安全层通信协议初始化,并建立与所述真实信号子系统之间的第二通信通道;
所述通信接口平台基于所述第一通信通道和所述第二通信通道建立所述客户端与真实信号子系统之间的通信通道。
具体地,将实现RSSP-I和RSSP-II的通信接口平台作为服务端,提供客户端实现客户端与目的方安全层通信协议通信的服务,RSSP-I和RSSP-II可配置,客户端和目的方采用的TCP或UDP可配置。
例如,客户端以TCP的客户端方式主动发起建立链接请求并完成建立TCP通信,若失败,则客户端可以重新建立链接。建立TCP链接后,客户端将与目的方进行安全层通信的RSSP-I或RSSP-II通信参数以及通信双方所有通信通道的IP及端口号按照预设的xml协议发送至通信接口平台。通信接口平台根据接收到的通信参数进行安全层通信协议初始化,并根据通信双方的IP及端口号,以及TCP或UDP配置,打开和建立客户端与目的方之间通信的SOCKET通道。若初始化和通道打开失败,则断开与客户端的连接。通信接口平台采用多线程设计,可同时与多个客户端建立不同的通信链接并互不干扰,可以同时为多个客户端提供服务。
在前述方法实施例的基础上,步骤102中若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统,包括:
若所述通信接口平台接收到所述客户端发送的第一应用层消息,则从所述第一应用层消息中解析出通信双方的源标识ID、目的ID以及有效应用数据流;
若所述通信接口平台确定所述源ID和目的ID检查正确,则调用RSSP-I或RSSP-II协议栈对所述有效应用数据流进行封装;
所述通信接口平台根据所述源ID和目的ID查找所述通信通道,若所述通信通道处于打开状态,则将封装后的所述有效应用数据流发送至所述通信通道的待发送消息队列;
若所述待发送消息队列不为空,则将封装后的所述有效应用数据流转发至所述目的ID对应的所述真实信号子系统。
具体地,通信接口平台完成与客户端的通信链接和协议栈初始化后,若收到来自客户端的应用层消息,通信接口平台可以按照预设的xml协议解析出通信双方的源ID和目的ID以及有效应用数据流。若解析出的源ID和目的ID检查正确,则调用RSSP-I或RSSP-II协议栈,将应用层消息进行安全层通信协议封装,并根据源ID和目的ID查找对应的TCP或UDP通信通道,若通信通道存在且处于打开状态,则将应用数据按照消息发送至该通信通道的待发送消息队列,并更新最近发送消息时间,否则不进行发送。通信接口平台的发送线程周期性检查消息队列,若消息队列不为空,则提取消息并发送至目的方,否则不执行任何操作。
在前述方法实施例的基础上,步骤103中若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行安全层通信协议解析,通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端,包括:
若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则按照所述安全层通信协议对所述第二应用层消息进行解析,得到通信双方的源标识ID、目的ID以及有效应用数据流;
若所述通信接口平台确定所述源ID和目的ID检查正确,则根据所述源ID和目的ID查找所述通信通道,若所述通信通道处于打开状态,则将所述有效应用数据流转发至所述源ID对应的所述客户端。
具体地,通信接口平台完成与客户端的通信链接和协议栈初始化后,通信接口平台可以周期性检查所有通信接口对应的通信通道是否收到数据,若收到来自目的方的应用层消息,则通信接口平台按照安全通信层协议RSSP-I或RSSP-II解析出通信双方的源ID和目的ID以及有效应用数据流。若通信接口平台解析出的源ID和目的ID检查正确,则根据源ID和目的ID查找对应的客户端通道,若通道存在且处于打开状态,则将消息发送至对应的客户端,否则不进行发送。客户端接收到通信接口平台不含RSSP-I或RSSP-II协议的应用层数据后按照预设的xml协议解析,若解析正确且满足时效性要求,则接收该消息。
下面通过两个实例进行补充说明:
实例1:如图2所示,通信接口平台对客户端(如仿真ZC)提供RSSP-II协议封装与解析。
具体地,通信接口平台通过配置文件可设置提供RSSP-II协议封装和解析服务。
通信接口平台通过调用RSSP-II协议栈的DLL文件或者移植RSSP-II协议源码,实现RSSP-II协议的封装和解析功能。
通信接口平台通过读取线程,并根据xml协议,实现RSSP-II参数初始化和通道的打开。
通信接口平台通过写线程,实现来自车载控制器(VOBC,Vehicle on-boardcontroller)-实物端RSSP-II数据读取并解析,解析后的数据按照xml协议发给客户端。其中,车载控制器相当于本发明中的真实信号子系统。
通信接口平台可实现多个仿真ZC(客户端)与一个真实VOBC(目标方)进行RSSP-II通信服务。
实例2:如图3所示,通信接口平台对客户端(如仿真ZC)提供RSSP-I协议封装与解析。
具体地,通信接口平台通过配置文件可设置提供RSSP-I协议封装和解析服务。
通信接口平台通过调用RSSP-I协议栈的库文件或者移植RSSP-I协议源码,实现RSSP-I协议的封装和解析功能。
通信接口平台通过读取线程,并根据xml协议,实现RSSP-I参数初始化和通道的打开。
通信接口平台通过写线程,实现来自VOBC-实物端RSSP-I数据读取并解析,解析后的数据按照xml协议发给客户端。其中,车载控制器相当于本发明中的真实信号子系统。
通信接口平台可实现多个仿真ZC(客户端)与一个真实VOBC(目标方)进行RSSP-I通信服务。
在前述方法实施例的基础上,还包括:
所述通信接口平台设置通信中断规则,其中,所述通信中断规则包括:若所述通信接口平台在预设时长内未接收到所述客户端的消息或接收到所述客户端发送的中断通信命令,则断开与所述客户端的通信连接。
具体地,通信接口平台与客户端进行通信时,采用xml通信协议设计,协议设计时考虑通信双方源标识和目的标识,以及消息序列号、时间戳、可用于判断消息合法性及时间延迟。通信接口平台每次接收到客户端数据时,会更新接收到此客户端数据的时间戳,若超过预设时长,则通信接口平台可以主动断开与客户端的连接。同时,客户端也可以增加相关时间判断以及消息合法性判断,若检测到通信出现异常可主动中断与客户端的连接或发送中断命令使得通信接口平台断开连接。
在上述实施例的基础上,请参阅图4,本发明实施例公开了一种接收多个客户端连接并提供安全层通信协议封装和解析的主线程处理方法,包括:
401、主线程开始;
402、检测是否有客户端发起建立链接请求,若是,则执行步骤403,否则继续执行步骤402;
403、创建一个接收客户端应用层数据处理线程;
404、创建一个给客户端转发应用层数据处理线程;
405、本次循环运行结束,并返回执行步骤402。
在上述实施例的基础上,请参阅图5,本发明实施例公开了一种对接收到的客户端应用层数据进行处理的方法,包括:
501、接收客户端应用层数据线程开始;
502、接收客户端应用层数据中的数据帧;
503、判断数据帧类型,若为链接初始化帧,则执行步骤504,若为应用数据帧,则执行步骤506,若为断开链接帧,则执行步骤508;
504、解析出安全协议参数、IP地址及端口号;
505、完成协议栈初始化并建立通信通道,再执行步骤510;
506、解析应用层数据;
507、提取源ID和目的ID,查询通道,将应用层数据发送给目的方,再执行步骤510;
508、解析数据帧的ID,查询源ID和目的ID;
509、查询打开的通道,关闭安全层通道和通信通道,再执行步骤510;
510、本次循环运行结束,并返回执行步骤502。
在上述实施例的基础上,请参阅图6,本发明实施例公开了一种给客户端转发应用层数据的方法,包括:
601、给客户端转发应用层数据线程开始;
602、遍历查询所有通信通道,判断是否有应用层数据可以接收,若是,则执行步骤603;
603、提取应用层数据并按照IP地址和端口号打包放入缓冲区里;
604、安全层通信协议处理,将接收到的应用层数据按照RSSP-I或RSSP-II协议解析;
605、判断帧类型,若为安全层校验帧,则执行步骤606,若为数据帧,则执行步骤607,若为安全断开指示帧,则执行步骤608;
606、不做处理,再执行步骤609;
607、应用层数据按照xml协议发送给客户端,再执行步骤609;
608、断开安全层,关闭通信通道,再执行步骤609;
609、本次循环运行结束,并返回执行步骤602。
在上述实施例的基础上,请参阅图7,本发明实施例公开了一种监测客户端是否通信超时的方法,包括:
701、监测线程开始;
702、遍历所有已连接客户端对象;
703、监测是否有客户端通信超时,若是,则执行步骤704,否则执行步骤706;
704、关闭客户端对象连接并释放资源;
705、删除客户端对象;
706、本次循环运行结束,并返回执行步骤702。
基于上述实施例的内容,本发明实施例提供了一种通信接口平台,该通信接口平台用于执行上述方法实施例中提供的应用层消息传输方法。参见图8,该通信接口平台包括:
建立模块801,用于根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信所配置的信息;
封装模块802,用于若接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;
解析模块803,用于若接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端。
本发明实施例提供的通信接口平台,能够将客户端发送的第一应用层消息进行安全层通信协议封装并转发至真实信号子系统,并将真实信号子系统发送的第二应用层消息进行安全层通信协议解析并转发至客户端,相对于现有方案中采用两个通信接口的方式,本发明采用通信接口模块化方式能够降低安全层通信协议开发和调试带来的工作量。
其次,通信接口平台实现了客户端的安全层通信协议及以下层协议功能,减少了客户端软件对安全层通信协议的依赖,优化了软件结构,且通信接口平台可重复利用。
本发明实施例的通信接口平台,可以用于执行前述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)901、通信接口(Communications Interface)902、存储器(memory)903和通信总线904,其中,处理器901,通信接口902,存储器903通过通信总线904完成相互间的通信。处理器901可以调用存储器903中的逻辑指令,以执行如下方法:通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信所配置的信息;若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端。
此外,上述的存储器903中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信所配置的信息;若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种应用层消息传输方法,其特征在于,包括:
通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信按照预设的xml协议所配置的信息;所述配置信息包括RSSP-I和RSSP-II通信参数、通信双方所有通信通道的IP及端口号;
若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;
若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端;
所述通信接口平台根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道,包括:
所述通信接口平台接收客户端发送的通信连接建立请求;
所述通信接口平台根据所述通信连接建立请求建立与所述客户端之间的第一通信通道;在所述第一通信通道建立失败的情况下,所述通信接口平台接收所述客户端重新发送的通信连接建立请求;
所述通信接口平台根据接收到的所述客户端发送的配置信息进行安全层通信协议初始化,并建立与所述真实信号子系统之间的第二通信通道;
所述通信接口平台基于所述第一通信通道和所述第二通信通道建立所述客户端与所述真实信号子系统之间的通信通道;
在所述客户端与所述真实信号子系统之间的通信通道打开失败的情况下,断开所述通信接口平台与所述客户端的连接,所述通信接口平台采用多线程设计,与多个所述客户端建立通信连接;其中,所述通信接口平台与多个所述客户端建立的通信通道基于传输控制协议或用户数据报协议通信;
在所述通信接口平台发送的线程周期性检查消息队列不为空的情况下,提取消息并发送至目的方;
在监测线程检测到客户端通信超时的情况下,关闭客户端对象连接并释放资源,所述监测线程用于遍历所有已连接客户端对象,监测是否有客户端通信超时;
所述若所述通信接口平台接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统,包括:
若所述通信接口平台接收到所述客户端发送的第一应用层消息,则按照预设的xml协议从所述第一应用层消息中解析出通信双方的源标识ID、目的ID以及有效应用数据流;
若所述通信接口平台确定所述源ID和目的ID检查正确,则调用RSSP-I或RSSP-II协议栈对所述有效应用数据流进行封装;
所述通信接口平台通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统,包括:
所述通信接口平台根据所述源ID和目的ID查找所述通信通道,若所述通信通道处于打开状态,则将封装后的所述有效应用数据流发送至所述通信通道的待发送消息队列;
若所述待发送消息队列不为空,则将封装后的所述有效应用数据流转发至所述目的ID对应的所述真实信号子系统;
所述方法还包括:
所述通信接口平台设置通信中断规则,其中,所述通信中断规则包括:若所述通信接口平台在预设时长内未接收到所述客户端的消息或接收到所述客户端发送的中断通信命令,则断开与所述客户端的通信连接。
2.根据权利要求1所述的应用层消息传输方法,其特征在于,所述若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,包括:
若所述通信接口平台接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则按照所述安全层通信协议对所述第二应用层消息进行解析,得到通信双方的源标识ID、目的ID以及有效应用数据流。
3.根据权利要求2所述的应用层消息传输方法,其特征在于,所述通信接口平台通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端,包括:
若所述通信接口平台确定所述源ID和目的ID检查正确,则根据所述源ID和目的ID查找所述通信通道,若所述通信通道处于打开状态,则将所述有效应用数据流转发至所述源ID对应的所述客户端。
4.一种通信接口平台,其特征在于,包括:
建立模块,用于根据接收到的客户端发送的配置信息进行安全层通信协议初始化,并建立所述客户端与真实信号子系统之间的通信通道;其中所述配置信息为所述客户端所处的信号仿真系统基于所述客户端与所述真实信号子系统进行安全层通信按照预设的xml协议所配置的信息;所述配置信息包括RSSP-I和RSSP-II通信参数、通信双方所有通信通道的IP及端口号;
封装模块,用于若接收到所述客户端发送的第一应用层消息,则对所述第一应用层消息进行安全层通信协议封装,并通过所述通信通道将封装后的所述第一应用层消息转发至所述真实信号子系统;
解析模块,用于若接收到所述真实信号子系统发送的携带有安全层通信协议的第二应用层消息,则对所述第二应用层消息进行所述安全层通信协议解析,并通过所述通信通道将解析后的所述第二应用层消息转发至所述客户端;
所述建立模块,还用于接收客户端发送的通信连接建立请求;
根据所述通信连接建立请求建立与所述客户端之间的第一通信通道;在所述第一通信通道建立失败的情况下,所述通信接口平台接收所述客户端重新发送的通信连接建立请求;
根据接收到的所述客户端发送的配置信息进行安全层通信协议初始化,并建立与所述真实信号子系统之间的第二通信通道;
基于所述第一通信通道和所述第二通信通道建立所述客户端与所述真实信号子系统之间的通信通道;
在所述客户端与所述真实信号子系统之间的通信通道打开失败的情况下,断开所述通信接口平台与所述客户端的连接,所述通信接口平台采用多线程设计,与多个所述客户端建立通信连接;其中,所述通信接口平台与多个所述客户端建立的通信通道基于传输控制协议或用户数据报协议通信;
在所述通信接口平台发送的线程周期性检查消息队列不为空的情况下,提取消息并发送至目的方;
在监测线程检测到客户端通信超时的情况下,关闭客户端对象连接并释放资源,所述监测线程用于遍历所有已连接客户端对象,监测是否有客户端通信超时;
所述封装模块,具体用于:
若接收到所述客户端发送的第一应用层消息,则按照预设的xml协议从所述第一应用层消息中解析出通信双方的源标识ID、目的ID以及有效应用数据流;
若确定所述源ID和目的ID检查正确,则调用RSSP-I或RSSP-II协议栈对所述有效应用数据流进行封装;
所述装置还包括:
设置模块,用于设置通信中断规则,其中,所述通信中断规则包括:若在预设时长内未接收到所述客户端的消息或接收到所述客户端发送的中断通信命令,则断开与所述客户端的通信连接。
5.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至3任一项所述的应用层消息传输方法的步骤。
6.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至3任一项所述应用层消息传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010600713.7A CN111885004B (zh) | 2020-06-28 | 2020-06-28 | 一种应用层消息传输方法及通信接口平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010600713.7A CN111885004B (zh) | 2020-06-28 | 2020-06-28 | 一种应用层消息传输方法及通信接口平台 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111885004A CN111885004A (zh) | 2020-11-03 |
CN111885004B true CN111885004B (zh) | 2023-07-18 |
Family
ID=73158119
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010600713.7A Active CN111885004B (zh) | 2020-06-28 | 2020-06-28 | 一种应用层消息传输方法及通信接口平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111885004B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112714170B (zh) * | 2020-12-23 | 2022-08-16 | 卡斯柯信号有限公司 | 一种可配置通信协议的通用地面软件框架系统及应用 |
CN112769773B (zh) * | 2020-12-24 | 2022-08-30 | 卡斯柯信号有限公司 | 一种基于国密算法的铁路安全通信协议仿真系统 |
CN114205327B (zh) * | 2021-12-28 | 2024-02-06 | 卡斯柯信号有限公司 | 一种用于轨旁安全平台的动态ip通信方法以及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106375298A (zh) * | 2016-08-30 | 2017-02-01 | 湖南中车时代通信信号有限公司 | 一种可配置安全通信协议的实现方法 |
CN207457721U (zh) * | 2017-09-22 | 2018-06-05 | 北京中科智汇科技有限公司 | 列控地面设备仿真测试系统 |
CN109150631A (zh) * | 2018-10-16 | 2019-01-04 | 湖南中车时代通信信号有限公司 | 轨交信号系统仿真接口管理服务器 |
-
2020
- 2020-06-28 CN CN202010600713.7A patent/CN111885004B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106375298A (zh) * | 2016-08-30 | 2017-02-01 | 湖南中车时代通信信号有限公司 | 一种可配置安全通信协议的实现方法 |
CN207457721U (zh) * | 2017-09-22 | 2018-06-05 | 北京中科智汇科技有限公司 | 列控地面设备仿真测试系统 |
CN109150631A (zh) * | 2018-10-16 | 2019-01-04 | 湖南中车时代通信信号有限公司 | 轨交信号系统仿真接口管理服务器 |
Non-Patent Citations (2)
Title |
---|
可配置安全通信协议栈的设计;陈昕等;《机车电传动》;20160704(第04期);第66-68页 * |
基于RSSP-Ⅱ的城市轨道交通ATS与VOBC间安全通信研究;李夏洋;《铁路计算机应用》;20170325(第03期);第53-57页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111885004A (zh) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111885004B (zh) | 一种应用层消息传输方法及通信接口平台 | |
CN110351156B (zh) | 一种测试方法和装置 | |
CN113259430B (zh) | 一种消息调用方法和装置、电子设备及存储介质 | |
CN106936791B (zh) | 拦截恶意网址访问的方法和装置 | |
CN112398781B (zh) | 一种攻击测试方法、主机服务器及控制服务器 | |
CN112929210B (zh) | 在WebFlux框架搭建的网关路由应用插件的方法、系统及其应用 | |
CN109525542A (zh) | 数据恢复方法、发送/接收装置和计算机可读存储介质 | |
CN116366652A (zh) | 分布式应用运维方法、系统、装置、服务器及网关设备 | |
CN109474540B (zh) | 一种识别opc流量的方法及装置 | |
CN110995829B (zh) | 实例调用方法、装置及计算机存储介质 | |
CN112667359B (zh) | 数据透传方法、电子设备及存储介质 | |
WO2015112916A1 (en) | Methods, systems and computer readable media for testing network devices using simulated application traffic | |
CN113746851B (zh) | 一种支持实时解析grpc请求的代理系统和方法 | |
CN113162922B (zh) | 客户端数据的获取方法及装置、存储介质、电子设备 | |
CN109587087B (zh) | 一种报文处理方法及系统 | |
CN114281547A (zh) | 一种数据报文处理方法、装置、电子设备及存储介质 | |
CN114024822A (zh) | 基于区块链的物联网设备管理方法、设备、服务器及介质 | |
CN113163025B (zh) | 一种数据传输方法、装置、设备及存储介质 | |
CN113489812B (zh) | 基于ip地址相似性的地址解析协议洪范抑制方法和装置 | |
CN114301960B (zh) | 集群非对称流量的处理方法及装置、电子设备及存储介质 | |
CN114650279B (zh) | 实例处理方法及系统 | |
CN108574582B (zh) | 一种故障检测方法和装置 | |
CN114826979B (zh) | 网络链路质量获取方法、装置、系统、设备及存储介质 | |
CN115801629B (zh) | 双向转发侦测方法、装置、电子设备及可读存储介质 | |
CN113553205B (zh) | 一种用于QT和Web端通信协议的执行方法和执行器 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |