DDS技术架构

  1. DDS技术架构(资料收集)
    1. DDS的目标

(1)促进分布式系统中数据分发的效率;

(2)实时、可信和高性能的发布/订阅中间件,其语义可通过服务质量(QoS,Quality of Service)标准进行控制。

    1. DDS基本框架

DDS标准化了数据交换的接口和行为,它描述了两个层次的接口:

(1)以数据为中心的发布/订阅DCPS层

DCPS是DDS的核心层,提供发布与订阅数据的功能,使发布者能够发布拥有的数据,订阅者能够订阅感兴趣的数据,建立一个不需要维护的、快捷的数据通道。

(2)数据本地重构DLRL层

DLRL是DDS的可选层,建立在DCPS与应用层之间,以类的形式对DCPS层提供的服务进行了封装,DLRL层通过这些类让应用层可以快速地访问数据。

DDS为用户提供了统一的应用程序编程接口API,将数据发布、传递以及接收的接口和行为标准化。该规范实现对复杂系统中的数据进行实时,高效的传输要求;在分布式网络环境下,可以实现动态组网和数据的按需多点分发。同时规范化了QoS,使其能够满足实时通信的需求,优化了分布式系统的高实时性,用于满足对高性能、可预见性有较高要求的关键任务领域的计算需求。

DDS主要包括主题(Topic)、域(Domain)和域成员(Domain participant)、发布者(Publisher)和数据写入者(Data Writer)、订阅者(Subscriber)和数据读取者(Data Reader)、监听器(Listener)、条件触发器(Status Condition)等要素。其中:

(1)主题

发布者与订阅者之间通过主题(数据写入者与数据读取者的主题)进行匹配,具有相同主题的发布者与订阅者可以直接进行点对点的数据传输,不需要中间媒介;

(2)域和域成员

DDS通过域来划分逻辑网络,域名相同的应用相互之间才能通信,这样就可以在一个物理网络上虚拟多个通信网络;

(3)发布者和数据写入者

发布者将其数据写入者组织起来,由数据写入者对数据进行分发;

(4)订阅者和数据读取者

订阅者用来组织数据读取者,通过数据读取者从网络上获得数据并传递给应用;

(5)监听器

监听器为DDS中间件提供了一种通知应用程序相关的异步事件的机制;

(6)条件触发器

作为监听器的补充,提供了中间件与应用程序之间的另一种同步通信模式,是基于等待的。

QoS策略控制是DDS的最大亮点。它将资源的可用情况、提供方对资源的占有程度及请求方对资源的期待程度分别归纳为主题QoS,发布者QoS和订阅者QoS。QoS参数虚拟了底层和整个通信机制,包括带宽限制、可靠性、等待时间和资源限制等。发布/订阅数据过程中,中间件负责检查两者之间的QoS是否兼容,从而来确定数据连接的建立情况以及数据的传输控制,大大增加了通信的灵活性。

基于DDS的分布式系统中,加入DDS网络的节点发布自己想要发布的(或者想要订阅的)Topic和QoS,DDS网络上已经存在的节点收听到这个请求后和自己的发布订阅情况以及QoS标准进行对照,如果新加入节点的Topic信息与自己相关,并且QoS标准也符合要求,就主动同新加入的节点进行通信,将自己的Topic信息发送给新加入节点,同时,把新加入节点的相应信息注册到本节点上,以便有通信需求时建立点到点连接。

你可能感兴趣的:(数据分发服务DDS)