Hello everyone,
I am using the Routing Service (RTI DDS 5.3.0) and I cannot understand some things.
First of all I try to explain you how my application works:
I have three OS, 1 Windows (where there is a publisher app), 2 Linux (where the routing service run), 3 VxWorks (where there is a subscriber app).
2 and 3 are on a different subnet than 1 but Linux (2) has an interface to the Windows (1) subnet:
(1)WinPub <--> [ (2)LinuxRouter <--> (3)VxWorksSub ]
Since now I am just testing the communication between (1) and (2) and I would like to not use multicast, so I set the QoS properties of (1) and the routing service in order to use unicast (as it is explained here).
Unfortunately when I run my router, even if it is the only running executable, I still get the error:
DL Error: : COMMENDSrWriterService_assertRemoteReader:Discovered remote reader with GUID 0XAC16B53A,0X2AC6C,0X2,0X3C7 using a non-addressable multicast locator.
This can occur if multicast is not enabled in the local participant. See https://community.rti.com/kb/what-does-cant-reach-locator-error-message-mean for additional info.
DL Debug: : can't reach:
DL Debug: : locator:
DL Debug: : udpv4://239.255.0.1:7400
DL Debug: : aliasList: udpv4
If I use the same configurations between a normal Pub and Sub I do not get the error.
Do you know why is this happening?
Hi Antonio,
I found out that the error is due to the fact that <administration> and <monitor> have the same domain_id than the participants. If I put 0 and 1 for participant_1 and participant_2 and 100 and 101 for administration and monitor, the error does not occur anymore.
I do not understand very well why this happens... In your case does not happen?
Thanks for your assistance,
Luigi
I have another question: as I said, I have disabled multicast communication everywhere in WinPub, LinuxRouter and VxWorksSub.
If in WinPub QoS I do not add LinuxRouter IP Address to the initial_peers, obviously the communication does not work (because the discovery cannot find the router), but if I remove WinPub IP Address from the initial_peers of the router configuration xml file. the communication is still working.
Why is this happening? I was expecting a non-working communication removing the WinPub IP address from the initial_peers of the xml router config file, because, since multicast is disabled, the router discovery should not be able to discover WinPub...
Thanks,
Luigi
Hi Luigi,
It is expected because it is not necessary to have the initial peers in both entities.
It may work in the next three scenarios:
You can have more information about initial peers in the documentation.
Let me know if you understand it.
Best,
Antonio
Hi Antonio,
yes it is as you said.
I solved setting
<accept_unknown_peers>false</accept_unknown_peers>
to every partecipant (the default value was true), in this way the communication works only if the peers of each entity are known by the other entity (i.e. in the initial_peers list), that is the desired behavior.
Do you think it is a correct solution?
Thanks for your help,
Luigi