一种光纤通道消息传输方法技术

技术编号:21803042 阅读:66 留言:0更新日期:2019-08-07 11:31
本发明专利技术属于航电系统机载网络领域,提出了一种光纤通道消息传输方法。该方法应用于发送端时包括:调用光纤通道发送数据API接口;从光纤通道发送数据API接口提取应用信息和应用数据;依据应用信息获取光纤通道发送通信信息;组装应用信息和应用数据为光纤通道数据;依据光纤通道发送通信信息和光纤通道数据,组装光纤通道数据帧;发送光纤通道数据帧。

An Optical Fiber Channel Message Transmission Method

【技术实现步骤摘要】
一种光纤通道消息传输方法
本专利技术属于航电系统机载网络领域,涉及一种FC(光纤通道,FibreChannel,简称FC)消息传输独立性的实现方法。通过本专利技术可以实现FC消息传输的独立性,即实现应用程序的消息ID与FC通信消息ID的相互独立,应用程序无需关注FC网络拓扑结构,采用何种配置通信消息ID进行通信,能有效避免因应用程序消息ID变化影响到FC网络拓扑结构的变化,进而影响到FC相关的升级与维护,降低应用程序与FC消息传输的耦合性,节约FC产品的维护成本及技术状态管理。
技术介绍
现有型号飞机的航电系统机载通信网络采用FC网络,航电系统子系统间通过FC实现消息通信与交互。现有飞机型号项目,系统统一规划了子系统间通信的应用消息ID。FC网络需要依据应用消息ID构建网络拓扑,并生成相应的FC网络配置数据。子系统使用FC进行消息发送时,调用FC提供的API接口函数,并将子系统应用消息ID作为函数输入参数传递到FC。FC,首先依据输入参数消息ID,查找本地FC配置表,获取相应的通信信息,其次,在将用户需要发送的消息发送到FC网络。子系统实现FC进行消息接收时,调用FC提供的API接口函数,并将子系统发送方的应用消息ID作为函数的输入参数传递到FC。FC,首先依据输入参数消息ID,查找本地FC配置表,获取相应的通信信息,其次,在到指定的队列上接收消息。依据现有子系统应用与FC消息通信方法存在如下缺点:(1)子系统应用程序与FC网络拓扑及配置数据耦合性比较严重,与软件设计原则“高内聚低耦合”不符。FC网络拓扑及配置数据与系统应用消息ID关联。系统应用消息ID发生变化,则影响到FC网络拓扑及配置数据的变化,将导致FC网络的升级。(2)不利于型号项目技术状态管理及维护,系统规划的应用消息ID与FC网络拓扑及配置数据需要一一对应。当系统应用消息ID与FC网络拓扑及配置数据不一致时,影响到子系统间通信,不利于现场技术状态管理及维护。
技术实现思路
专利技术目的:针对上述FC消息传输中存在的缺点,本专利技术提出了一种基于光纤通道的消息传输独立性实现方法。本专利技术使得系统应用消息传输与FC网络拓扑结构及网络配置,消息传输相互独立,同时也能使系统按照小队列机制实现按照应用消息ID进行接收,即系统应用消息规划及规模等变更,与FC网络拓扑结构及网络配置,消息如何传输无关。FC网络拓扑结构及网络配置变化也不会影响到应用消息规划及规模变更,只需关注FC网络本身传输的问题。本专利技术能有效避免因应用程序消息ID变化影响到FC网络拓扑结构的变化,进而影响到FC相关的升级与维护,降低应用程序与FC消息传输的耦合性,节约FC产品的维护成本,降低FC产品的技术状态管理。技术方案:第一方面,提出了一种光纤通道消息传输方法,应用于发送端,其特征在于,所述方法包括:调用光纤通道发送数据API接口;从光纤通道发送数据API接口提取应用信息和应用数据;依据应用信息获取光纤通道发送通信信息;组装应用信息和应用数据为光纤通道数据;依据光纤通道发送通信信息和光纤通道数据,组装光纤通道数据帧;发送光纤通道数据帧。第二方面,提出了一种光纤通道消息传输方法,应用于发送端,其特征在于,所述方法包括:创建光纤通道消息队列;接收光纤通道数据帧;将光纤通道数据帧放入光纤通道消息队列;从光纤通道消息队列接收应用数据。可选地,创建光纤通道消息队列包括:创建消息队列列表;若没有光纤通道数据帧到达,则继续等待,否则,获取光纤通道数据帧的逻辑编号、缓冲区地址和应用消息ID;依据应用消息ID查询消息队列列表来获取相应的消息队列,若查找到相应的消息队列则将光纤通道数据帧的逻辑编号和缓冲区地址放入光纤通道消息队列;若没有查找到相应的消息队列,则依据应用消息ID创建相应的消息队列并将其增加在消息队列列表中,以及将光纤通道数据帧的逻辑编号和缓冲区地址放入光纤通道消息队列。可选地,查询消息队列列表来获取相应的消息队列是指查找应用信息的消息ID与消息队列列表中队列关键字相等的消息队列。可选地,增加消息队列到消息队列列表中是指从消息队列表的表尾增加消息队列,形成单链表。可选地,消息队列执行入队列操作是指将队列元素逻辑编号和缓冲区地址放到相应的消息队列。可选地,在消息队列执行入队列操作时若消息为采样消息,则当队列满时,采用覆盖方式;若消息为队列消息,则当队列满时,采用丢弃方式。可选地,从光纤通道消息队列接收应用数据包括:调用光纤通道接收数据API接口;从光纤通道接收数据API接口获取应用消息ID;依据应用消息ID查询消息队列列表,若查找成功,则从光纤通道消息队列中提取光纤通道数据帧的逻辑编号、缓冲区地址,依据逻辑编号、缓冲区地址解析光纤通道数据帧,接收应用数据。若未查找到相应的消息队列,则返回接收结果。有益效果:本专利技术提出的FC消息发送机制,FC消息小队列创建机制和FC消息小队列接收机制是一个有机整体,缺一不可。发送消息应用信息格式变化,接收消息应用信息格式也需要随之变化。FC消息小队列创建机制发生变化时,FC消息小队列接收机制也需要随之变化。本专利技术使得系统应用消息传输与FC网络拓扑结构及网络配置,消息传输相互独立,同时也能使系统按照小队列机制实现按照应用消息ID进行接收,即系统应用消息规划及规模等变更,与FC网络拓扑结构及网络配置,消息如何传输无关。FC网络拓扑结构及网络配置变化也不会影响到应用消息规划及规模变更,只需关注FC网络本身传输的问题。本专利技术能有效避免因应用程序消息ID变化影响到FC网络拓扑结构的变化,进而影响到FC相关的升级与维护,降低应用程序与FC消息传输的耦合性,节约FC产品的维护成本,降低FC产品的技术状态管理。附图说明图1是FC消息发送机制。图2是FC消息小队列创建机制。图3是FC消息小队列接收机制。具体实施方式为了更好地理解本专利技术,下面结合附图和具体实施例对本专利技术作进一步地描述。如图1所示,本专利技术的FC消息发送机制如下:步骤100,应用调用FC发送数据API接口发送应用数据;步骤101,提取应用信息和应用数据;步骤102,依据应用信息获取FC发送通信信息;步骤103,组装应用信息和应用数据为FC数据;步骤104,依据FC发送通信信息,组装FC数据帧;步骤105,发送FC数据帧。所述步骤100中,FC发送数据API接口提供给子系统应用,用于将应用数据发送到指定的子系统。FC发送数据API接口包括返回类型,函数明,输入参数等信息。其中,返回类型用于表明该接口执行结果,值为0表示执行成功,非0,表示执行失败。输入参数包括消息ID,消息类型,通信类型,通信地址,待发送消息的缓冲区地址,待发送消息的长度等。消息类型包括采样消息和队列消息。采样消息要求接收队列大小为2,当队列满时,采用覆盖方式。队列消息要求接收队列大小大于2,当队列满时,采用丢弃方式。通信类型包括紧急消息,事件消息和流消息。通信地址包括源通信地址,目的通信地址。FC发送数据API接口具体实例如表1所示。表1FC发送数据API接口属性表所述步骤101中,提取应用信息是指将API接口部分参数信息组装为应用信息。应用信息包括消息ID,消息类型,通信类型,通信地址等。所述步骤101中,提取应用数据是指获取API接口参数信息中的消息信息本文档来自技高网
...

【技术保护点】
1.一种光纤通道消息传输方法,应用于发送端,其特征在于,所述方法包括:调用光纤通道发送数据API接口;从光纤通道发送数据API接口提取应用信息和应用数据;依据应用信息获取光纤通道发送通信信息;组装应用信息和应用数据为光纤通道数据;依据光纤通道发送通信信息和光纤通道数据,组装光纤通道数据帧;发送光纤通道数据帧。

【技术特征摘要】
1.一种光纤通道消息传输方法,应用于发送端,其特征在于,所述方法包括:调用光纤通道发送数据API接口;从光纤通道发送数据API接口提取应用信息和应用数据;依据应用信息获取光纤通道发送通信信息;组装应用信息和应用数据为光纤通道数据;依据光纤通道发送通信信息和光纤通道数据,组装光纤通道数据帧;发送光纤通道数据帧。2.一种光纤通道消息传输方法,应用于接收端,其特征在于,所述方法包括:创建光纤通道消息队列;接收光纤通道数据帧;将光纤通道数据帧放入光纤通道消息队列;从光纤通道消息队列接收应用数据。3.根据权利要求2所述的光纤通道消息传输方法,其特征在于,创建光纤通道消息队列包括:创建消息队列列表;若没有光纤通道数据帧到达,则继续等待,否则,获取光纤通道数据帧的逻辑编号、缓冲区地址和应用消息ID;依据应用消息ID查询消息队列列表来获取相应的消息队列,若查找到相应的消息队列则将光纤通道数据帧的逻辑编号和缓冲区地址放入光纤通道消息队列;若没有查找到相应的消息队列,则依据应用消息ID创建相应的消息队列并将其增加在消息队列列表中,以及将光纤通道数据帧的逻辑编号和缓冲区地址放入光纤通道消息队列。...

【专利技术属性】
技术研发人员:杜建华曾晓东李礼陈长胜王晓华张成
申请(专利权)人:中国航空工业集团公司西安航空计算技术研究所
类型:发明
国别省市:陕西,61

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

1