0

I'm exercising with OpenDDS DCPS examples from OpenDDS-3.11/examples/DCPS/IntroductionToOpenDDS on Ubuntu 16. As per the AAA_README.txt found in the same location, I first started DCPSInfoRepo OpenDDS-3.11/bin/DCPSInfoRepo -ORBEndpoint iiop://localhost:12345 followed by subscriber and publisher respectively.

I could get the publisher publishing and subscriber receiving the subscribed topics. I understand the DCPSInfoRepo creates repo.ior which will contain the participant's entry.

But if I kill the DCPSInfoRepo, I could see the publisher and subscriber continue to communicate but obviously could not add another participant as DCPSInfoRepo is not running.

I would like to know why the publisher and subscriber continue to communicate in the absence of DCPSInfoRepo. Don't we need DCPSInfoRepo server after participants are added? please clarify.

Panch
  • 1,097
  • 3
  • 12
  • 43

1 Answers1

1

The DCPSInfoRepo is only used for discovery, at the moment publishers/subscribers know of each other they will keep communicating even without the DCPSInfoRepo.

I would recommend you to use the RTPS discovery which is coming from the DDS standard. That removes the need for the DCPSInfoRepo completely (which is a single point of failure).

Johnny Willemsen
  • 2,942
  • 1
  • 14
  • 16
  • Thanks for the clarification. Now, I understand the role of DCPSInfoRepo. Thanks for the hint about RTPS, but would it support end points connected over TCP or only UDP. I'm fairly new to DDS. any pointers would be greatly appreciated. – Panch Aug 20 '17 at 15:01