面向无线多跳网络的安全数据分发服务软件设计与实现
2024-01-20吕广喆刘陶甄超
吕广喆 刘陶 甄超
关键词:多跳网络;安全;数据分发服务
中图分类号:TP393 文献标识码:A
0引言
为了解决无线环境动态时变不可靠、异构信息传输难、信息安全保障弱等问题,为上层构件提供硬件透明、通用开放、可扩展通信接口,不少企业和研究机构开始关注数据分发服务软件。然而,通用领域解决方案是基于以太网环境构建的,没有考虑在恶劣环境中网络的限制。因此,本文提出了一种面向无线多跳网络的安全数据分发服务软件,它通过动态自发现机制保证网络拓扑关系的灵活性;支持节点的动态加入与退出;提供可靠性保证以解决丢包率高的问题;提供安全防护机制以解决访问控制的问题。
1数据分发服务
数据分发服务(data distribution service,DDS)软件中发布订阅是核心,发送端与接收端之间建立发布订阅关系,发送端根据建立的关系将数据信息推送到订阅端,完成信息的交互。由DDS组成的网络拓扑关系,可以实现强实时、高可用的点对点通信。DDS可以被应用于多种不同类型的系统之中,可以通过服务质量(quality of service,QoS)来控制应用间的数据交互方式以适应不同要求,如可靠传输、有效性检测、数据截止期等。
2架构设计
本研究面向无线多跳网络的实时数据分发服务技术和数据分发服务的安全保障技术。针对无线多跳网络环境,采用实时数据分发服务技术,建立统一通信软件平台,从身份认证、访问控制、安全加密、信息安全等方面设计安全访问策略。总体方案架构如图1所示。
DDS中间件针对无线多跳网络环境进行适配,封装无线多跳网络的设备初始化、消息发送、消息接收接口,以网络传输插件的方式注册到数据分发服务之中。通过服务质量控制的路由选择,为上层应用程序获取数据提供开放、便捷、高效的手段。
在DDS中,允许参与者在不进行身份认证的情况下加入DDS域,但为了避免未认证参与者对数据的破坏,本文提出的数据分发服务安全保障技术要求每一个参与者都进行身份认证,设计针对主题的访问控制以及消息加解密,从而保证整体的安全性。
3基于服务质量的路由选择机制
在無线多跳网络中存在网络不稳定的情况,往往导致出现通信延迟大和吞吐量降低的问题。为了保证消息传输的实时性以及节点间的正常通信,需要根据网络当前的状态选择不同的路由方式。发送数据的节点可以检测网络的状态,当某一条链路发生拥堵或延迟较大时,会重新选择路由。如图2所示,初始状态下节点A到节点F的链路可以是A→C→D→F、A→B→C→D→F、A→B→E→F;当节点C与节点D之间的链路产生拥堵,延迟变大时,节点A需要选择一条可到达的链路A→B→E→F。
本文采用基于服务质量的路由选择机制以实现路由选择,路由选择机制涉及传输层和网络层。在传输层中采用DDS进行数据传输,上层应用采用统一的数据分发接口进行通信,通过数据分发服务中的服务质量TRANSPORT_PRIORITY(传输优先级)可以对IP协议中TOS(服务类型)字段进行设置,DTN(时延容忍网络)在转发消息时,可根据不同的TOS值选择不同的网络链路。
4基于广播的自发现机制
DDS中每一个域参与者需要保存同一个域内所有有效的域参与者和发布订阅的信息,在这些信息的基础上才可以进行发布订阅,自发现就是获取和更新这些信息的过程。
在无线多跳网络中,由于组网的灵活性,组播列表无法确定,使用DDS进行信息传输时无法采用组播消息进行节点自发现过程,导致无法建立发布订阅关系。如图3所示,初始状态中节点A、B、E处于一个网络分组,节点C、D、F处于一个网络分组。由于任务变化或网络不稳定,节点E需要退出原先的分组,加入C、D、F分组中,但C、D、F分组原有的组播列表中没有节点E的信息,如果加入节点E则必须重新配置C、D、F分组组播列表,可能会导致任务无法按时完成。因此,需要建立基于广播消息的节点自发现过程。
DDS在自发现的过程中,首先将自发现消息发送到指定的广播地址,通过广播地址将消息转发到其他的节点,其他节点接收到自发现消息后回复本地节点的信息进而完成节点发现。后续的数据分发消息也通过广播地址进行转发。广播地址用户可以根据网络具体情况进行配置。
5安全防护机制
针对数据分发服务本身存在的安全威胁,本文提出了数据分发服务安全保障技术。数据分发服务安全保障技术包括基于参与者的身份认证、面向主题的访问控制、面向主题的安全加密和信息安全4个功能模块,其中基于参与者的身份认证是所有后续安全保障机制的基础;在身份认证通过的基础上,访问控制技术根据配置数据判断参与者对具体资源的访问权限,建立访问关系;确定访问权限后,根据身份认证和访问控制结果,面向主题的安全加密模块完成通信加解密。整个过程中信息安全模块记录所有安全相关事件。
6结论
本文采用多个无人机开展实时数据分发服务演示验证,以无线多跳网络为主干网络,整个平台采用实时数据分发服务作为数据传输软件,对面向无线多跳网络的数据分发服务和数据分发服务的安全保证技术进行应用验证。未来还将对软件的实时性进行优化。