RB1200 NAT performance (throughput)

Hello guys!

I manage a RB1200 router, and since it has all GigE ports I assumed it has enough routing capacity for them.

But once we upgraded our WAN link to 500 Mbps, RB1200 started hitting the CPU peak (100%) at approximately 200 Mbps. I tested the same link with Apple AirPort (a home router!) - it offers the full 500.

Do you think it’s normal - is RB1200 too junior for 500 Mbps WAN? My config has no queues, it’s pretty much a single NAT rule. Nevertheless, Profiler shows “queueing” at 50% (even though I have no queues and all ports are set to hardware queues) in addition to the firewall (which makes sense - this is NAT).

Appreciate your advice!

RB1200 is a quite old and discontinued model with small CPU so it’s not so powerful to handle a lot of traffic.

It has many Gigabit ports but not all of them are connected directly to the CPU as shown in the block diagram
https://i.mt.lv/routerboard/files/Block-RB1200.pdf
Not that this is your limitation anyway (I am just mentioning it because having a lot of ports does not mean that it can forward 1Gbit x ports total. Switches usually work this way where all ports have wirespeed, routers usually don’t)

There’s FastTrack which allows small CPUs to handle a lot more traffic on the same hardware.
https://wiki.mikrotik.com/wiki/Manual:IP/Fasttrack

But I don’t see the 1200 series listed in supported hardware so I guess there isn’t much you can do.

Regarding the queuing process in profile, you can try setting in Queues > Interface Queues the queue type to only-hardware-queue on your ethernet interfaces if it’s not already set.
https://wiki.mikrotik.com/wiki/Manual:Queue#Queue_Types

My RB2011 can handle up to 900mbps over pppoe. Fastrack active.
I’m pretty sure it should route more than 200mbps. Check cpu speed, maybe is set to low.

RB2011 is completely different than RB1200

As Cha0s correctly pointed out, 1200 doesn’t support Fasttrack :confused:

Hmm, but according to specs, RB2011 has the same/similar processor?

By the way, if I understand the scheme you provided correctly, it’s better to place client networks within the first few ports (Gigabit switch) and WAN on ports 6, 7 or 8? Judging from the scheme, for CPU-dependant scenarios (like NAT in my case) this will give twice the throughput from the ports to the CPU?

Almost purchased a new router, but first decided to update the firmware and voila - just a software update alone increased the throughput from 150 Mbps to 450 Mbps :wink:)

Would never expect a firmware update to have this dramatic effect!

I’m pretty sure that fastrack is involved in speed increase.
Mikrotik documentation was always flaky.
But anyway, lucky you.

Well, it was off - I had no fast track rules in the firewall. So, a firmware update alone was enough! :slight_smile:

Anyway, I’ve replaced 1200 with 2011 and it performs even better now - 500 Mbps of bandwidth results in only 50% cpu use. And according to tech specs, 2011’s CPU is actually slower!

Stick some fast track rules in and your throughput will increase further and/or your CPU use will come down.

first of all check how ports you are using are connected to CPU:
https://i.mt.lv/routerboard/files/Block-RB1200.pdf

In short use ether6, ether7, ether8 for most intense traffic
Then use ether1-5
and only use ether9, and ether10 for managment or low traffic.