1.一种软件化雷达通用通信中间件,其特征在于,包括发布/订阅接口层、实时信息交换层和传输控制层;
发布/订阅接口层位于通信中间件的最上层,是服务化软件应用层与通信中间件层交互的入口,用于提供一套标准开放的函数接口供用户调用;发布/订阅接口层接收用户调用的函数接口传入的参数实现发布/订阅的通信模式;所述函数接口包括通信初始化接口、实际数据的接收和发送接口;通信初始化接口供服务化应用软件组件调用完成数据传输前的初始化工作;实际数据的接收和发送接口用于完成实际数据的收发工作;
实时信息交换层位于发布/订阅接口层和传输控制层之间,用于完成信息的解析和交换,实现服务化应用软件组件所在节点信息的注册、信息存储、新节点发现和通信节点的连接,建立信息过滤机制;通过调用发布/订阅层提供的注册接口,注册新的服务组件所在的节点信息;并且接收用户通过实际数据的接收和发送接口传输数据信息,支持信息过滤机制实现发送方和订阅方的信息匹配,使得发送方和订阅方能够实现端到端进行数据传输;
传输控制层位于实时信息交换层之下操作系统之上,支持多种通信方式,可以根据用户的需求对待传输的数据按其特性选择不同的数据传输协议进行封装,为实时信息交换层提供了标准通用的通信链路接口;
实时信息交换层还用于判断通信域中所有节点是否正常工作,此过程分为两种,一种是节点的正常退出,另一种是节点的偶然失效;
1)节点的偶然失效,首先开启处理判断节点是否正常工作的线程,并且初始化相关的数据,其中一个参数为T表示周期,也就是说每隔T秒每个节点向所节点广播一个字节的数据证明自己还“存活”,其它节点将在自己的存活信息库中查找是否有此节点的存活信息,如果有此节点的存活信息则将此信息插入到节点存活信息库中,如果没有则主动向此节点发送一个字节的询问信息,在等待T/2秒,如果收到了此节点的存活信息,则将此节点的存活信息插入到节点存活信息库中,如果没有此节点的存活信息,继续主动向此节点发送询问信息,在等待T/4秒,如果收到了,则将此节点的存活信息插入到节点的存活信息库中,如果没有则继续询问,如此往复,每询问一次周期减半,询问三次后如果依然没有此节点的存活信息则证明此节点已经失效,接着开启通知线程,在集中式的模式中给其它节点广播该此节点已经失效的信息,其余节点将终止与此节点的信息交换,并删除与此节点相关的信息,最后其余节点将重新组成一个通信域继续工作;在分布式的模式中每个节点将删除此节点的相关信息,并断开与此节点的发布和订阅过程;
2)节点的自动退出,当节点自动退出前,将广播一个自动退出的信息,当通信域中的其余节点接收到此节点的自动退出消息时,将回复一个收到的信息,此节点收到此信息之后将删除与其他节点的交换的信息,如果没有收到会给此节点发送一个询问请求。
2.如权利要求1所述中间件,其特征在于,实时信息交换层包括注册信息库、存活判断信息库、发布数据库、订阅数据库、订阅成功信息库、订阅失败信息库以及发送接收数据的存储库;
注册信息库用于,负责接收并存储新加入节点的注册信息以及已注册节点开机时的信息;
存活判断信息库用于,负责检查通信域中各节点的存活状况;
发布数据库用于,负责存储各发布节点的匹配信息;
订阅数据库用于,负责存储各订阅节点的匹配信息;
订阅成功信息库用于,存储订阅方订阅匹配成功的信息;
订阅失败信息库用于,存储订阅方订阅失匹配失败的信息;
发送接收数据的存储库用于,存储发布方和订阅方想要发送和接收的数据。
3.如权利要求2所述中间件,其特征在于,注册信息库还用于,接收并存储新加入节点的注册信息之后,向节点返回一个成功注册的信息以及一个唯一的端口号;存活判断信息库具体通过端口号检查通信域中各节点的存活状况。
4.如权利要求1所述中间件,其特征在于,实时信息交换层采用集中式模式,在一个通信域中仅有一个实时信息交换层。
5.如权利要求1所述中间件,其特征在于,实时信息交换层采用分布式模式,在一通信域当中每个节点均有一个实时信息交换层。
6.如权利要求1所述中间件,其特征在于,传输控制层支持的通信方式包括:传输控制协议TCP、用户数据报协议UDP、高速互连RapidI/O、直接存储器访问DMA、共享内存以及进程间通信。