• eProsima Fast DDS(1)


    eProsima Fast DDS (1)

    简介

    eProsima Fast DDS是 DDS(数据分发服务)规范的 C++ 实现,该规范由对象管理组 (OMG)定义。eProsima Fast DDS库提供应用程序编程接口 (API) 和通信协议,用于部署以数据为中心的发布者-订阅者 (DCPS) 模型,目的是在实时系统之间建立高效可靠的信息分发。 eProsima 快速 DDS在资源处理方面是可预测的、可扩展的、灵活的和高效的。为了满足这些要求,它使用类型化接口并依赖于多对多分布式网络范式,该范式巧妙地允许通信的发布方和订阅方分离。 eProsima Fast DDS包括:
    1.The DDS API implementation.
    2.Fast DDS-Gen, a generation tool for bridging typed interfaces with the middleware implementation.
    3.The underlying RTPS wire protocol implementation.

    DDS API

    DDS 采用的通信模型是多对多的单向数据交换,其中产生数据的应用程序将其发布到属于使用数据的应用程序的订阅者的本地缓存。信息流由负责数据交换的实体之间建立的服务质量 (QoS) 策略进行管理。
    作为以数据为中心的模型,DDS 建立在所有感兴趣的应用程序都可以访问的“全局数据空间”的概念之上。想要提供信息的应用程序声明其意图成为发布者,而想要访问部分数据空间的应用程序则声明其意图成为订阅者。每次发布者向该空间发布新数据时,中间件都会将信息传播给所有感兴趣的订阅者。
    通信跨域发生,即连接所有能够相互通信的分布式应用程序的孤立抽象平面。只有属于同一域的实体才能交互,订阅数据的实体与发布数据的实​​体之间的匹配是由主题介导的。主题是明确的标识符,它将在域中唯一的名称与数据类型和一组附加的特定于数据的 QoS 相关联。
    在这里插入图片描述只有属于同一域的实体才能通过匹配主题发现彼此,从而在发布者和订阅者之间交换数据

    Fast DDS-Gen

    依赖接口意味着需要一种生成工具,能够将 IDL 文件转换成 C++ 代码,并且依赖于java,需要安装java,后面会介绍Java的安装

    RTPS

    RTPS 是 Real-Time Publish Subscribe 的缩写,它是 DDS 的通信中间件,是发布-订阅模式,通信能力强大,支持 UDP/IP、TCP 及共享内存。RTPS 中定义了一个 Domain 的概念,它定义了一个单独的通信平面。几个域可以同时独立地共存。一个域包含任意数量的 RTPSParticipant,即能够发送和接收数据的元素

    在这里插入图片描述

  • 相关阅读:
    指针数组和数组指针
    AcWing 第57 场周赛
    ios 代码上下文截屏之后导致的图片异常问题
    pytorch案例代码-2
    阿里云云原生一体化数仓 - 数据安全能力解读
    接口测试学习笔记(基础知识、Jmeter、Postman)
    CF821 A. Consecutive Sum
    Nginx网站服务
    item_get_app(app商品详情原数据)
    mybatis-plus使用generator快速生成代码,并手动添加数据库命令
  • 原文地址:https://blog.csdn.net/neuzhangno/article/details/126510569