一种控制流与数据流解耦的消息服务方法技术

技术编号:33629432 阅读:23 留言:0更新日期:2022-06-02 01:30
一种控制流与数据流解耦的消息服务方法,当客户端A向代理端发送发布请求,客户端B向代理端发送订阅请求时,代理端控制客户端A、B建立客户端A到客户端B的数据专用通道;客户端A与客户端B采用数据专用通道进行点对点数据传输,客户端A与客户端B之间的传输协议依据客户端设备的不同进行适配性替换。本发明专利技术将代理端仅控制客户端动态建立数据专用通道进行真实的点对点数据传输,有效降低数据时延,提高实时性,128字节的数据包时延仅是其十分之三左右,比Micro

【技术实现步骤摘要】
一种控制流与数据流解耦的消息服务方法


[0001]本专利技术属于通信中间件设计领域,主要涉及一种以低时延和可移植为目标的数据交换服务的新方案,具体涉及一种控制流与数据流解耦的消息服务方法。

技术介绍

[0002]近些年来,随着航空领域发展迅速,航天器应用的要求不断提高。卫星载荷的应用发展面向着开放式体系架构,硬件通用化可重构、软件可重载硬件功能等趋势日益明显。具有需求可定义、硬件可重组、软件可重配和功能可重构等典型特征的软件定义卫星载荷技术让卫星载荷系统可灵活响应多种不相同的空间任务,使得有效载荷、计算资源、交换资源、存储资源的重组可以根据具体任务动态配置,并且执行不同的应用程序,来同时满足通信、导航、遥感、科学探测等多种应用场景,提供多种功能,完成多种任务。面向处理不同任务需求的卫星载荷功能须要通过不同的硬件实体进行功能支撑,进而完成相应的工作内容,这即要求完成在不同任务下硬件资源的分配、任务调度,控制、协调并发工作。它通过支持应用构件功能的灵活部署,系统的可实时动态重构,进而动态支持雷达探测、电子侦察、通信等功能,适应软件化系统应用多变的需求。
[0003]当前,软件定义卫星载荷平台可以在不同的卫星载荷硬件部件上加载不同的软件组件,来快速重构出不同的应用功能。此外,这些平台位于空间载荷底层硬件设备及嵌入式操作系统中与上层高级别应用之间的一层相对独立的系统软件平台,提供具有通用性、一致性的框架来从平台硬件中抽象应用实体,以支持跨异构的SDR平台重用应用程序,即波形和服务。另一方面是,在软件定义卫星载荷平台的硬件中,由一个负责控制与命令传输的通用处理器以及多个负责执行数据计算功能的专用处理器组成。这些平台的核心框架运行在通用处理器上,负责整个系统中组件的部署、配置和管理;数据计算或雷达探测等功能的设备则使用专用处理器。软件定义卫星载荷平台核心框架通过实时、动态地装载专用处理器上的运行代码和逻辑阵列或修改其参数,来实现系统功能切换。
[0004]然而,软件定义卫星载荷平台的硬件中,由一个负责控制与命令传输的通用处理器以及多个负责执行数据计算功能的专用处理器组成。也就是说,这些平台的核心框架运行在通用处理器上,负责整个系统中组件的部署、配置和管理;数据计算或雷达探测等功能的设备则使用专用处理器。这其中的挑战是,在软件定义卫星载荷平台的硬件中,雷达探测、数字计算等功能组件部署的嵌入式硬件设备和部署该平台核心框架的通用化硬件设备互相之间异构,须用解耦的通信方式使得消息交互变得透明化、标准化,这是非常具有挑战性的。也因如此,如何满足它们彼此之间实时化、通用化、动态化的通信需求就成为了软件定义卫星载荷平台研究的核心技术问题之一。

技术实现思路

[0005]本专利技术的技术解决问题是:克服现有技术的不足,提出一种控制流与数据流解耦的消息服务方法,比经典手段通信中间件快三倍左右,减少了代理在数据传输中使用的程
度。此外,使数据专用通道可依据设备的不同在运行时动态化选择传输协议,具有更好的可移植性。
[0006]本专利技术的技术解决方案是:
[0007]一种控制流与数据流解耦的消息服务方法,包括如下步骤:
[0008]当客户端A向代理端发送发布请求,客户端B向代理端发送订阅请求时,代理端控制客户端A、B建立客户端A到客户端B的数据专用通道;
[0009]客户端A与客户端B采用数据专用通道进行点对点数据传输,客户端A与客户端B之间的传输协议依据客户端设备的不同进行适配性替换;
[0010]当客户端A向代理端发送取消发布请求或客户端B向代理端发送取消订阅请求时,代理端会通知客户端A和客户端B关闭客户端A到客户端B的数据专用通道。
[0011]单向数据专用通道入口与对应的客户端建立一对一或一对多的关系,单向数据专用通道出口与对应的客户端建立一对一或一对多的关系,这由传输协议决定。
[0012]传输协议被封装成传输协议插拔模块,依据客户端设备的不同进行适配性调用。
[0013]通过数据专用通道的实例化实现数据专用通道的建立,数据专用通道的实例化步骤如下:
[0014]S1、初始化缓冲区;
[0015]S2、选择传输协议;
[0016]数据专用通道实例化时,选择某个传输协议,即调用该传输协议插拔模块的封装文件,并返回句柄,被数据专用通道的实例持有;
[0017]S3、选择连接器;
[0018]根据选择的传输协议,调用对应的连接器;
[0019]S4、配置参数,在数据专用通道的入口和出口之间建立连接。
[0020]所述数据专用通道中包括连接器管理模块,连接器管理模块中包括多种数据传输需要的连接器。
[0021]配置过参数的数据专用通道的实例会生成指向自身的句柄,发布客户端、订阅客户端或连接器管理模块持有该句柄。
[0022]本专利技术与现有技术相比的优点在于:
[0023]现存的通信中间件通常占用计算资源过多、实时性不够强、可移植性差等缺点导致它们很难在国防、民航、工业控制等领域进行应用。而经过精简的轻量级消息中间件虽然具备通信必备基本功能,且内存和性能开销非常低,但在现场可编程门阵列(Field Programmable Gate Array,FPGA)和数字信号处理(Digital Signal Processing,DSP)等资源受限的设备上不具备可移植性。本专利技术提出一种控制流与数据流解耦的消息服务方法,与目前
技术介绍
相比,有如下实质性改进:设计并使用数据专用通道机制,分离控制、数据流,自定义协议。代理端仅控制客户端动态建立数据专用通道进行真实的点对点数据传输,有效降低数据时延,提高实时性。然后配合这个机制将数据交换服务数据层和传输层设计为解耦,使得传输协议(载体)可依据设备的不同进行适配性替换(可插拔)。
附图说明
[0024]图1是一种控制流与数据流解耦的消息服务方法原理框图;
[0025]图2是发布/订阅者角色与数据专用通道关系图;
[0026]图3是数据专用通道管理模块实例生成原理框图;
[0027]图4是传输协议(载体)动态可插拔配置框图;
[0028]图5是本专利技术相对于传统通用架构的改进示意图。
具体实施方式
[0029]下面结合附图和具体实施例对本专利技术进行详细说明。
[0030]本专利技术以分布式数据传输和发布/订阅模型为核心特征,优化代理(Broker)中心化控制的方式,提出一种控制流与数据流解耦的消息服务方法。具体而言,发布/订阅模型通常在实现中会使用代理端作为中介,进行发布者和订阅者关系的请求、处理以及控制消息流动方向。通用架构的数据流与业务流交融,随业务流而流动。分布式部署的客户端间没有直连关系,仅与代理端相连接,这种连接方式屏蔽客户端之间的行为逻辑,使它们互不影响,其优势是极大地减少系统耦合性。
[0031]消息中间件(Message Oriented Middleware,MOM)和实时系统数据分发服务(D本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种控制流与数据流解耦的消息服务方法,其特征在于包括如下步骤:当客户端A向代理端发送发布请求,客户端B向代理端发送订阅请求时,代理端控制客户端A、B建立客户端A到客户端B的数据专用通道;客户端A与客户端B采用数据专用通道进行点对点数据传输,客户端A与客户端B之间的传输协议依据客户端设备的不同进行适配性替换;当客户端A向代理端发送取消发布请求或客户端B向代理端发送取消订阅请求时,代理端会通知客户端A和客户端B关闭客户端A到客户端B的数据专用通道。2.根据权利要求1所述的一种控制流与数据流解耦的消息服务方法,其特征在于:单向数据专用通道入口与对应的客户端建立一对一或一对多的关系,单向数据专用通道出口与对应的客户端建立一对一或一对多的关系,这由传输协议决定。3.根据权利要求1所述的一种控制流与数据流解耦的消息服务方法,其特征在于:传输协议被封装成传输协议插拔模块,依据客户端设备...

【专利技术属性】
技术研发人员:杨旭陈显舟方海高媛赵扬
申请(专利权)人:西安空间无线电技术研究所
类型:发明
国别省市:

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

1