实时发布订阅协议(RTPS)DDS互操作网络协议规范-中文翻译_002

本文主要是介绍实时发布订阅协议(RTPS)DDS互操作网络协议规范-中文翻译_002,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实时发布订阅协议(RTPS)DDS互操作网络协议规范-中文翻译_002

关键字:OMG,RTPS,DDS

The Real-time Publish-Subscribe Protocol (RTPS) DDS Interoperability Wire Protocol Specification,Version 2.2,September 2014

7 概述

7.4 RTPS平台无关模型(PIM)

根据平台无关模型(PIM)和一组PSM描述RTPS协议。

RTPS PIM包含四个模块:结构,消息,行为和发现。结构(Structure)模块定义通信端点。 消息(Messages)模块定义这些端点可以交换的消息集合。行为(Behavior)模块定义了合法交互集(消息交换)以及它们如何影响通信端点的状态。换句话说,Structure模块定义了协议“参与者”,Messages模块定义了“语法符号”,而Behavior模块定义了不同会话的合法语法和语义。发现(Discovery)模块定义如何自动发现和配置实体。

在这里插入图片描述
图 7.1 RTPS模块

在PIM中,消息是根据其语义内容定义的。可以将此PIM映射到各种平台特定模型(PSM)中,例如普通UDP或CORBA事件。

7.4.1 结构模块

鉴于其发布订阅的根源,RTPS自然地映射到多个DDS概念中。本规范会使用许多DDS规范已经使用的相同核心实体。如图1.2所示,所有RTPS实体都与RTPS域相关联,RTPS域表示包含一组参与者(Participants)的单独通信平面。 参与者包含本地端点(Endpoints)。 有两种类型的端点:读取者(Readers)写入者(Writers)。读取者和写入者是通过发送RTPS消息来传达信息的参与者。写入者告知数据的存在并将**数据域(Domain)**上的本地可用数据发送给读取者,读取者可以请求和确认数据。

在这里插入图片描述

图 7.2 RTPS结构模块

RTPS协议中的活动者与DDS实体一一对应,这是通信产生的原因。如图7.3所示。

在这里插入图片描述
图 7.3 RTPS与DDS对应关系

结构模块在8.2中描述。

7.4.2 消息模块

消息模块定义RTPS写入者和读取者之间的原子信息交换的内容。消息(Message)由一个报文头(Header)后跟一些子消息(Submessage)组成,如图2.4所示。每个消息都是由一系列元素构建的。选择此结构是为了允许扩展子消息的内容和每个子消息的组成,同时保持向下兼容性。
在这里插入图片描述
图 7.4 RTPS消息模块

消息模块将在8.3中详细讨论。

7.4.3 行为模块

行为模块描述了可以在RTPS写入者和读取者之间交换的消息序列,以及时间和每条消息引起的写入者和读取者状态的变化。

互操作性所需的行为是根据实现必须遵循的最小规则集来描述的,以便实现互操作。实际实现可能表现出超出这些最低要求的不同行为,具体取决于他们希望如何权衡扩展性,内存要求和带宽使用。

为了说明这个概念,行为模块定义了两个参考实现。一个参考实现基于有状态写入者(StatefulWriters)有状态读取者(StatefulReaders),另一个基于无状态写入者(StatelessWriters)无状态读取者(StatelessReaders),如图2.2所示。两种参考实现都满足互操作的最低要求,因此可以互操作,但由于它们存储在匹配的远程实体上的信息不同,因此表现出略微不同的行为。 RTPS协议的实际实现的行为可以是参考实现的完全匹配或组合。

行为模块在8.4中描述。

7.4.4 发现模块

发现模块描述了使参与者(Participants)能够获取域中所有其他参与者(Participants)和端点(Endpoints)的存在和属性信息的协议。这种元通信(metatraffic)使每个参与者(Participant)能够获得域中所有参与者(Participants),读取者(Readers)和写入者(Writers)的完整信息,并配置本地写入者与远程读取者进行通信,以及本地读取者与远程写入者进行通信。

发现是一个单独的模块。发现的独特需求,即写入者和读取者进行匹配所需的所有信息需要通过透明地即插即用传播,使得单个架构或协议不可能满足各种各样的可扩展性,性能和将部署DDS的异构网络的嵌入性需求。从此以后,引入多种发现机制是有意义的,这些机制从简单和有效(但不是很可扩展)到更复杂的分层(但更具可扩展性)机制。

发现模块在8.5中描述

7.5 RTPS平台特定模型(PSM)

特定于平台的模型将RTPS PIM映射到特定的底层平台。它定义了所有RTPS类型和消息的位和字节的精确表示以及专属于平台的其他信息。

可能支持多个PSM,但DDS的所有实现必须在UDP/IP之上实现PSM,这在第3章中介绍。

7.6 RTPS传输模型

RTPS支持各种传输方式和传输QoS。该协议旨在能够在多播和尽力而为的传输方式(例如UDP/IP)上运行,并且只需要该传输方式提供非常简单的服务。实际上传输方式提供能够最大限度地发送数据包的无连接服务就足够了。也就是说传输方式不需要保证每个数据包会到达其目的地或者数据包按顺序传送。如果需要,RTPS在传输接口以上实现数据传输和状态的可靠性。这并不排除RTPS在可靠的传输方式之上实现。它使得支持更广泛的底层传输方式成为可能。

如果可以的话,RTPS还可以利用传输机制的多播功能,来自发送方的一条消息可以到达多个接收方。RTPS旨在促进底层通信机制的确定性。该协议提供了确定性和可靠性之间的公开权衡。
RTPS对底层传输方式的一般要求可归纳如下:

  • 传输具有单播地址(长度应在16字节以内)的通用概念。
  • 传输具有端口(长度应在4字节以内)的通用概念,例如可以是UDP端口或者共享存储器段中的偏移等。
  • 传输可以将数据报(未解释的八位字节序列)发送到特定的地址/端口。
  • 传输可以在特定地址/端口接收数据报。
  • 如果传输过程中消息不完整或已损坏,传输将丢弃消息(即RTPS假定消息已完成且未损坏)。
  • 传输提供推断接收消息大小的方法。

译文连载

RTPS规范-上一篇:实时发布订阅协议(RTPS)DDS互操作网络协议规范-中文翻译_001
RTPS规范-下一篇:实时发布订阅协议(RTPS)DDS互操作网络协议规范-中文翻译_003
DDS规范-译文连载:DDS (Data Distribution Service) 数据分发服务-规范中文翻译_001

相关链接

DDS科普:一文读懂DDS(数据分发服务)
DDS定义:什么是DDS?
产品介绍:BLUE DCS分布式数据连接解决方案
产品试用: 海蓝云平台-Blue DCS

这篇关于实时发布订阅协议(RTPS)DDS互操作网络协议规范-中文翻译_002的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/453606

相关文章

探索蓝牙协议的奥秘:用ESP32实现高质量蓝牙音频传输

蓝牙(Bluetooth)是一种短距离无线通信技术,广泛应用于各种电子设备之间的数据传输。自1994年由爱立信公司首次提出以来,蓝牙技术已经经历了多个版本的更新和改进。本文将详细介绍蓝牙协议,并通过一个具体的项目——使用ESP32实现蓝牙音频传输,来展示蓝牙协议的实际应用及其优点。 蓝牙协议概述 蓝牙协议栈 蓝牙协议栈是蓝牙技术的核心,定义了蓝牙设备之间如何进行通信。蓝牙协议

DDS信号的发生器(验证篇)——FPGA学习笔记8

前言:第一部分详细讲解DDS核心框图,还请读者深入阅读第一部分,以便理解DDS核心思想 三刷小梅哥视频总结! 小梅哥https://www.corecourse.com/lander 一、DDS简介         DDS(Direct Digital Synthesizer)即数字合成器,是一种新型的频率合成技术,具有低成本、低功耗、高分辨率、频率转换时间短、相位连续性好等优点,对数字信

[vivado][IP核]DDS

刘东华的IP核详解: 1、 这里的是指IP核配置中的相位数据的宽度。 2、 实际使用此IP核时并没有“频率分辨率”可以配,是靠改变来变的。 3、 4、 5、 数据输出的ready在数据正式输出时才会有。 自己仿真: 使用SIN/COS LUT only的模式,使用一个累加器作为相位输入,不知怎么,输出为X。

【杂记-浅谈DHCP动态主机配置协议】

DHCP动态主机配置协议 一、DHCP概述1、定义2、作用3、报文类型 二、DHCP的工作原理三、DHCP服务器的配置和管理 一、DHCP概述 1、定义 DHCP,Dynamic Host Configuration Protocol,动态主机配置协议,是一种网络协议,主要用于在IP网络中自动分配和管理IP地址以及其他网络配置参数。 2、作用 DHCP允许计算机和其他设备通

WordPress网创自动采集并发布插件

网创教程:WordPress插件网创自动采集并发布 阅读更新:随机添加文章的阅读数量,购买数量,喜欢数量。 使用插件注意事项 如果遇到404错误,请先检查并调整网站的伪静态设置,这是最常见的问题。需要定制化服务,请随时联系我。 本次更新内容 我们进行了多项更新和优化,主要包括: 界面设置:用户现在可以更便捷地设置文章分类和发布金额。代码优化:改进了采集和发布代码,提高了插件的稳定

AI赋能天气:微软研究院发布首个大规模大气基础模型Aurora

编者按:气候变化日益加剧,高温、洪水、干旱,频率和强度不断增加的全球极端天气给整个人类社会都带来了难以估计的影响。这给现有的天气预测模型提出了更高的要求——这些模型要更准确地预测极端天气变化,为政府、企业和公众提供更可靠的信息,以便做出及时的准备和响应。为了应对这一挑战,微软研究院开发了首个大规模大气基础模型 Aurora,其超高的预测准确率、效率及计算速度,实现了目前最先进天气预测系统性能的显著

物联网系统运维——移动电商应用发布,Tomcat应用服务器,实验CentOS 7安装JDK与Tomcat,配置Tomcat Web管理界面

一.Tomcat应用服务器 1.Tomcat介绍 Tomcat是- -个免费的开源的Ser Ivet容器,它是Apache基金会的Jakarta 项目中的一个核心项目,由Apache, Sun和其他一 些公司及个人共同开发而成。Tomcat是一一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。 在Tomcat中,应用程序的成部署很简

YOLOv9摄像头或视频实时检测

1、下载yolov9的项目 地址:YOLOv9 2、使用下面代码进行检测 import torchimport cv2from models.experimental import attempt_loadfrom utils.general import non_max_suppression, scale_boxesfrom utils.plots import plot_o

开源低代码平台,JeecgBoot v3.7.0 里程碑版本发布

项目介绍 JeecgBoot是一款企业级的低代码平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue3,Mybatis-plus,Shiro,JWT 支持微服务。强大的代码生成器让前后端代码一键生成! JeecgBoot引领低代码开发模式(OnlineCoding-> 代码生成-> 手工MERGE), 帮助解决Java项目70%的重复工作,让开

JeecgBoot v3.7.0 all 版本发布,前后端合并一个仓库

项目介绍 JeecgBoot是一款企业级的低代码平台!前后端分离架构 SpringBoot2.x,SpringCloud,Ant Design&Vue3,Mybatis-plus,Shiro,JWT 支持微服务。强大的代码生成器让前后端代码一键生成! JeecgBoot引领低代码开发模式(OnlineCoding-> 代码生成-> 手工MERGE), 帮助解决Java项目70%的重复工作,让开