debug inter VM pub/sub comms

6 posts / 0 new
Last post
Offline
Last seen: 4 years 1 month ago
Joined: 09/23/2020
Posts: 4
debug inter VM pub/sub comms

Hi,

I have a pub/sub system running on a VM1. ( set as host only network on a Windows Machine )

I have created another VM2 using host only network settings. I have a pub/sub app on this machine, with topic set same as a publisher topic in VM1.

this pub/sub apps works okay on VM2. 

 

When I try to run only sub on VM2, to listen to messages from pub on VM1, which is using same topic as sub on VM2, I dont get any data.

 

On VM2 peer list from log is shown below:

[D0000|ENABLE] DDS_DomainParticipantDiscovery_enableI:value of: initial_peers="239.255.0.1,0@builtin.udpv4://127.0.0.1,1@builtin.udpv4://192.168.70.129"

192.168.70.129 is the IP of VM1

 

I am new to dds, please give me some pointers on how to debug this.

below is the peer list settings from QOS of both apps on VM1 and VM2.

 

<participant_qos>
<transport_builtin>
<mask>UDPv4</mask>
</transport_builtin>
<discovery>
<initial_peers>
<element>239.255.0.1</element>
<element>0@builtin.udpv4://127.0.0.1</element>
<element>1@builtin.udpv4://192.168.70.129</element>
</initial_peers>
<multicast_receive_addresses>
<element>239.255.0.1</element>
</multicast_receive_addresses>
</discovery>
</participant_qos>

 

Thanks

 

 

 

Kpsingh05's picture
Offline
Last seen: 2 years 7 months ago
Joined: 03/05/2020
Posts: 12

Hello Harpreet

a) First check whether both hosts are on the same network.

b) If yes, you can try rtiddsping on both side to check the network connectivity. You may refer the below article for debugging

https://community.rti.com/howto/do-basic-debugging-system-level-dds

c) pub/sub application sends discovery packets to the addresses mentioned in the initial peers. It is required to be exchanged for full communication

Regards

KP Singh

Howard's picture
Offline
Last seen: 7 hours 11 min ago
Joined: 11/29/2012
Posts: 605

Hi,

So, here's the explanation of a "host-only network",

The “host only” virtual network connects the virtual machine to the “host only”. In other words, the VM can only communicate with the host that is running VMware Workstation but it has no LAN network access, no Internet access, and no communication to other VMs that are running on the same host under Workstation.

Thus you can run your sub app on the host machine and talk to VM1 or VM2, but you can't get VM1 to talk to VM2.

You will need to change the networking on the VMs to be a bridged network or something that allows you to ping VM1's IP address from VM2 and vice versa.

Offline
Last seen: 4 years 1 month ago
Joined: 09/23/2020
Posts: 4

Thanks Howard. But it did not get the comms working yet.

Offline
Last seen: 4 years 1 month ago
Joined: 09/23/2020
Posts: 4

Thanks KP Singh.

I checked the link https://community.rti.com/howto/do-basic-debugging-system-level-dds

I have also changed both VMs to Bridged network.

ping works on both machines.

rttddsping application is not available on of the machines.

But when I used ping 224.0.0.1 , it does not show any response from both machines.

So I assume the there is something wrong with the multicast settings of the machines.

on VM1 I am running Ubuntu 18.04 and on other I am working with CentOS 8.

Let me know if you have any pointers to investigate/fix multicast issue.

 Also, my subscriber application on VM1 is vigin below message for ens33 (the network which my machine is using)

Whats does it mean?

RTIOsapiInterfaceTracker_linuxNotificationFnc:interface change event received
RTIOsapiInterfaces_getIPv4Interfaces:skipped lo
RTIOsapiInterfaces_getIPv4Interfaces:skipped ens33
RTIOsapiInterfaces_getIPv4Interfaces:skipped docker0
RTIOsapiInterfaces_getIPv4Interfaces:interface 0X100007F, flag 0X10049
RTIOsapiInterfaces_getIPv4Interfaces:interface 0X801A8C0, flag 0X11043
RTIOsapiInterfaces_getIPv4Interfaces:interface 0X10011AC, flag 0X1003
RTIOsapiInterfaces_getIPv4Interfaces:skipped lo
RTIOsapiInterfaces_getIPv4Interfaces:skipped ens33
RTIOsapiInterfaces_getIPv4Interfaces:skipped ens33
RTIOsapiInterfaces_getIPv4Interfaces:skipped ens33

Offline
Last seen: 4 years 1 month ago
Joined: 09/23/2020
Posts: 4

Thanks Guys this has been resolved.