I was checking some bandwidth metrics on rmf_demos and came across some big differences between bandwidth usage depending on the DDS implementation that I used. These are the measurements of bandwidth on the loopback interface of a run of the office demo in one single host, executing the tasks
json file provided in the demo itself:
Average Bandwidth: 59.912703 Kbps
Max Bandwidth: 550.43 Kbps
Average Bandwidth: 594.39997 Kbps
Max Bandwidth: 961.26 Kbps
I can’t help to wonder why such a big difference. My initial guess is that, since everything runs in on the same host, the Shared Memory Transport feature of fastDDS is avoiding a lot of network traffic… any other clues?
For your reference, if anyone wants to reproduce, I used the latest source version of the rmf_demos and
ifstat -ntib lo to log the bandwidth usage.