first - I was not here for a long time, and second - I tried to read many possible related discussions, but not sure I have a clear answer to the problem we are facing - kind of slow TCP throughput.
Some time ago we bought two CCR-1036-12G-4S routers, assigning them two roles - MT1 (NAT, firewall, conntrack), MT2 (SQ (cca 300), no NAT, conntrack)). While we are not experts, the solution kind of works, and it seemed to us, that both routers were kind of bored, running at 0-1% of CPU usage
Some few weeks ago, it seemed to us, that the traffic from MT1 to the Internet constantly runs around 100Mbps, users started to complain, while we buy 200Mbps and peaks are usually at 160-180Mbps. We rebooted MT2 and the traffic went up to its average usage. That was repeating several times. We have then upgraded to the latest 6.22 RouterOS version.
In the end we have tried to do few tests. Well, I know that the btest being run directly on router is not optimal testing scenario, but otoh we are talking top grade routers here, and even during the tests, the cpu usage was at 3-4%.
While the UDP runs at 970Mbps, what we get for TCP is much slower. Well, I know it is supposed to be smaller, but so much smaller? We even eliminated switch between the routers and changed the eth connection for the sfp one. Now for sfp full duplex, we are getting around 260Mbps (100 tcp connections, 1500 bytes packets), and half duplex is around 380Mbps.
So - my question is - isn't it very low tcp throughput for such powerful routers? Is there anything we could try to improve the situation? We have tried various tricks of ticking IP/Settings/Allow HW fastpath on, then various interface queue types, but nothing seems to improve the situation.
Thanks for any pointers,