Fast-DDS 服务发现简要概述

2023-09-12 21:47:19

阅读本文章需要对DDS基础概念有一些了解,一些内容来自Fast-DDS官方文档,一些是工作中踩过的坑。

1. 服务发现阶段

满足OMG标准的DDS服务发现分为两部分,分别是:

  • PDP(Participant Discovery Protocol 参与者发现协议):参与者确认彼此的存在。参与者会定期发送公告信息,消息包括但不限于参与者的名称,ID,所在进程信息,所在主机信息,以及监听用户数据以及发现数据的IP Port等;
  • EDP(Endpoint Discovery Protocol 端点发现协议)。确认 DataWriter 和 DataReader 的信息,如Topic,数据类型等信息

PDP和EDP不同DDS可以有不同的实现方式,为了使得不同厂家的DDS能够互相通信,OMG标准规定,所有种类的DDS都需要实现SPDPSEDP,即简单参与者发现协议和简单端点发现协议,以满足互操性。

Fast DDS提供的服务发现机制

  1. 简单发现:及上述的SPDP和SEDP协议,保证了Fast-DDS和其余品种的DDS的互操性,兼容性;

  2. 静态发现:在PDP阶段使用的是SPDP。但是可以在EDP阶段,在配置文件中指定要进行交互的端点(datawriter/datareader)的一些信息,如Topic,数据类型,通信的IP和端口号等。

  3. 发现服务器:基于C/S结构,发现消息等元流量由一个或者多个充当服务器的参与者进行管理。
    在这里插入图片描述

  4. 手动发现:不与DDS层兼容,与底层RTPS层兼容。该机制禁用PDP,需要用户手动的匹配RTPSParticipants,RTPSReaders和RTPSWriters,用户将需要使用外部的元信息交换的通信机制。

更多推荐

Nodejs+vue热门游戏网游推荐网站系统 s5832

热门网游推荐网站综合网络空间开发设计要求。目的是将热门网游推荐将传统管理方式转换为在网上管理,完成热门网游推荐信息管理的方便快捷、安全性高、交易规范做了保障,目标明确。热门网游推荐网站可以将功能划分为管理员功能和用户功能。(1)、管理员关键功能包含系统首页、个人中心、用户管理、科普知识管理、游戏攻略管理、游戏信息管理、

spring和springmvc常用注解

1.Spring常用注解:1)@Repository将DAO类声明为Bean2)@Service用于修饰service层的组件3)@Controller通常作用在控制层,将在SpringMVC中使用4)@Component是一个泛化的概念,仅仅表示spring中的一个组件(Bean),可以作用在任何层次5)@Scope

flask项目请求与响应

项目名:static(静态)jscsstemplates(模板)app.py(运行)web项目mvc:model模型view视图controller控制器mtvmodel(模型)templates(模板)-->htmlview视图(python代码)起控制作用b/sbrowserserver浏览器服务器c/sclien

加密算法总结

数字签名、信息加密是前后端开发都经常需要使用到的技术,应用场景包括了用户登入、交易、信息通讯、oauth等等,不同的应用场景也会需要使用到不同的签名加密算法,或者需要搭配不一样的签名加密算法来达到业务目标。这里简单的给大家介绍几种常见的签名加密算法和一些典型场景下的应用。1、数字签名数字签名,简单来说就是通过提供可鉴别

工厂模式-(简单工厂模式)

首先看一下设计模式的六大原则设计模式的六大原则1、开闭原则(OpenClosePrinciple)开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体

服务器硬件监控解决方案,提升服务器稳定性

前言在当今数字化时代,服务器的稳定运行对于企业的核心业务至关重要。为了确保服务器的正常运行并及时发现潜在问题,我们公司开发了一款先进的服务器硬件监控解决方案。本文将深入探讨服务器硬件监控的重要性、解决方案的特点和优势,以及支持监控的硬件设备列表和服务器硬件指标一览。此外,我们还将介绍该解决方案提供的资产管理、自动巡检和

2023年CSP-J 普及组第一轮题目和答案详解

家人们首战报捷!!!!才教了一个月的学生,赛前一周才报名CSP-J都没提前安排初赛内容临时周内加了两节课,总共初赛也就上了3次课准备了不到一周半,压线进了复赛,不得不说学生基础还不错,脑子也转的快,接受程度嘎嘎强,茶馆也好喝家人们钱不钱无所谓主要是爱教课。复赛加油冲了!2023年CSP-J(题目和答案)ps:详解之后更

数据分析的概念

一、数据分析的目的:把隐藏在一大批看来杂乱无章的数据中的信息集中和提炼出来,从而找出研究对象的内在规律。(主要在于分析目的及过滤脏数据)1.数据分析是有组织有目的地收集数据、分析数据,使之成为信息的过程。(这一过程是质量管理体系的支撑关键)。2.数据分析覆盖项目的整个寿命周期,例如:项目的前提调研、可行性分析、用户行为

这些英国学校接受ChatGPT帮助写作

自从ChatGPT展现了其高超的AI技术,全球年轻人纷纷对其表示喜爱,尤其是学生们,将其视为一个优化版的网络搜索引擎,可以用来提高学习效率。ChatGPT具有多样化的功能,可以节省研究复杂文献的时间,编写简单的Python代码,并辅助学生理解知识点。然而,这也引发了被学生用来作弊的担忧。因此,英国的各大学连续数月来一直

lv5 嵌入式开发-1 进程的创建和回收

目录1进程概念2进程内容3进程类型4进程状态5查看进程信息5.1相关命令pstop/proc5.2相关命令nicerenice5.3相关命令jobbgfg6子进程概念7子进程创建–fork8父子进程9思考10进程结束–exit/_exit11进程的回收11.1进程回收–wait11.2进程回收–waitpid掌握:进程

2、 MongoDB应用与开发

2.MongoDB应用与开发2.1.MongoDB安装l官网下载安装介质:TryMongoDBAtlasProducts|MongoDB选择对应版本修改环境变量vi/etc/profileexportMONGODB_HOME=/home/lijin/mongodbexportPATH=PATH:PATH:PATH:MO

热文推荐