云发现服务 用于在动态环境中部署Connext DDS应用程序的独立应用程序,包括UDP / IP多播不可用的情况

在基于云的环境中配置发现的开箱即用解决方案

介绍

RTI Cloud Discovery Service是在无法使用UDP / IP多播的动态环境中部署RTIConnext®DDS应用程序所需的独立应用程序。 这是典型的广域网或某些基于云的环境,其中路由器和交换机可能会禁用IP多播转发。

DDS具有内置的发现机制,允许所有DDS应用程序自动检测其他应用程序的存在,并发现它们发布和订阅的主题以及相关的数据类型和服务质量(QoS)。

内置发现机制主要依靠UDP / IP多播来引导其他DDS应用程序的检测并了解其网络地址。使用UDP / IP多播允许DDS发现完全是点对点的 - 也就是说,无需任何其他服务器或代理即可运行。 应用程序本身可以直接发现彼此。

但是,如果Connext DDS应用程序在UDP / IP多播不可用的环境中运行,则内置(对等)发现是不够的。 Connext DDS提供两种机制来帮助解决这些问题:

  • 对于先验已知应用程序的网络地址的静态环境,您可以将应用程序配置为自动检查这些地址是否存在其他应用程序。 这是通过配置Initial Peers来完成的。
  • 对于事先不知道网络地址的动态环境,或者在列表太大或管理繁琐的情况下,您可以利用RTI Cloud Discovery Service。 此外部服务充当Connext DDS应用程序的可靠“会合点”,以了解其他DDS应用程序的状态和网络地址。 这可以通过将Initial Peers设置为包括Cloud Discovery Service来完成。

图1. Cloud Discovery服务概述

图1显示了Cloud Discovery Service操作的简单表示。 它充当“中继”服务,转发引导程序(参与者公告)消息,允许DomainParticipants了解其他DomainParticipants的存在。

基础

Cloud Discovery Service使用标准的简单发现协议(SDP) [ 1 ]运行 。 在SDP中,DomainParticipants最初向所有指定的初始对等方公布其存在。 这些参与者公告包含其他DomainParticipants发现其存在和引导通信的必要信息。 这些消息还用于维护参与者的活力。

图2. Cloud Discovery服务转发参与者公告消息

Cloud Discovery Service 侦听参与者通知,以动态了解DomainParticipants的当前列表,其DDS域ID及其网络地址。

图2说明了每个 DomainParticipant 在其Initial Peers中 包含 Cloud Discovery Service 实例。因此, DomainParticipant 会将参与者公告发送给 Cloud Discovery Service ,后者会将这些公告转发给 它知道 的 DomainParticipants 列表 ,使他们能够在 这些公告 中启动发现过程。

图3. DomainParticipants交换参与者公告消息

图3说明一旦DomainParticipant发现另一个存在(通过来自Cloud Discovery Service的转发消息),它就会直接发送其Participant Announcement消息。 此步骤与DomainParticipant在其Initial Peers中包含其他DomainParticipant或使用多播来宣布其存在时相同。 这些消息还用于维护参与者的活力。

图3显示,一旦DomainParticipant收到Cloud Discovery Service转发的另一个公告,它就可以直接发送参与者公告。 此步骤与DomainParticipant在其Initial Peers中包含其他DomainParticipant或使用多播来宣布其存在的步骤相同。

图4.域参与者Exchange端点发现消息

图4说明了一旦DomainParticipants彼此了解,他们就会交换端点发现信息。 也就是说,有关DataWritersDataReader的信息。 Cloud Discovery Service的存在不会改变此步骤。

Cloud Discovery Service的优点

  1. 即使没有可用的多播,也无需预测或维护对等列表,动态发现仍然可行。
  2. Cloud Discovery Service可在DDS环境中无缝集成。 由于它在RTPS [2]级别运行,因此RTI Connext应用程序不需要任何特殊行为或协议。 他们只需要配置其初始对等方以包含运行Cloud Discovery Service的位置。 由于这在运行时都是可配置的,因此无需重新编译应用程序。 这意味着Cloud Discovery Service还可以使用现有服务,例如RTI路由服务,Connext DDS Micro或其他DDS-RTPS实施。
  3. 发现仍然是在所有DomainParticipants中执行的分布式过程。 这允许您动态扩展系统,并避免集中和瓶颈服务器。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

道格拉斯范朋克

播种花生牛奶自留田

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值