Hi Nick,
After putting Jasmin in production, I started following your threads because of the same issues. My system before was effortlessly able to support 2500 TPS. With Jasmin running under docker, the default is 1 TPS. The router is the slowest as you said, as receiving the messages on to the first user connector is no problem. However, by the time it gets routed to the SMSC, it results in 1 TPS. I tried all the methods you mentioned including the multi-plexer, multiple dockers etc, and I can still only get to 400 TPS (end to end) on this server. It is still good but my older system did 6x more than this on the same server. (Intel 12 core @ 2.5GHz, 32GB RAM).