We were in desperate need of additional ports at one of our smaller POP's and decided to give the CCR2004-16G-2S+PC a shot to replace a CCR1009-7G-1C-1S+. We're trying - hard - to move away from Cisco but running into capacity limitations far short of Mikrotik's published test results.
We perform very minimal NAT'ing on this router (<1mbps), have 0 filter rules and no queuing. It handles basic OSPF routing for about 1.5Gbps (peak)of traffic and the CPU of the new CCR2004-16G-2S+PC is running close to 90% CPU compared to the CCR1009 running at near idle. The attached graph shows the CPU usage transition from CCR1009 to CCR2004 at approximately 06:00 Friday and with connection tracking disabled (as a test) on the CCR2004 on Sunday @ 12:00.
It's not a true apples to apples comparison as this is looking at one CPU core (CPU0) but the average usage has jumped from roughly 20% to nearly 90% when making this transition. I've seen the articles regarding route-cache being disabled and causing higher CPU but this seem excessive and makes our transition to any new ARM hardware running v7 a downgrade in terms of performance, even on new hardware tailored for v7.
The 2nd screenshot shows a comparison in usage of 4 cores (# of cores in the CCR2004) - the other 5 cores in the CCR1009 were discarded when our NMS system recognized the new CCR2004, however the CCR1009 balanced CPU usage almost perfectly across all cores while the CCR2004 is spiking CPU0 to near full capacity (and limiting throughput) while other cores are running at 30%. What are we missing? How is Mikrotik getting 22Gbps of routing performance through this with no routing rules (512 byte packets)?
Mikrotik: Totally off subject but you've got to release DC power supplies for all your units that have modular power supplies. No WISP I know runs AC power for any remotely critical site.