850Gx2 over 350Mbit NAT

Using a default configuration with just pure NAT and fasttrack enabled a PPPoE client running 6.36.3 the CPU pegs out at 100% at 350Mbit down and 280Mbit up.
I’m running on a GPON fibre connection that’s 1000/500 and using a Edge Router Lite I can get 880/420 and a standard consumer grade Huawei HG659b I can get 960/450.

What can I do to improve the throughput as there are various threads but nothing definitive in regards to getting anything like 600Mbit or higher speeds.

What says the profiler?

http://wiki.mikrotik.com/wiki/Manual:IP/Fasttrack

it also should be supported on your RB850Gx2, but the wiki does not mention it. give it a try.

Make sure “Switch all ports” is disabled. Definitely seems like you’re hitting software as my RB850Gx2 with some basic QoS also maxes out around 350-400mbps. Maybe PPPoE can’t be fasttracked?

Until recently that was the case. I believe from version 6.36 fasttrack can be used woth PPPoE. It was around this version - as I recall to see users complaining of problems, brought by this change.

What’s new in 6.35 (2016-Apr-14 12:55):

*) arp - apply Linux Kernel patch to stop RouterOS from randomly exhibiting misplaced ARPs;
*) mipsbe - (excluding RB4xx and CRS series) fixed rare ethernet tx buffer corruption;
*) nand - implemented once a week nand refresh to improve stored data integrity (will increase sector writes);
*) pppoe-client - implemented fastpath support;
*) l2tp - implemented l2tp and lns fastpath/fasttrack support;

Fastpath is quite different from fasttrack, if you still have to do NAT then you’ll be in software.

i’d politely disagree with that.

fasttrack = FASTpath + connection TRACKing

see http://mum.mikrotik.com/presentations/DE16/presentation_3522_1464868878.pdf slide #20.
or https://youtu.be/vx8dm-B26Do?t=746

according to http://wiki.mikrotik.com/wiki/Manual:IP/Fasttrack “IPv4 FastTrack handler supports NAT”.
true though, that only IPv4 TCP and UDP are supported, thus no performance boost with IPv6. for whatever it is, it will
be still “software”, the difference would be to not walk through all the checks/matches but use the “cached” information
and process packets (still using the CPU) the leanest possible way.

so fasttrack requires fastpath driver support for the interface you forward packets with. as i do not have rb850g, i can’t verify whether
the interface drivers support fastpath.

one reason for the high cpu util could be fragmentation. make sure the pppoe client creates the necessary mangle rules to clamp down
the TCP MSS, so the IP MTU will be 1492 bytes tops.