Hi all,
We had some TTL problems in our network lately, where some changes in the network caused the TTL that we set for discovery in the QoS to be too low.
I spoke with our network-engineers and they said that they see no reason not to set the TTL to a the max (255).
So I tried to set the discovery-ttl to 255, and then noticed that while discovery messages were sent with that TTL (as could be seen with wireshark) they were never received by any other machine on the network. Reducing the TTL to something smaller, but still large enough did work.
Our network-engineers say that they see no reason for something to block packets with 255 TTL. They said that maybee something else is wrong with the packets (even if they appear normal on wireshark), that causes them to be dropped - maybe a bug or known issue with setting TTL to 255 in DDS.
Can someone think of a reason for that to happen? Is TTL of 255 supported by RTI?
We are using RTI Connext 4.5f.
Also, Here are the transport settings that wer'e using:
<element>
<name>dds.transport.UDPv4.builtin.parent.message_size_max</name>
<value>65535</value>
</element>
<element>
<name>dds.transport.UDPv4.builtin.send_socket_buffer_size</name>
<value>524288</value>
</element>
<element>
<name>dds.transport.UDPv4.builtin.recv_socket_buffer_size</name>
<value>2097152</value>
</element>
<element>
<name>dds.transport.UDPv4.builtin.multicast_ttl</name>
<value>62</value>
</element>
<element>
<name>dds.transport.UDPv4.builtin.protocol_overhead_max</name>
<value>64</value>
</element>
<element>
<name>dds.transport.shmem.builtin.parent.message_size_max</name>
<value>65535</value>
</element>
<element>
<name>dds.transport.shmem.builtin.receive_buffer_size</name>
<value>2097152</value>
</element>
<element>
<name>dds.transport.shmem.builtin.received_message_count_max</name>
<value>2048</value>
</element>
<element>
<name>dds.builtin_type.string.max_size</name>
<value>2048</value>
</element>
Thanks,
Meir
Hi Meir,
I do not know of any problem in RTI Connext DDS associated with setting a TTL of 255. All we do with the TTL value is pass it to the socket layer so that the IP datagram goes out with the right header. We do not interpret it in any manner.
You said you can see the packet go out with Wireshark. Is this in the sending or the receiving computer? If it indeed arrives in the receiving computer then I am at a loss regarding what could be happening...
Is it something really special about the value 255? If you set it to 254 then everything works?
If I were to suspect something I would suspect some router, the operatig system, or the network card treating the value 255 as special. I searched on google to see if such problems had been reported but did not fing anything.
Gerardo