High cpu usage stuck @150mbit with PPPoE on hap ac2

Hi, I flashed openwrt to mikrotik hap ac2. With 4 cpu cores @ 716MHz and 128MB RAM looked good. Everything works, but I'm not able to get beyond ~140mbit on speedtest.net. With routeros the line works at full speed, but not with openwrt which I want to use. I tried also with archer c7 on the same line, which is a bit more powerful single core, but I got only ~150mbit. Maybe I have wrong setup. Can you please check it out and help me what to try?

When I run top while doing the speedtest, I see 25% CPU usage, which perhaps equals to 1 full CPU core utilization. Offloading in firewall have no impact, so it is not supported ig. Can be that PPPoE so much CPU intensive? With just NAT on ethernet (on another place and without pppoe) I got ~500mbit with the same archer c7, I have not tested mikrotik hap ac2 there.

Thank you.

  PID  PPID USER     STAT   VSZ %VSZ %CPU COMMAND
   94     2 root     RW       0   0%  25% [napi/eth0-5]
root@OpenWrt:/etc/config# cat /etc/config/network

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'
        option ula_prefix 'beef:beef:beef::/48'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'lan3'
        list ports 'lan4'
        option ipv6 '0'

config device
        option name 'lan1'
        option macaddr 'BE:EF:FF:FE:FE:01'

config device
        option name 'lan2'
        option macaddr 'BE:EF:FF:FE:FE:01'

config device
        option name 'lan3'
        option macaddr 'BE:EF:FF:FE:FE:01'

config device
        option name 'lan4'
        option macaddr 'BE:EF:FF:FE:FE:01'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask '255.255.255.0'
        option ip6assign '60'

config device
        option name 'wan'
        option macaddr 'BE:EF:FF:FE:FE:02'

config interface 'wan'
        option device 'wan.848'
        option proto 'dhcp'

config interface 'wan6'
        option device 'wan.848'
        option proto 'dhcpv6'
        option reqaddress 'try'
        option reqprefix 'auto'

config device
        option type '8021q'
        option ifname 'wan'
        option vid '848'
        option name 'wan.848'
        option mtu '1500'
        option macaddr 'BE:EF:FF:FF:FF:03'

config interface 'internet'
        option proto 'pppoe'
        option device 'wan.848'
        option username 'secret'
        option password 'secret'
        option ipv6 'auto'
        option mtu '1508'
root@OpenWrt:/etc/config# cat /etc/config/firewall

config defaults
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option flow_offloading '1'
        option synflood_protect '1'
        option flow_offloading_hw '1'

# rest is left with openwrt defaults
1 Like

That is quite likely, arm a7 is not the fastest CPU and 714MHz not the highest frequency... if true however it might help to move part of the load to different CPUs.
Try installing and activating irqbalance and activate packet_steering.

2 Likes

Thank you, I will try that.

Thank you! This worked for me:

uci set network.globals.packet_steering='1'
uci set firewall.@defaults[0].flow_offloading='0'
uci set firewall.@defaults[0].flow_offloading_hw='0'

Now I get ~240mbit out of 250 with stock, which is fine.

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.