OpenDDS - DCPSInfoRepo 被杀死但发布者和订阅者正在通信

OpenDDS - DCPSInfoRepo is killed but the publisher and subscriber are communicating

我正在使用 Ubuntu 16 OpenDDS-3.11/examples/DCPS/IntroductionToOpenDDS 中的 OpenDDS 个 DCPS 示例进行锻炼。根据在同一位置找到的 AAA_README.txt,我首先开始 DCPSInfoRepo OpenDDS-3.11/bin/DCPSInfoRepo -ORBEndpoint iiop://localhost:12345,然后分别是 subscriberpublisher

我可以获得 publisher 发布和 subscriber 接收订阅的主题。我了解 DCPSInfoRepo 创建 repo.ior 其中将包含参与者的条目。

但是如果我杀了 DCPSInfoRepo,我可以看到 publishersubscriber 继续通信,但显然无法添加另一个参与者,因为 DCPSInfoRepo 不是 运行.

我想知道为什么 publishersubscriber 在没有 DCPSInfoRepo 的情况下继续通信。添加参与者后不需要DCPSInfoRepo服务器吗?请澄清。

DCPSInfoRepo 仅用于发现,目前 publishers/subscribers 彼此了解,即使没有 DCPSInfoRepo,他们也会保持通信。

我建议您使用来自 DDS 标准的 RTPS 发现。这完全消除了对 DCPSInfoRepo 的需求(这是一个单点故障)。