Implement and Integrate new node discovery algorithm into the RTI Connext

2 posts / 0 new
Last post
Last seen: 9 years 2 months ago
Joined: 12/19/2013
Posts: 3
Implement and Integrate new node discovery algorithm into the RTI Connext

Hello, warmest greetings from South Korea,

I am going to do my master thesis in discovery message to reduce to improve its scalability. As far as I know, for default implementation, RTI Connext using Simple Discovery Protocol (SDP). I have an idea to implement discovery process based on Bloom Filters.
I have read the user manual and understand regarding the discovery process (SDP) mechanism that consist of 2 phase (SPDP and SEDP).

But because it is my new experience with RTI Connext,I have a problem in the coding process (I'm using Java) to implement and integrate my node discovery algorithm into the RTI Connext. Hopefully someone could help me to understand and give direction how to do it.

Thanks for your time and answer.

Gerardo Pardo's picture
Last seen: 5 months 1 week ago
Joined: 06/02/2010
Posts: 600

Hello Rizal,

The project you describe sounds similar to the one in this paper titled "Bloom Filter Based Discovery Protocol for DDS Middleware"  by Javier Sanchez-Monedero and others. Have you looked at this work? 

How are you trying to integrate the node discovery algorithm into RTI Connext?  RTI Connext DDS does have a pluggable discovery API. Is this what you are trying to use? While the API is accessible I do not think the API is documented in the general access release... If you want a native integration that replaces or enhances the SDP you would need to use this API I think.  Also the new discovery plugin would have to be implemented using C because the discovery plugin is loaded by the RTI Connext DDS core.

If you really wanted to do this, then I think we would need to make the documentation of the discovery plugin available... This would take sometime because it was not prepared for external consumption.

You could also write your discovery algorithm as a DDS application and send the actual discovery data to compare its performance (in terms of CPU and network bandwith used) with the regular SDP discovery. This you could do in Java. You would not be really replacing DDS discovery but you would get an idea of the kind of improvements the nre protocols could provide.