CN114338268A - 一种航电系统内基于fc总线的发布/订阅式通信的方法 - Google Patents
一种航电系统内基于fc总线的发布/订阅式通信的方法 Download PDFInfo
- Publication number
- CN114338268A CN114338268A CN202111590587.2A CN202111590587A CN114338268A CN 114338268 A CN114338268 A CN 114338268A CN 202111590587 A CN202111590587 A CN 202111590587A CN 114338268 A CN114338268 A CN 114338268A
- Authority
- CN
- China
- Prior art keywords
- subscribed
- subscriber
- topic
- subscription
- topics
- 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
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
本申请属于机载嵌入式计算机领域,具体涉及一种航电系统内基于FC总线的发布/订阅式通信的方法。应用于订阅者,包括:步骤1:制定等待发布者回复时间,制定需要订阅的话题;步骤2:将没有成功订阅的话题依次向所有发布者广播;步骤3:从广播时刻为起点开始接收发布者发布的订阅者订阅成功的消息;步骤4:在等待发布者回复时间内接收到订阅者订阅成功的消息,则修改订阅表。该方法采用基于FC总线的发布/订阅的通信方式,应用和物理节点解耦合,克服了现有技术紧耦合的特点,应用更灵活,可扩展性更强。
Description
技术领域
本申请属于机载嵌入式计算机领域,具体涉及一种航电系统内基于FC总线的发布/订阅式通信的方法。
背景技术
飞机系统内数据通信则是整个航空机载信息系统的关键。数据通信主要有基于消息ID的通信方式和发布/订阅通信方式两种。以往的三代/四代机上的航电系统机载设备通信使用FC总线网络的方式主要基于消息ID和ICD,由于FC总线网络的特性导致网络内的机载设备无法使用相同的消息ID进行通信,使得在杭电系统的软件开发时需要提前对软件其部署的物理节点进行耦合,使其无法随意部署。并且由于机载应用需提前使用确定的消息ID进行通信,导致航电系统特有的重构、扩展性和移植性实现起来非常困难。
发明内容
发明目的:提出一种航电系统内基于FC总线的发布/订阅式通信的方法,以解决航电系统特有的重构、扩展性和移植性实现起来非常困难的问题。
技术方案:
一种航电系统内基于FC总线的发布/订阅式通信的方法,应用于订阅者,包括:
步骤1:制定等待发布者回复时间,制定需要订阅的话题;
步骤2:将没有成功订阅的话题依次向所有发布者广播;
步骤3:从广播时刻为起点开始接收发布者发布的订阅者订阅成功的消息;
步骤4:在等待发布者回复时间内接收到订阅者订阅成功的消息,则修改订阅表。
进一步地,还包括:步骤5:在等待发布者回复时间内没有接收到订阅者订阅成功的消息,则返回步骤2。
进一步地,步骤4:还包括:接收到订阅者订阅成功的消息之后,按照待订阅话题表中的周期接收发布者发送的话题;
若多个周期内均没有接收到发布者发送的话题,则订阅者将本地的待订阅话题表当前话题更改为未成功订阅状态,同时返回步骤2。
进一步地,每个订阅者的节点均包括待订阅话题表,待订阅话题表中包含物理节点号、话题、是否成功订阅、通讯号。
一种航电系统内基于FC总线的发布/订阅式通信的方法,应用于发布者,包括:
周期性地接收订阅者广播的没有成功订阅的话题;
在订阅话题表中未发现订阅者广播的没有成功订阅的话题时订阅失败,不回复信息给发布者;若在订阅话题表中发现订阅者广播的没有成功订阅的话题时,则将订阅者的信息以及该话题加入本地被订阅表,并通知订阅者订阅成功。
进一步地,若在订阅话题表中发现订阅者广播的没有成功订阅的话题时,还包括:
发布者根据被订阅表按照事先设定的周期发布相应话题。
进一步地,本地被订阅表包括应用号、物理节点号、话题、通讯号、发布周期。
进一步地,订阅话题表包括:应用号、话题、话题号、发布周期。
有益效果:
第一,由于本发明采用基于FC总线的发布/订阅式通信的方法,应用和物理节点解耦合,克服了现有技术紧耦合的特点,应用更灵活,可扩展性更强。
第二,由于本发明方法中应用和物理节点解耦合,增加了航电系统进行应用重构的能力,使得系统的可靠性和可用性大大增加。
第三,与传统的发布/订阅式通信相比,本发明不存在显式发布的过程,采用静态发布。因此本发明实现更加简便,各节点之间进行话题通信的初始化速度更快,实时性更强。
附图说明
图1为系统各节点发布/订阅通信流程图;
图2为系统发布/订阅通信示意图;
图3为发布者与订阅者的通信流程图。
具体实施方式
本发明提出了一种新的基于发布/订阅的通信方法。该通信方式从以前基于消息ID和ICD的方式更改为基于话题的通信方式。本文中通过飞机内连接在FC总线上的FC节点静态的话题发布以及动态的话题订阅,来实现发布/订阅式的通信,使用该通信方式后使得应用软件和物理节点完全解耦和,应用软件的开发和部署不再关心具体的物理节点,使得系统具有更好的重构、扩展性和移植性。
如图1至3,一种航电系统内基于FC总线的发布/订阅式通信的方法,该方法采用基于FC总线的发布/订阅式的通信方法,且不存在显式发布的过程,所述方法采取以下步骤:
(一)订阅者根据待订阅话题表向其他节点广播需要订阅的话题,该步骤可以细分为以下四步:
1)订阅者制定等待发布者回复时间;
2)订阅者制定需要订阅的话题;
3)订阅者将没有成功订阅的话题依次向所有发布者广播;
4)订阅者从广播时刻为起点开始接收发布者发布的订阅者订阅成功的消息。
(二)发布者根据被订阅信息对订阅者回复是否订阅成功,该步骤可以细分为以下两步:
1)周期性地接收订阅者广播的没有成功订阅的话题;
2)在订阅话题表中未发现订阅者广播的没有成功订阅的话题时订阅失败,不回复信息给发布者;若在订阅话题表中发现订阅者广播的没有成功订阅的话题时,则将订阅者的信息以及该话题加入本地被订阅表,并通知订阅者订阅成功。
(三)订阅者在等待发布者回复时间内没有接收到订阅者订阅成功的消息,则返回步骤(一)中重新将没有成功订阅的话题依次向所有发布者广播;若接收到订阅者订阅成功的消息之后,则修改订阅表,并按照待订阅话题表中的周期接收发布者发送的话题。若多个周期内均没有接收到发布者发送的话题,则订阅者将本地的待订阅话题表当前话题更改为未成功订阅状态,同时返回步骤(一)中重新将没有成功订阅的话题依次向所有发布者广播。
(四)发布者根据被订阅表按照事先设定的周期发布相应话题。
下面结合附图和实施例对本发明作进一步描述。
步骤1,订阅者广播需要订阅的话题。
第1步,订阅者制定等待发布者回复订阅成功信息的时间。
第2步,订阅者制定需要订阅的话题,如表1所示。表1表明03号应用需要订阅“风速”和“湿度”两个话题。“00”表示这两个话题还没有成功订阅,因此通讯号为缺省值“000000”。
表1待订阅话题表
第3步,订阅者将没有成功订阅的话题依次向所有发布者广播,广播内容包含待订阅话题和本地物理节点号。
第4步,订阅者从广播时刻为起点开始接收发布者发布的订阅者订阅成功的消息。
步骤2,发布者根据被订阅信息对订阅者回复是否订阅成功。
第1步,发布者检查是否收到订阅者发来的订阅话题消息。若没有则循环接收,若收到则进入下一步骤。
第2步,发布者检查订阅话题表,订阅话题表内是所有发布者可以提供的全部话题,如表2所示。表2为发布者能够提供的全部话题以及话题号,其中话题号是唯一的,这些话题会根据制定的发布周期进行发布。在订阅话题表中未发现订阅者广播的没有成功订阅的话题时订阅失败,不回复信息给发布者;若在订阅话题表中发现订阅者广播的没有成功订阅的话题时,则进入下一步骤。
表2订阅话题表
第3步,发布者将订阅者的信息以及订阅者发布的订阅话题加入本地被订阅表,如表3所示。表中应用号即接收到的订阅者应用编号,物理节点号即应用运行的物理节点标号,通讯号为本应用作为发布者时需要传输的话题号以及相应的作为订阅者的应用号。比如“010301”和“010901”即为由01号应用以50ms为周期分别发送给02号应用和03号应用的第01个话题。
表3本地被订阅表
第4步,发布者通知订阅者成功订阅,通知消息包含话题以及通讯号。
步骤3,订阅者检查话题是否成功订阅。
第1步,订阅者在等待发布者回复时间内没有接收到订阅者订阅成功的消息,则进入第2步,若接收到订阅者订阅成功的消息之后,则进入第3步。
第2步,返回步骤1中重新将没有成功订阅的话题依次向所有发布者广播。
第3步,修改待订阅话题表,并按照待订阅话题表中的周期接收发布者发送的话题,修改后如表4所示。根据接收到的订阅成功回复消息,物理节点号更新为接收到消息所发送的物理节点信息,表1中“风速”话题是否成功订阅被修改为“01”,通讯号也被更新为对应的“010301”。
表4待订阅话题表
第4步,若多个周期内均没有接收到发布者发送的话题,则订阅者将本地的待订阅话题表当前话题更改为未成功订阅状态,同时返回步骤1中重新将没有成功订阅的话题依次向所有发布者广播。
步骤4,发布者根据被订阅表按照事先设定的周期发布相应话题,如图3所示。
第1步,发布者根据表3被订阅表信息按照表内发布周期使用通讯号进行发送。即该发布者使用消息号010301、010302、010901等依次发送被订阅的话题。
第2步,订阅者根据本地待订阅话题表中成功订阅话题的通讯号进行话题的接收。即订阅者(03号应用)查询表4中是否订阅成功标志为“01”的话题使用填写的通讯号进行话题接收。当话题在设置的5次发布周期内均未收到该话题时,该订阅者则将是否成功订阅标志更改为0即未成功订阅状态。
Claims (8)
1.一种航电系统内基于FC总线的发布/订阅式通信的方法,其特征在于,应用于订阅者,包括:
步骤1:制定等待发布者回复时间,制定需要订阅的话题;
步骤2:将没有成功订阅的话题依次向所有发布者广播;
步骤3:从广播时刻为起点开始接收发布者发布的订阅者订阅成功的消息;
步骤4:在等待发布者回复时间内接收到订阅者订阅成功的消息,则修改订阅表。
2.根据权利要求1所述的方法,其特征在于,还包括:步骤5:在等待发布者回复时间内没有接收到订阅者订阅成功的消息,则返回步骤2。
3.根据权利要求2所述的方法,其特征在于,步骤4:还包括:接收到订阅者订阅成功的消息之后,按照待订阅话题表中的周期接收发布者发送的话题;
若多个周期内均没有接收到发布者发送的话题,则订阅者将本地的待订阅话题表当前话题更改为未成功订阅状态,同时返回步骤2。
4.根据权利要求2所述的方法,其特征在于,每个订阅者的节点均包括待订阅话题表,待订阅话题表中包含物理节点号、话题、是否成功订阅、通讯号。
5.一种航电系统内基于FC总线的发布/订阅式通信的方法,其特征在于,应用于发布者,包括:
周期性地接收订阅者广播的没有成功订阅的话题;
在订阅话题表中未发现订阅者广播的没有成功订阅的话题时订阅失败,不回复信息给发布者;若在订阅话题表中发现订阅者广播的没有成功订阅的话题时,则将订阅者的信息以及该话题加入本地被订阅表,并通知订阅者订阅成功。
6.根据权利要求5所述的方法,其特征在于,若在订阅话题表中发现订阅者广播的没有成功订阅的话题时,还包括:
发布者根据被订阅表按照事先设定的周期发布相应话题。
7.根据权利要求5所述的方法,其特征在于,本地被订阅表包括应用号、物理节点号、话题、通讯号、发布周期。
8.根据权利要求5所述的方法,其特征在于,订阅话题表包括:应用号、话题、话题号、发布周期。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111590587.2A CN114338268A (zh) | 2021-12-23 | 2021-12-23 | 一种航电系统内基于fc总线的发布/订阅式通信的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111590587.2A CN114338268A (zh) | 2021-12-23 | 2021-12-23 | 一种航电系统内基于fc总线的发布/订阅式通信的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114338268A true CN114338268A (zh) | 2022-04-12 |
Family
ID=81054527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111590587.2A Pending CN114338268A (zh) | 2021-12-23 | 2021-12-23 | 一种航电系统内基于fc总线的发布/订阅式通信的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114338268A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514609A (zh) * | 2022-08-31 | 2022-12-23 | 北京控制工程研究所 | 一种Socket链路受限的发布订阅系统及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468142A (zh) * | 2014-10-30 | 2015-03-25 | 北京海尔广科数字技术有限公司 | 一种订阅通知的方法和装置 |
CN111371596A (zh) * | 2020-02-25 | 2020-07-03 | 中国航空无线电电子研究所 | 基于fc-ae总线的数据分发服务软件 |
US10833881B1 (en) * | 2017-11-06 | 2020-11-10 | Amazon Technologies, Inc. | Distributing publication messages to devices |
-
2021
- 2021-12-23 CN CN202111590587.2A patent/CN114338268A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468142A (zh) * | 2014-10-30 | 2015-03-25 | 北京海尔广科数字技术有限公司 | 一种订阅通知的方法和装置 |
US10833881B1 (en) * | 2017-11-06 | 2020-11-10 | Amazon Technologies, Inc. | Distributing publication messages to devices |
CN111371596A (zh) * | 2020-02-25 | 2020-07-03 | 中国航空无线电电子研究所 | 基于fc-ae总线的数据分发服务软件 |
Non-Patent Citations (1)
Title |
---|
张彤 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514609A (zh) * | 2022-08-31 | 2022-12-23 | 北京控制工程研究所 | 一种Socket链路受限的发布订阅系统及方法 |
CN115514609B (zh) * | 2022-08-31 | 2024-05-03 | 北京控制工程研究所 | 一种Socket链路受限的发布订阅系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101668031B (zh) | 一种消息处理方法及系统 | |
WO2004036382A2 (en) | Method and system to communicate messages in a computer network | |
CN109067910A (zh) | 一种消息拉取的方法及装置 | |
CN110278256B (zh) | 区块链节点接入上链方法、相关设备及系统 | |
CN101383839A (zh) | 基于数据服务器的数据分发系统及其实现方法 | |
CN114338268A (zh) | 一种航电系统内基于fc总线的发布/订阅式通信的方法 | |
CN113391979A (zh) | 监控数据展示的处理方法、设备、系统及存储介质 | |
CN112751937A (zh) | 分布式边缘智能蓝牙Mesh网关系统及实现方法 | |
CN103560840A (zh) | 一种终端状态监测的方法、设备和系统 | |
CN101389088A (zh) | 多媒体消息群发方法及群发请求方法、多媒体消息管理平台设备 | |
CN109818883B (zh) | 基于指定源组播的分布式发布订阅传输方法 | |
CN114978922B (zh) | 一种动态拓扑数据采集方法 | |
CN111124716B (zh) | 一种无人机中多优先级队列消息传输方法 | |
CN109510748B (zh) | 节点及节点交互方法和系统 | |
CN102843247A (zh) | 一种网元消息并发处理方法及系统 | |
CN108230018A (zh) | 广告推送方法、装置、服务器及存储介质 | |
CN101465818A (zh) | 广播消息发送方法、服务器和系统 | |
CN114650291A (zh) | 订阅信息处理方法及装置、服务节点、存储介质 | |
CN108390815A (zh) | 广告推送方法、装置、服务器及存储介质 | |
CN111104231A (zh) | 多层级环境下的消息收发方法、收发装置、服务器及系统 | |
CN108063803B (zh) | 基于分布式订阅发布消息系统的消息管理方法及系统 | |
CN114221925B (zh) | 消息推送方法、装置、电子设备及存储介质 | |
CN105743772A (zh) | 一种消息处理的方法及系统 | |
US7149215B1 (en) | Technique for multicasting receiver membership reports | |
CN115834691B (zh) | 分布式发布订阅方法、装置、电子设备及存储介质 |
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 |