1、信息记录材料 年 月 第 卷第 期航电系统数据发布订阅服务软件设计李 康,闫 妍,吴晓斌(航空工业西安航空计算技术研究所 陕西 西安)【摘摘要要】随着机载航电系统的集成度、复杂度的提高,为了在满足机载网络通信的实时性要求基础上提升航电系统分布式软件的可移植性和灵活性,以数据分发服务为基础,本文提出一种航电系统数据发布订阅服务软件设计方案,重点论述了软件的总体架构、用户配置数据、以数据为中心的发布 订阅通信模型、状态转换等技术点,最后通过航电系统地面仿真环境测试了软件的主要功能和性能,验证了软件设计方案的可行性,对航电系统通信中间件的设计和应用具有指导意义。【关关键键词词】航航电电系系统统;综综
2、合合核核心心处处理理机机;通通信信中中间间件件;传传输输服服务务;数数据据分分发发服服务务;发发布布 订订阅阅通通信信【中中图图分分类类号号】【文文献献标标识识码码】【文文章章编编号号】()作者简介:李康(),男,陕西宝鸡,硕士,工程师,研究方向:嵌入式通信中间件。引言目前机载航电系统已经从分立式、联合式逐步转变为以综合核心处理机(,)为核心的综合化模块化航空电子结构,网络传输介质由单一传输介质转变为多种传输介质的集成,处于不同功能单元上的分布式机载软件之间的通信关系变得越来越复杂,系统复杂度越来越高。传统的机载通信中间件大多针对某一特定类型的传输介质,例如光纤、总线等,这些传输介质可能是由多
3、个厂商提供的硬件设备,采用不同的操作系统,具有特定的数据传输标准,提供给应用软件的接口也各不相同,无法做到传输介质对应用软件的透明化,而且通信关系大多需要静态配置,严重缺乏灵活性。对象管理组织(,)制定的数据分发服务(,)标准定义了以数据为中心的发布 订阅机制,提供了一个与平台无关的数据通信模型,并 且支持丰 富的服务质 量策略(,)控制发布 订阅通信,指定所需要的数据传输的质量行为,能最大化满足用户对通信质量的需求。具有低时延、高吞吐量、松耦合等优点,主要应用在要求高性能、强实时、资源限制的关键领域。因此,本文以 为基础,结合机载分布式应用软件的实际需求,设计并实现出一种数据发布订阅服务软件
4、,并在航电系统仿真环境下对软件进行系统的功能和性能验证。总体设计如图 所示,数据发布订阅服务软件架构分为接口层、核心层、适配层。接口层向应用软件提供统一的满足未来机载能力环境(,)中间件标准 的传输服务段(,)接口,包括初始化、创建连接、删除连接、获取连接参数、发送消息、接收消息和注册回调函数,以支持应用软件以轮询和回调两种方式接收数据。核心层提供以数据为中心的发布 订阅通信,支持基图 软件架构于主题进行数据通信,并支持多种 策略,包括有效性、截止期、基于时间过滤、历史数据、资源限制、可靠性、持久化、所有权和所有权强度。此外,核心层支持自发现机制,用于发布 订阅通信时写者和读者的动态组网。操作
5、系统和网络适配分别屏蔽操作系统和网络环境的差异,向应用软件提供统一的操作系统和网络通信接口,支持常用的、以及国产天脉操作系统,支持机载常用的光纤总线、总线以及用户数据报协议(,)网络,同时支持用户自行扩展操作系统适配和网络插件。配置数据设计对机载航电系统来说,数据通信通常采用静态配置方式,即相关的配置数据在软件实际部署前已经由系统综合人员预先确定下来。数据发布订阅服务软件根据用户提供的配置数据完成发布 订阅服务初始化,如图 所示,配置数据包括传输服务配置、连接配置以及 配置。图 配置结构图传输服务配置:处于不同功能单元上的分布式应用节信息记录材料 年 月 第 卷第 期点对应一份传输服务配置,由
6、节点 唯一标识;发布 订阅服务需要对每种发布 订阅消息建立虚拟的连接,由用户指定所有需要处理的发布 订阅消息对应的连接信息,包括连接的总个数和每个连接具体的配置。连接配置:航电系统基于主题进行数据传输,每个连接处理一种基于主题的发布 订阅消息,通过主题 唯一标识,根据连接方向确定该主题为发布主题还是订阅主题;由用户确定该连接对应的消息类型、能够传输的最大消息长度,以及本条消息相关的 配置。配置:设置本条发布 订阅消息具体的 策略,包括 种具体的策略,用户根据网络带宽、可靠传输、等待时间、资源配置等进行个性化配置。发布 订阅服务设计 发布 订阅模型 标准定义了 类实体对象完成发布 订阅通信,包括
7、域参与者、发布者、订阅者、主题、数据写者和数据读者。域参与者属于某个通信域,包括若干个发布者、订阅者和主题,负责创建、删除和管理这些实体;发布者负责发送数据,并创建、删除和管理数据写者;订阅者负责接收数据,并创建、删除和管理数据读者;主题定义数据写者和数据读者相互通信时消息的数据结构,每个数据写者和数据读者必须与一个主题绑定。数据写者为应用软件提供发送接口,负责将应用数据放入发送缓冲区;数据读者为应用软件提供接收接口,负责从接收缓冲区读取数据;基于 通信,只有处于同一个域的实体才可以通过主题进行通信,不同域的实体不能通信。此外,类实体对象都具有各自的 策略,共计 种 策略。由于机载嵌入式环境下
8、的计算资源、网络带宽等限制以及具体的使用场景,对 标准进行裁剪和自主化定制:()机载嵌入式环境下不再区分通信域,所有分布式应用均默认处于一个域,可以直接通过主题进行数据传输;()主题不再作为实体对象,只作为消息的标识,且不再由主题定义消息的数据结构,由系统综合人员通过接口控制文件(,)进行定义;()将 标准规定的 类实体裁剪到 类,包括参与者、写者和读者。每个写者和读者必须与一个主题绑定。参与者与机载分布式应用一一对应,负责创建、删除和管理写者和读者;写者为应用软件提供发送接口,维护发送缓冲区,负责将应用数据放入发送缓冲区并发送主题数据;读者为应用软件提供接收接口,维护接收缓冲区,负责接收主题
9、数据并放入接收缓冲区。()将 策略裁剪到 种,且只与写者 读者绑定,每个写者 读者均需要配置自身的 策略,用来对写者和读者之间的发布 订阅通信进行控制。裁剪和自主化定制后的发布 订阅模型图如图 所示,该模型相比于 标准的发布 订阅模型具有以下优点:图 基于主题的发布 订阅模型图()将主题与 绑定,大幅度提高航电系统集成人员的可操作性,减少应用软件数据结构定义的冗余;()简化数据发送和接收涉及的数据结构,缩短 协议包头长度,减少软件自身及网络传输占用的内存;()优化发送、接收和自发现流程,减少内存拷贝次数,缩减数据发送和接收的协议处理时间,提高动态组网效率。状态转换设计数据发布订阅服务软件状态包
10、括初始化、就绪、匹配及停止 种,各状态间的转换关系如图 所示。图 软件状态转换图()系统上电,操作系统启动后,软件处于初始化状态;()根据应用软件传入的传输服务配置进行初始化,记录配置数据并申请所需的系统资源,如果初始化成功则软件处于就绪状态,此时等待远程主题上线;如果初始化失败则软件转入停止状态;()如果通过自发现完成主题发现,判断远程主题上线,则软件处于匹配状态,此时已建立数据传输通道,用户可以通过写者和读者发送和接收消息;()如果连接中断导致远程主题下线,则软件回到就绪状态,此时需要重新等待远程主题上线;()如果初始化失败或者运行过程中系统掉电或崩溃,软件停止工作,不再提供服务。发送 接
11、收过程 航电系统应用软件发送主题消息的详细流程如下:()应用软件调用初始化接口完成数据发布订阅服务初始化,并调用创建连接接口创建主题对应的写者 读者,此后参与者开始接收消息;()数据发布订阅服务软件在航电系统内通过自发现机制动态组网,完成参与者和主题的自发现;信息记录材料 年 月 第 卷第 期()应用软件调用获取连接参数接口获取连接,此时根据连接对应的主题 检索参与者的本地写者表,如果不存在该主题返回错误;如果存在该主题返回其对应的连接;()应用软件调用发送消息接口,由主题对应的写者发送消息;()编者将用户消息放入发送缓冲区,并检索远程读者表,如果存在已经建立自发现的远程读者,则通过网络向这些
12、远程读者发送用户消息,否则,忽略本条主题消息。航电系统应用软件接收主题消息的详细流程如下:()应用软件调用初始化接口完成数据发布订阅服务初始化,并调用创建连接接口创建主题对应的写者 读者,此后参与者开始接收消息;()数据发布订阅服务软件在航电系统内通过自发现机制动态组网,完成参与者和主题的自发现;()参与者收到主题消息,首先检索参与者的本地读者表,如果不存在该主题,直接忽略本条主题消息;如果存在该主题,再检索该主题的远程写者表,若存在且远程写者已上线,则放入接收缓冲区,否则,忽略本条主题消息;()应用软件调用获取连接参数接口获取连接,此时根据连接对应的主题 检索参与者的本地读者表,如果不存在该
13、主题返回错误;如果存在该主题返回其对应的连接;()应用软件调用接收消息接口,从主题对应的读者接收缓冲区读取消息。功能及性能测试数据发布订阅服务软件已经在航电系统地面仿真环境下完成系统集成和功能、性能测试。硬件环境为 的通用输入输出(,)模块,软件环境包括国产天脉、天脉 嵌入式操作系统,网络环境包括光纤通道(,)总线和 网络,测试情况如表 所示。通过以上测试结果可以看出,数据发布订阅服务软件发布 订阅功能正常,时延及吞吐量性能满足要求,且长时间运行仍能保持稳定状态,充分证明设计方案的可行性。结语本文在 的基础上,根据机载嵌入式环境限制及 表 数据发布订阅服务软件测试测试项测试用例和结果功能测试分
14、别建立一对一、一对多、多对一和多对多的发布 订阅通信,所有写者发送消息正常,所有读者接收消息正常且消息个数和内容一致。时延测试建立一对一的发布 订阅通信,写者发送 条消息,统计总发送 接收时间,计算得出单次平均发送 接收时延均在 微秒以内。吞吐量测试建立一对一的发布 订阅通信,写者连续发送 大小的消息 分钟,统计总发送 接收个数,计算得出吞吐量不低于网络吞吐量的。需求,设计了一种航电系统数据发布订阅服务软件,支持以数据为中心的基于主题的发布 订阅通信,为应用软件屏蔽操作系统和网络差异,提供统一的传输服务端接口,大大提高了机载分布式应用软件的可移植性。同时基于主题的发布 订阅服务增加了机载分布式
15、节点的网络灵活性,满足机载分布式应用的低时延、高可靠性、松耦合的要求。在下一步研究工作中,将进一步扩展支持的 策略,优化数据通信过程,同时扩展传输服务以支持其他通信模式。【参考文献】崔西宁,沈玉龙,李亚晖 综合化航空电子系统安全技术研究进展 计算机应用与软件,():苏伟 在嵌入式航电分布系统中的应用研究 成都:西南交通大学,吴洁,周雪峰,操键闻 实时数据分发服务质量在舰艇作战系统 中 的 应 用 研 究 舰 船 电 子 对 抗,():孙文俊,冯燕,张宏宇 基于 的实时信息交换平台研究 指挥信息系统与技术,():吕广喆,邸海涛,甄超,等 机载分布式异构网络通信中间件研究 航空计算技术,():曹万华,谢蓓,吴海昕,等 基于 的发布 订阅中间件设计 计算机工程,():,胡艺,王希敏 发布订阅系统软件框架的设计与实现 舰船电子工程,():,冯国良,谷青范 基于 的实时中间件的研究与设计 航空电子技术,():,杜涛涛,张庆杰,朱华勇 面向实时数据分发服务的 性能研究 微计算机信息,():
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100