ROS Resources: Documentation | Support | Discussion Forum | Service Status | Q&A

Chaos testing tool for Docker

In case you are deploying/running functionality (e.g. nodes) with Docker it can be worth looking at pumba. pumba is a “Chaos testing and network emulation tool for Docker” which enables killing/pausing/stopping/removing containers and introducing delay/loss/corruption into network traffic.


Would you have any examples of how to setup tests with this?

Might be nice to create a example package (using ros_tutorials or something) that shows how this can be used.

On thing that might reduce the value of testing with netem is that the middleware in ROS 1 was never really designed for anything but ‘perfect’ networks. Performance of a node graph drops really quickly when things like lossy links are introduced, and there’s not much user-level code can do to improve that.

For ROS 2 this is definitely a nice tool.

Right. I wanted to post in the “Next Generation ROS” category first. However as it is related to testing I ended up here. As the command line interface is quite simple I saw no need to add a tutorial. Are there ROS2 specifics which would make a tutorial reasonable?

Being able to reproduce say some of the benchmark results shown here with pumba would be cool: