DDS与RTPS之间的差异

问题描述 投票:2回答:1

我正在寻找图像处理管道的框架。在搜索过程中,我发现许多DDS和RTPS术语在这里和那里可以互换使用。

他们是同一件事吗?如果是,那么为什么要使用2个不同的术语,如果不是,那么有什么区别?

publish-subscribe data-distribution-service
1个回答
0
投票

他们是同一件事吗?

DDS和RTPS是不同的东西。

如果没有,那有什么区别?

概括地说,RTPS是一种有线协议,DDS系统通常利用该协议来实现其进程间(网络)通信。您可以将它们视为堆栈中的两层,DDS位于RTPS的顶部。

RTPS代表实时发布订阅。现在更正式地称为OMG DDSI-RTPS,其中DDSI代表DDS互操作性。它由对象管理组(OMG)标准化,目的是为DDS实现提供互操作性有线协议。

OMG DDS本身是一个基于发布-订阅范例的以数据为中心的连接框架。它的规范描述了API以及DDS基础结构的预期行为。它为用户提供高级数据管理功能,包括全面的类型系统,多种通信模式和不同类型的服务质量,从而简化了构建分布式(实时)系统的任务。

尽管不是必需的,但DDS实施通常在后台利用DDSI-RTPS有线协议来实现所需的进程间(网络)通信。作为DDS用户,尽管您可以通过使用带有RTPS解剖器的Wireshark来了解一下RTPS的内部工作原理,但您不必了解它的内部工作原理。如果您的要求包括在单个系统中结合使用不同DDS实现构建的应用程序,则必须提供RTPS支持。

也可以单独使用RTPS作为协议,而无需在其之上进行完整的DDS实现,也可以不使用标准化API。它没有提供我前面提到的许多DDS功能,而仅提供了较低级别的发布-订阅功能。

© www.soinside.com 2019 - 2024. All rights reserved.