Why is OpenWrt limiting my internet speed?

Why is openwrt limiting my internet speed?

Recently, I changed my ISP and upgraded my speed from 50 mbps to 400. To my surprise, I see my D-link Dir 859 router, running openwrt, capping my speed at 120 mbps. It was connected right after the ISP router by cable. So, I performed some basic tests.

First, I tested my cable and the physical ports of my Openwrt router by bypassing its routing, meaning, I marked as "untagged" one of its LAN physical ports and connected my PC directly to it via cable. Result: 100% of the speed, up to 400mpbs. I knew that, according to the specs, my router was able to achieve higher speeds, but I wanted to be 100% sure and also make a test with the cable.

Secondly, I put my ISP router in bridge mode. So, my openwrt router was able to grab an ipv4 directly from the ISP LAN (I don't use ipv6). Despite that, the speed was also limited to 120 mbps.

At the end, I made a backup of my openwrt and restored the initial settings. The speed, though, was still capped at 120 mbps.

Any idea why is that happening?

Because your router hardware simply isn't fast enough for 400 MBit/s.

On a good day, the 750 MHz mips 74Kc QCA9563 SOC of your router may be able to achieve ~150-200 MBit/s (less with PPPoE, more with software flow-offloading enabled), but at that point its back is hard against the wall (and you will already experience severe sawtooth-like lag spikes). These devices were designed with 50-100 MBit/s in mind around seven years ago, they simply won't cut it for significantly faster WAN connections.

While your situation isn't quite as pronounced as depicted above, you're pretty close to those figures already, so a lot of that advice is valid for you as well (but there still are some more traditional wireless routers able to cope with your demands, e.g. mt7622bv, ipq806x or ipq807x on a tighter margin, mt7621a only on a good day/ on paper; mvebu easily, but scratch that from your list due to its abandoned wireless support).

4 Likes

The DIR859 has a weak Qualcomm Atheros QCA9563 SoC. Expecting 400 mbps routed performance might be optimistic with OpenWrt.
https://forum.openwrt.org/t/so-you-have-500mbps-1gbps-fiber-and-need-a-router-read-this-first/90305

What version of OpenWrt is installed?

Is packet steering and software flow offloading enabled?

1 Like

Version: OpenWrt 19.07.3.
I have no idea about what the packet steering or software flow offloading option are.

I believed that this router was able to achieve speeds up to 400 mbps based on reviews like this, besides the technical specifications: https://www.pcmag.com/reviews/d-link-ac1750-wi-fi-router-dir-859

First of all, you really need to update to 21.02.x for security reasons; 19.07.x is EOL.

The OEM firmware does employ QCA specific hardware assisted NAT acceleration, which is not provided by OpenWrt (software flow-offloading follows a similar approach though), which means you will get a bit more performance that way.

3 Likes

Software flow offloading menu option will be in LuCI->Network->Firewall menu.

I'm not sure whether packet steering work for 19.07. If it is not already enabled, you can SSH into the router and execute these command to see if it makes any difference to performance.

uci set network.globals.packet_steering=1
uci commit network

It will add these to /etc/config/network file:

config globals 'globals'
option packet_steering '1'

Packet Steering can be enabled in 21.02 or later in LuCI->Network menu.

3 Likes

I will do that. I will try a new flash, since upgrading is always complicated because of lack of disk space.

After that, I will come back with the results.

Turns out I updated openwrt on my d-link dir 859 with a snapshot and, as expected, the speed barely increased from 120 to 140 Mbps. Of course this time I found the options for downloading software and hardware on the firewall page. But it was not enough to speed up to 400Mbps.

I've been looking for a router that meets this new need of mine, also that can be supported by a stable and updated version of openwrt with wifi support. This is a hard and tricky task I think, especially for a regular linux user like me. Could you give me some suggestions on this, ie some good and not too expensive routers with these characteristics?

https://openwrt.org/toh/linksys/e8450 would be an easy suggestion, supported starting with 22.03~ (so the current -rc5 will do, initial flashing might not be the most trivial thing though).

2 Likes

ram 64 mb how this device can work with ath10k or ath10k-ct?

I dont know, but it does work. I have wireless working perfectly on my DIR 859. These are the packages installed on my router: ath10k-board-qca988x and ath10k-firmware-qca988x-ct

The smallbuffers version (kmod-ath10k-ct-smallbuffers) is made for that situation. Also it's a good idea on 128 MB RAM, I have seen those run out of RAM with the standard version.