posted on Thursday, February 18, 2010 - 11:24 am
Hi All, As I know it,CORBA is only for synchronous communication whereas in pub sub based DDS ,we expect asynchronous communication between the publisher and subscriber. Then why does so many DDS implementations like OpenDDS and OpenSplice require the TAO libraries for CORBA?
OpenSplice DDS does not rely on CORBA as a transport. OpenSpliceDDS provides cohabitation with CORBA to make it easy to pass Topics data to CORBA calls. Yet all communication goes straight on UDP.
Even OpenDDS does not use CORBA as a transport, I believe they use the Interface Repository for implementing discovery, but that's it.
If you want to see this with your eyes, you can download an OpenSplice DDS version and inspect its traffic with Wireshark. Otherwise, you can download a source distribution and build-it w/o ORB-cohabitation option.
posted on Friday, February 19, 2010 - 04:43 am
Angelo is correct, OpenDDS does not use CORBA as the transport. It does use a CORBA service, implemented with TAO, called the DCPS Information Repository (DCPSInfoRepo) for registration and discovery of domain participants, topics, publications, and subscriptions.
The OpenDDS Developer's Guide, which can be downloaded free via http://www.opendds.org/documentation.html, provides more details. Also, you can download, build, and run OpenDDS to give it a try. A new Wireshark plug-in for OpenDDS will be available in an upcoming release, so you can examine OpenDDS traffic (non-CORBA) on the wire.