Multicast discovery QoS problem

5 posts / 0 new
Last post
gus
Offline
Joined: 08/04/2015
Posts: 3
Multicast discovery QoS problem

We've recently been reorganising a large DDS based project, and have started having problems with discovery. Wireshark captures show the participants successfully sending out multicast discovery packets, but never responding to each other when we use one of our QoS profiles. rtiddsspy will successfuly connect to one of our participants on the network if we use the default profile, but not if we use our own profile. Dissecting the discovery packets from rtiddsspy in wireshark seems to show that successful discovery happens if the multicast packet contains a PID_METATRAFFIC_MULTICAST_LOCATOR in the serializedData section, and not otherwise (there are no other obvious differences between the packets).

What setting in a QoS profile could be preventing PID_METATRAFFIC_MULTICAST_LOCATOR being added to the multicast discovery packet being sent?

Keywords:
Offline
Joined: 05/23/2013
Posts: 47

Hi,

The following link describes how to disable multicast.
https://community.rti.com/howto/configure-rti-connext-dds-not-use-multicast

If your QoS profile has changed one of QoS settings introduced in the link from the default, it would possibly disable the multicast-based discovery. 

It would be helpful for me to solve your issue if you can share your QoS profile.

Thanks,
Kyoungho

gus
Offline
Joined: 08/04/2015
Posts: 3

Thanks for the reply Kyoungho,

I don't have the QoS file handy right now. I'll post that tomorrow morning.

However, to be clear, multicast isn't disabled. All the participants are successfully sending multicast discovery packets to each other (confirmed with wireshark), but none of them will respond. rtiddsspy will connect when using its default QoS, but not when using our QoS, and the only difference I can see between the two types of discovery packet it sends was the missing PID_METATRAFFIC_MULTICAST_LOCATOR.

gus
Offline
Joined: 08/04/2015
Posts: 3

Ok, we seem to have fixed it using one of the tags mentioned in your link. Our multicast_receive_addresses tag was empty. Once we added an address to it, PID_METATRAFFIC_MULTICAST_LOCATOR showed up in our discovery packets, and the participants were able to discover each other. multicast_receive_addresses doesn't seem to have been necessary in rtidds version 4.5d, but when we upgraded the last of our participants to 4.5f, it stopped working.

Thanks very much for your help!

Offline
Joined: 05/23/2013
Posts: 47

Great!