Solved RT-N66U uses 100% CPU when downloading from my own computer and going through WAN, but not when someone else does. What could be affecting it?

  • ATTENTION! As of November 1, 2020, you are not able to reply to threads 6 months after the thread is opened if there are more than 500 posts in the thread.
    Threads will not be locked, so posts may still be edited by their authors.
    Just start a new thread on the topic to post if you get an error message when trying to reply to a thread.

Fire-Dragon-DoL

Occasional Visitor
Premise: I have 1gbit up and down that reaches ~800mbit up/down based on speedtest.net

I did some more serious tests this morning and it seems like I can upload ~760mbit/sec to a friend (has gigabit too) by serving a file with NGINX from my laptop (directly from RAM). I am able to download a file with the same speed from a server. Both have about 5 to 10% cpu usage of my router.
However, when I download a file "from myself" when passing through WAN, the cpu usage skyrockets to 100% and I get 150mbit speed.

It seems like it's a router mis-configuration (or a firmware issue, who knows).
What could help diagnoses the problem?

I'm using an RT-N66U with Asuswrt-Merlin 380.70.
I don't have anything special configured, aside from a couple of open ports and DHCP reservations. I do have the VPN Client and server configured, but not in use.
Hardware acceleration is enabled too.

hw_enabled.png


Any idea what could be causing this?
This is the list of processes running when downloading from my own laptop:
dl_cpu_usage.png
 

john9527

Part of the Furniture
However, when I download a file "from myself" when passing through WAN, the cpu usage skyrockets to 100% and I get 150mbit speed.
By this, you mean you are connecting to your WAN address from your local network?
If so, that's nat-loopback and I think that will bypass HW acceleration. Does it work if you use your local router address?
 

Fire-Dragon-DoL

Occasional Visitor
Yes, I use a domain which reference the public IP address of my router. My router has a port forwarding directed to my laptop.

I can't use the local router address though, the file is located on my laptop, if I use the local router address, the port forwarding doesn't apply to my network ips (router is 192.168.1.1, laptop is 192.168.1.6)
 

Fire-Dragon-DoL

Occasional Visitor
By this, you mean you are connecting to your WAN address from your local network?
If so, that's nat-loopback and I think that will bypass HW acceleration. Does it work if you use your local router address?

Thanks, your input was INVALUABLE and you saved me months of debugging.
And I was able to solve this nightmare without purchasing a new router, however I'm thinking of getting one that has hardware support for NAT Loopback (any recommendation?).
My solution was to use dnsmasq (preinstalled on the router with RMerl firmware) to point the domains to local IP addresses. (Hosts file on the router would have achieved the same too).
It's not perfect, but it does the trick, I'm now getting ~90MB/sec download speed.

I wonder what sorts of problem it will cause the domain caching in the browser though.
On the upside, I think I always poweroff my computers when leaving home network, so the cache should be cleared (I did some tests).
 

Similar threads

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top