Node Latency Questions
Hello everyone. I'm trying to understand the different latency issues that occur when using topics to stream data between nodes.
The default method is using TCPROS, which from how it was explained to me converts the data into XML data before it gets transmitted, and then has to be parsed back by the receiving nodes. Even if they're on the same processor. I'm going to conduct some of my own experiments to determine the latency, but since my setup is in a VM it might skew the results. So I'm wondering how bad the latency using this method is.
From some further reading it looks like UDPROS is faster at transmitting the data. I don't really understand why though. While looking around trying to learn more I also came across the ETHAZSL library
If I want to eliminate this issue altogether I could just make everything exist as nodelets under a single node, as they then just share memory. However there are some nodes that will need to exist in fully separate nodes (possibly over a network).
So in summary I'd like to understand how each of these methods works on the backend, and what some good approaches are to reducing latency in the system. How bad is the latency using TCPIP vs UDP?
Thanks!