Speed limited to 90 Mbit/s on a 200 Mbit/s plan

I am seeing download speeds top out at approx 90 Mbit/s. The ISP is providing 200 Mbit/s downstream. Their techs claim that all the specs in the Multifunction modem checkout and that the OpenWRT router must be to blame. I do not believe there is anything in the R7800 (19-Feb-2023 snapshot) is configured to throttle the downstream speed. I do not have SQM enabled.

  • Could any other setting in the R7800 be causing the low speeds?

Network architecture is fairly simple:

[     ISP-provided     ]
[ Multlfunction device ] <--> [ Netgear R7800 ] <--> [ Netgear GS105 ]
[ (set to bridge mode) ]           |      |                  |
                                   |      |                  |
                                  PC1    PC2                PC3
  • Speed tests to multiple web-based or cli based tests are consist: ~90 Mbit/s
  • This is true on a wired PC or on wireless clients
  • R7800 CPU use is <37% when running the speed test/no way it's CPU-bound
  • Using iperf3 on the R7800 gives >850 Mbit/s throughput to wired clients and >650 Mbit/s to wireless clients
/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 'fd74:9589:935a::/48'
  option packet_steering '1'

config switch
  option name 'switch0'
  option reset '1'
  option enable_vlan '1'

config switch_vlan
  option device 'switch0'
  option vlan '1'
  option vid '1'
  option description 'lan'
  option ports '1 2 3 4 6t'

config switch_vlan
  option device 'switch0'
  option vlan '2'
  option ports '0t 5'
  option vid '2'
  option description 'wan'

config switch_vlan
  option device 'switch0'
  option vlan '3'
  option vid '3'
  option description 'iot'
  option ports '6t'

config switch_vlan
  option device 'switch0'
  option vlan '4'
  option vid '4'
  option description 'guest'
  option ports '6t'

config interface 'lxc'
  option device 'lxcbr0'
  option proto 'static'
  option netmask '255.255.255.0'
  option delegate '0'
  option ipaddr '10.0.4.1'

config interface 'lan'
  option device 'br-lan'
  option proto 'static'
  option ipaddr '192.168.1.1'
  option netmask '255.255.255.0'
  option delegate '0'

config interface 'IOT'
  option device 'br-iot'
  option proto 'static'
  option ipaddr '192.168.200.1'
  option netmask '255.255.255.0'
  option delegate '0'

config interface 'guest'
  option device 'br-guest'
  option proto 'static'
  option ipaddr '192.168.2.1'
  option netmask '255.255.255.0'
  option delegate '0'
config interface 'wan'
  option device 'eth0.2'
  option proto 'dhcp'
  option peerdns '0'
  list dns '1.1.1.1'
  list dns '1.0.0.1'

config interface 'wan6'
  option device 'eth0.2'
  option proto 'dhcpv6'
  option auto '0'
  option reqaddress 'try'
  option reqprefix 'auto'

config device
  option type 'bridge'
  option name 'br-lan'
  list ports 'eth1.1'
  option ipv6 '0'

config device
  option type 'bridge'
  option name 'br-iot'
  list ports 'eth1.3'
  option ipv6 '0'

config device
  option type 'bridge'
  option name 'br-guest'
  list ports 'eth1.4'
  option ipv6 '0'

config device
  option type 'bridge'
  option name 'lxcbr0'
  option ipv6 '0'
  option bridge_empty '1'

config device
  option name 'eth1.1'
  option type '8021q'
  option ifname 'eth1'
  option vid '1'
  option ipv6 '0'

config device
  option name 'eth1.3'
  option type '8021q'
  option ifname 'eth1'
  option vid '3'
  option ipv6 '0'

config device
  option name 'eth1.4'
  option type '8021q'
  option ifname 'eth1'
  option vid '4'
  option ipv6 '0'

This doesn't seem like the ISP device is in bridge mode... it looks like it is in router mode based on the fact that you have multiple devices connected downstream. A bridge mode device will usually provide the ISP provided IP (often just one) directly to the first downstream device, and therefore it would be modem > router > lan devices.

Do PC1 and PC2 get the full expected speed (i.e. 200Mbps)?
Have you checked the physical link speed of the connection to the R7800 (it may be running at 100Mbps)?

Just to state its physical abilities, the r7800 can deal with up to 400-600 MBit/s depending on the details (with sqm just under 200 MBit/s).

Are you using the gs105 as a router? It would struggle to route 100mbps

No, it is an unmanaged switch and is not the bottle neck. I confirmed iperf3 tests through the switch that get >850 Mbit/sec throughput.

Then the 7800 is acting as AP, not router, one can assume ?

So, as others have asked, why do you have a switch upstream from your router?

How many ip addresses is your isp assigning you? (To give 3 public ips to the router and 2 pcs?)

I messed up my original diagram which has now been edited, sorry for the confusion.

  • R7800 is a firewall/router/access point
  • There is a single public IP from the ISP

Ok. So, have you checked the physical link speed between the isp modem and the router?

Unfortunately, I cannot run iperf3 on their hardware. The only diagnostic tools in the web GUI are traceroute and ping it seems.

Try swapping the cable. That is an easy first thing to try.

Agreed. I did with no change in the result. As an aside, the ISP provided device is an It is an Arris TG3452A. And interestingly, it does not detect my R7800 behind it. I do not know if that is relevant as everything else on the R7800 works... the wan interface for example is getting the external IP from the Arris just fine, all devices behind it behave as they should, incoming ssh traffic I configured is working as expected, etc.

The TG3452A is reachable on 192.168.100.1. I can ping this IP from PC3 (haven't tested others).

I was poking around in the web GUI for the Arris and found under "Hardware>Ethernet" that all 4 of the ports on it were auto configured to run in 100 Mbps mode. I unchecked the "auto configuration" option and manually selected 1000 Mbps mode for the port connected to the R7800's uplink "WAN" port. Upon doing that, my connect to the device (ssh) stopped responding:

I think that is in fact the problem. On the R7800's switch control, take a look at the port status for WAN:

So either that Arris device supplied by the ISP is not able to negotiate 1000baseT, or something is bad in my Cat6 patch cable I am using to connect the Arris to the R7800 would be my guess. I tried a known-good cable so I am thinking the problem is with that Arris device. Someone check my thinking.

EDIT: the issue was the physical connection from the Arris to the R7800. The keystone jack was to blame. Replacing it with a fresh one solved the issue/the switch interface shows 1000baseT full-duplex and speeds are full 200 Mbit down.

You can test the arris by connecting a pc to it directly and seeing whether the auto negotiation works.

Also, if you turn off auto negotiation in the arris device you should set the 7800 to 1000 full duplex manually as well.

What ver of openwrt is on the 7800? Edit, saw you’re running a snapshot, suggest going back to stable to eliminate any issues with the snapshot

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