DDS (Data Distribution Service) 数据分发服务-规范中文翻译_001

DDS (Data Distribution Service) 数据分发服务-规范中文翻译_001

1. 概述

1.1 简介

DDS规范描述了用于分布式应用程序通信和集成的以数据为中心的发布 - 订阅(DCPS)模型。 该规范定义了应用程序接口(API)和通信语义(行为和服务质量),它们能够有效地将信息从信息生产者传递给匹配的消费者。

DDS规范的目的可以概括为“在正确的时间将正确信息有效且稳健地传递到正确的位置”。

预期的应用领域要求DCPS具有高性能和可预测性,并且在资源使用方面也是有效的。 为了满足这些要求,接口的设计必须符合以下要求:

  • 允许中间件预分配资源,以便将动态资源分配降至最低;
  • 避免那些可能需要使用无限制或难以预测的资源的属性;
  • 尽量减少复制数据的需要。

DDS尽可能使用类型化接口(即,考虑实际数据类型的接口)。 类型化接口具有以下优点:

  • 更易于使用:程序员直接操作自然代表数据的构造。
  • 使用起来更安全:可以在编译时执行验证。
  • 更有效:执行代码可以依赖于它预先具有的确切数据类型的知识,例如,预分配资源。

应该注意的是,使用类型化接口的决定意味着需要生成工具将类型描述转换为适当的接口和实现,以填补类型化接口和通用中间件之间的差距。

QoS(服务质量)是用于指定服务行为的一般概念。 通过QoS设置编程服务行为提供了以下优点:应用程序开发人员仅指示“需要什么”而不是“如何”实现此QoS。 一般而言,QoS由若干QoS策略组成。 然后,每个QoS策略都是一个独立的描述,它将名称与值相关联。 通过独立QoS策略列表描述QoS可以提供更大的灵活性。

本规范旨在允许发布和订阅方之间的明确分离,以便仅作为发布者参与的应用程序进程可以嵌入与发布严格相关的内容。 类似地,仅作为订阅者参与的应用程序进程可以仅嵌入与订阅严格相关的内容。

1.2 目的

许多实时应用程序需要将其一些通信模式建模为纯数据中心交换,其中应用程序发布(提供或流)“数据”,然后这些数据可供对其感兴趣的远程应用程序使用。 相关的实时应用可以在C4I,工业自动化,分布式控制和仿真,电信设备控制,传感器网络和网络管理系统中找到。 更一般地,任何需要(选择性)信息传播的应用程序都是数据驱动的网络架构的候选者。

具有最小开销的可预测数据分布是这些实时应用程序的主要关注点。 由于无限扩展所需资源是不可行的,因此能够指定可用资源并提供允许中间件将资源与最关键要求对齐的策略非常重要。 这种必要性转化为控制服务质量(QoS)属性的能力,这些属性会影响可预测性,开销和资源利用率。

需要以健壮的方式扩展到数百或数千个发布者和订阅者,这也是一个重要的要求。 这实际上不仅是可扩展性的要求,而且是灵活性的要求:在许多这些系统中,添加应用程序而不需要/可能重建整个系统。 以数据为中心的通信将发送者与接收者分离; 发布者和订阅者越少,这些扩展就越容易。

分布式共享内存是一种提供以数据为中心的交换的经典模型。 但是,该模型难以通过网络有效实施,并且不能提供所需的可扩展性和灵活性。 因此,另一种模型,即以数据为中心的发布 - 订阅(DCPS)模型,已经在许多实时应用中变得流行。 该模型建立在所有感兴趣的应用程序都可以访问的“全局数据空间”的概念之上。 希望向此数据空间提供信息的应用程序声明其意图成为“发布者”。同样,想要访问此数据空间部分的应用程序声明他们的意图成为“订阅者”。每次发布者将新数据发布到此“全局数据空间”,中间件将信息传播给所有感兴趣的订阅者。

任何以数据为中心的发布订阅系统都是一种数据模型。 此模型定义“全局数据空间”,并指定发布者和订阅者如何引用此空间的某些部分。 数据模型可以像一组不相关的数据结构一样简单,每个数据结构由主题和类型标识。 该主题提供了唯一标识全局数据空间中的某些数据项的标识符。 该类型提供了告诉中间件如何操作数据所需的结构信息,并允许中间件提供类型安全级别。 但是,目标应用程序通常需要更高级别的数据模型,该模型允许表达数据元素之间的聚合和一致性关系。

在采用DDS规范之前,有商业上可用的产品实现了许多这些功能(其中包括来自Real-Time Innovations的NDDS和来自THALES Naval Nederland的Splice); 但是,这些产品是专有的,并没有提供标准化的界面和行为。 DDS规范的目的是定义标准化的接口和行为,以实现应用程序的可移植性。 自DDS采用以来,已经开发了至少十个兼容的实现。

该规范侧重于使用数据分发服务的应用程序的可移植性。 供应商实现之间的线协议互操作性涵盖在不同的OMG规范中:实时发布 - 订阅线协议DDS互操作性线协议(The Real-time Publish-Subscribe Wire Protocol DDS Interoperability Wire Protocol.)。


译文连载

下一篇:DDS (Data Distribution Service) 数据分发服务-规范中文翻译_002


相关链接

《一文读懂DDS(数据分发服务)》

《BLUE DCS分布式数据连接解决方案》

【产品试用地址:海蓝云平台-Blue DCS】

发布了3 篇原创文章 · 获赞 5 · 访问量 988

猜你喜欢

转载自blog.csdn.net/DDS_CSIT/article/details/104673517
dds
今日推荐