基于发布/订阅机制的指挥显示信息分发系统设计

2015-07-23 03:07沈祉怡孙艳英
电子测试 2015年2期
关键词:发布者靶场数据模型

沈祉怡,孙艳英

(92941部队96分队,辽宁葫芦岛, 125001)

0 引言

随着海上靶场参试的装备与日俱增,指控信息的内容不断丰富,传统的指挥信息转发软 件配置复杂,维护困难。这就需要一种操作简便,并且能够对海量的试验信息进行灵活、高 效转发的指挥显示信息分发系统,以满足现阶段靶场需求。对于试验指挥员和各设备操作手, 不仅期望能够快速、准确的获取所需信息,还要及时的将信息传递出去。在不同的试验任务 中,参试的指挥部位不同,对试验任务相关的信息需求也不同。这就需要一种方便、灵活、 可扩展的交互机制和通信模型来适应靶场试验任务中装设备动态变化和松耦合的特点。发布 /订阅机制具有异步以及松散耦合的特点,可以使信息的发布者和订阅者在时间、空间和控 制流等方面完全解耦,适应目前靶场外场装设备站点和分指挥所动态多变、有线/无线的指 挥显示信息分发系统的需求。综上,本文针对现阶段靶场试验中的问题,如网络带宽不够, 连接不稳,动态可扩展性差等,结合未来靶场需求进行探讨,设计灵活、动态、可扩展、易 操作的指显信息分发系统。

1 发布/订阅机制

1.1 发布/订阅模型

发布/订阅是一种消息范式,主要包括发布者,是信息的生产者;订阅者,是信息的消费者;消息代理,是发布者和订购者的纽带。在信息的生产者和消费者之间所交互的信息称 为事件或者消息。发布者发布不同类别的消息,订阅者对一种或多种消息表达兴趣,接收感兴趣的消息。消息代理根据订阅信息将发布的消息以异步的通知形式发送给相应的订阅者。发布/订阅模型结构如图l所示。

图l发布/订阅模型结构

1.2 发布/订阅系统特点

发布/订阅系统主要具备交互性和解稿性的特点。

(1)交互性:发布/订阅系统具有很强的交互性。订阅者提出订阅需求,而发布者通过将事件 发送给分发代理满足订阅者的需求。

(2)解耦性:解耦性主要表现在空间解耦—消息的发布者和订阅者不必互相知道彼此。时间解 耦一消息的发布和订阅条件不需要同时产生。控制流解耦一事件的发布和订阅不是在发布者或者订阅者的主控流程里发生。

2 指挥显示信息分发系统设计

2.1 需求分析

靶场在进行试验任务过程中,各测控站点、分指挥所和指控中心都需要发送和获取试验 任务相关的信息。现阶段靶场试验任务信息的传输主要是各测控设备将数据发送到中心,由 中心处理后再向外部的测控站点和分指挥所以及中心内部进行发布。不仅传输和处理过程复杂,而且各外部测控设备之间共享能力差,很难满足试验任务中个性化的需求。

面对日益增长的指挥显示信息,指显信息分发系统应能够及时的获取相关任务信息,并能够快速转发给各站位;各站位不需要获取所有的指显信息,而是按需满足个性化的定制, 以便有效的利用网络带宽资源;并且针对任务情况可以随时动态加入新的测控设备或分指挥 所,也可以随时与该系统断开,具备动态可扩展功能,更好地满足未来靶场转型需求。

2.2 基本架构

指挥显示信息分发系统为实现靶场试验信息的高度共享,适应以网络为中心的未来靶场 需求,利用订阅/发布机制的松耦合、交互性、异步性的特点构建了指挥显示信息分发系统架构。该系统的基本框架如图2所示。

图2 指挥显示信息分发系统基本框架

该基本框架主要通过试验IP网、卫星等通信方式在终端设备与指显信息分发服务器之 间架构网络桥梁。终端设备用户将自己获取的指显信息通过指显信息分发接口的转换发布到 指显信息分发服务器上,然后经过一系列的全局数据的处理,将信息发布到发布列表中,就 可以在整个系统中共享指显信息。用户订购信息,首先要发送订阅需求,在信息管理节点处 进行注册后,发送订阅请求,在注册表中查找匹配信息进行发送信息。

2.3 指挥显示信息分发系统的工作流程

指挥显示信息分发系统的工作流程如图3所示。在整个系统中,信息的发布者,通过指 挥显示接口将任务信息发送到指显信息分发系统中,创建相应的发布主题并将主题和服务质 量参数(QoS参数)提交给数据写入者,并在信息管理节点处将发布的信息进行注册便于访 问和查询信息。信息的订阅者,通过指挥显示分发系统接口将订阅需求发送到指显信息分发 系统中,创建相应的订阅主题和QoS要求,通过数据订阅者向系统提交请求,等待接收数据,并在信息管理节点处将订阅的信息进行注册。在信息管理节点处创建订阅和发布的索引表里,通过信息匹配找到相应的发布者和订购者,并将两者建立连接,将实时的数据发送给订阅者,同时将匹配结果发布到发布节点上。

3 关键技术

3.1 数据模型

数据模型是发布/订阅系统的基础,其他技术都是依赖于数据模型进行研究的。通常,发布/订阅系统的数据模型主要由事件模型和订阅模型组成。用来描述发布者所提供的事件 被称为事件模型;用来描述订阅者提交的订阅条件被称为订阅模型。目前发布/订阅系统所 采用的数据模型主要是基于Map的数据模型和基于XML的数据模型等。

在基于Map的数据模型中,通常把事件描述成属性名和属性值的形式,它把时间表述成多个属性,每个属性可以对应一个或多个值,既一个“属性=值”的集合,而这个集合就叫做一个Map。对于订阅者提出的订阅条件,一般是由各个属性的“与”运算组成,订阅条件可能只涉及事件的一个属性,也可能涉及到多个属性。

在基于XML的数据模型中,每个事件被描述成为一个XML文档,而订阅条件一般被描述成为一个XPath表达式,其中既包括对XML文档结构的约束,又包括对某些元素和属性的约束。虽然XML具有很强的表达能力,但是订阅者必须预先知道被发布的XML文档所遵从的XMLSchema,才能根据该Schema定义出相应的订阅条件。

在本系统中,拟采用基于Map的数据模型。把事件描述成属性名-属性值的二元组形式; 对于订阅条件,通常用属性名,关系操作符,属性值三元组来表示。

3.2 匹配技术

在发布/订阅系统中,事件实时更新,订阅需求不断发送,如何快速、高效、准确的进行匹配是匹配算法需要解决的问题。常用的匹配方法有暴力法、匹配树法和多级索引法等。

本系统设计在多级索引法的基础上进行调整改进。所有订阅条件被建立成一张多级索 引表,其中事件的主题是一级索引,关系操作符是二级索引,事件的属性名是三级索引,属 性值是四级索引。索引表的建立过程:对于新发布的订阅条件,首先,在一级索引处进行主题区分,找到对应主题后进入下一索引;其次,在二级索引中查找符合条件的关系操作符, 然后进入第二级索引;再次,到三级索引中查找订阅条件的属性名,匹配后进入第四级索引; 最后,在四级索引中找到满足条件的属性值后,找到符合条件的事件,结束索引。

3.3 路由协议

在发布/订阅系统中,一般由分布在不同地点的多台服务器作为事件代理,并由这些事 件代理构成一个网络系统。为保障信息传输顺利进行,路由协议负责为分发服务器选择合适 的路径,将事件从发布者高效、可靠地传送给订阅者,并使分发代理节点可以灵活配置、动 态的扩展。所以,路由协议对整个系统的效率和可靠程度起着至关重要的作用。常见的发布 /订阅系统的路由算法主要包括生成树算法、逆向路径算法等。

生成树算法中,所有事件代理组成树型结构。当某事件代理收到订阅者发来的订阅请求 时,订阅消息由当前节点逐级向根节点发送,并利用过滤条件的覆盖关系对消息转发进行优 化。但是,由于处于上层的节点保存其子节点所有的订阅信息,所以越是上层的节点保存的 信息就越多,负担也就越重,各个节点就会出现负载不均现象。

逆向路径算法中,订阅消息的传播采用“基于源转发”广播算法,事件消息的传播采用 “逆向路径转发”广播算法。每个事件代理都预先知道一棵以自己为根的生成树。订阅者将 订阅消息发送给它的事件代理,然后事件代理将订阅的事件按这棵生成树转发给其它各事件 代理,并利用过滤条件的覆盖关系对转发的消息进行优化。当每个事件代理收到其客户发布 的事件时,该事件即按照各订阅消息的逆向路径被转发到其它事件代理。这种路由协议的优 点在于各事件代理的负载较为均衡。它的缺点在于,网络中的每个节点都同时处在多棵事件 分发树之中,其中包含的路由信息难以被其他节点所替代。一旦某节点失效,整个系统的路由重配工作将是很困难的。

已有的路由算法采用的协议都是在某种广播协议基础上进行优化,以避免不必要的消息 转发。对于本系统的路由算法,通过检测各分代理服务器中是否有对本事件感兴趣的订阅者, 来设置过滤条件的覆盖关系,从而降低信息转发数量,提高事件转发效率、订阅维护效率和 系统容错能力,实现系统的负载均衡,降低系统的资源消耗。

4 结束语

基于发布/订阅机制的指挥显示信息分发系统利用发布/订阅模型的交互性、异步通信和 松耦合性的特点,使指挥显示信息分发系统不仅能够更加快速、准确的获取实时的试验信息, 又能灵活、动态扩展系统,满足未来靶场繁重的试验任务需求。

图3 指挥显示信息分发系统工作流程

猜你喜欢
发布者靶场数据模型
精细化理念推动靶场总装管理体系的构建与实施
2021年6月18日,一架F-16战隼在联合太平洋阿拉斯加靶场上空
新加坡新法规引争议
贵阳建首个“大数据安全综合靶场”
靶场光电经纬仪最优布站方法研究
面板数据模型截面相关检验方法综述
基于NDN的高效发布/订阅系统设计与实现
广告发布者的著作权审查义务问题研究
财政支出效率与产业结构:要素积累与流动——基于DEA 和省级面板数据模型的实证研究
论虚假广告发布者侵权责任