Hi,
I got one entity communicating with protocol v1.0 in multicast on domainId=39 with participantIdx=0 on port 7790
I try to match it with another entity using RTI ME which use protocol v2.1.
I thought that creating participant with id=39 would be enough but with wireshark, this ID has nothing to deal with the one in protocol.
I had to create participant with id 975 to obtain a domainID=39.
But then there is a mismatch with the ports.
I try to use the excel file, but when i change it to obtain appropriate ports, the domainId changed to 0.
So my questions:
1/ Is it possible to match participants with protocol v1.0 on one side and v2.1 on the other ? ( I guess yes)
2/How to do it ? :)
My settings:
domainId | 975 |
PB | Port BaseNumber | 7790 |
DG | Domain Id Gain | 0 |
PG | Participant Id Gain | 2 |
d0 | Discovery Multicast Port Offset | 0 |
d1 | Discovery Unicast Port Offset | 10 |
d2 | User Data Multicast Port Offset | 1 |
d3 | User Data Unicast Port Offset | 11 |
Normally should give
Port Name / Use | port |
Discovery Multicast Port | 7790 |
But with wireshark messages are with:
User Datagram Protocol, Src Port: 65486 (65486), Dst Port: 7790 (7790)
Default port mapping: domainId=1, participantIdx=65, nature=UNICAST_METATRAFFIC
and the other entity with:
User Datagram Protocol, Src Port: blackjack (1025), Dst Port: 7790 (7790)
Default port mapping: domainId=39, participantIdx=0, nature=UNICAST_METATRAFFIC
Hi,
Do you really have an entity running the RTPS protocol version 1.0? This has not been around for many many years now... Which product/version are you using for that?
Assuming you indeed have an RTPS 1.0 application, RTPS 1.0 it does not interoperate with RTPS 2.1. Only protocols with the same major version number interoperate so 1.x does not interoperate with 2.x
As a side note, I am curious why you used Domain Id Gain (DG) of 0. This does not make a lot of sense to me. If you look at the formula for RTPS ports describes in this post, you can see that with a DG=0 you are assigning the same ports to all domain Ids which is does not seem what one would want...
Gerardo
Hi,
Thanks for your reply.
RTPS v1 was also a product of RTI (seen with wireshark).
The domainId Gain to 0 was a try to "play" with the formula to have the domain ID and the targeted ports compatible with my entity in v1
In fact, with a gain of 10 instead of 250, the ports are corresponding but then domain ID is no more good.
But as you said, what i wanted to do is not possible (1.x with 2.x).
Regards,
Rodolf
Hi Rodolf,
Yes we (RTI) did use RTPS v1 in some of our old products... I was just trying to make sure you really meant that :)
The differences between 1.x and 2.x are not just port numbers as you have discovered. A lot of things changed, including submessage headers, size of reader/writer global unique identifiers, etc. If that wasa not enough the RTPS protocol requires that compliant implementations check the major version number and reject packets that do not belong to the same major version. So as soon as RTPS v1.x sees the 2.x in the header is will reject the packect and the same will occur when the RTPS v2.x gets the RTPS v1.x header.
Gerardo