This result is ultra weird, my repeater has a 600 Mbit connection to OpenWRT and results don't get better by connecting by LAN. Also the Google speedtest to the internet delivers 300 Mbit. Both my router and Macbook have low CPU load while measuring. Even if I connect my laptop directly with a cable to the router I only get about 90 Mbit.
What am I doing wrong? Why is iperf delivering lower results than Google speedtest?
I think this thing simply has rotten WiFi (it probably still is a decent wired-only router)... Marvel WiFi was IIRC sold of to some one else and promptly forgotten...
Multistream and longer time did not help at all. Also testing it with an iperf server on a Raspberry Pi connected to the OpenWRT LAN port does not help.
FYI: I do not use the Linksys WRT1900ACS wifi, I connect to a Fritzbox and Fritzbox repeater. But even without wifi, directly connecting to the OpenWRT Linksys I only get 90 Mbit apparently it was the cable, with a fresh cat 7 cable I get 340 Mbit on the LAN port of the OpenWRT Linksys.
The big question is why the Google speedtest delivers close to 300 Mbit through wifi, but iperf 40.
And yes, it was an old unshielded patchcable that only did 100 Mbit, though the connection said gigabit.
But there also seems to be something wrong with the Fritzbox, maybe some kind of traffic shaping. If I connect by LAN to the Fritzbox and iperf the Fritzbox I get 300 Mbit, if I iperf the Linksys one hop away on Fritzboxes WAN port I get 45 Mbit.
The Google speed test runs between your computer and a Google speedtest server somewhere. This means the traffic goes through your router, but does not terminate on it.
The iPerf tests that you are running go between your computer and your router. This means that the traffic terminates on your router (either source or sink).
Most consumer grade routers have the ability to route traffic very rapidly thanks to specialized hardware that is optimized specifically for routing. But, because it is highly optimized for routing and not general purpose computing, that same hardware is not designed to be able to rapidly source or sink the traffic itself, so when you run iPerf on the router, the bandwidth will be limited by the speed at which the SoC can do general purpose computing. You can think of it as mail through the postal mail system (i.e. 'snail mail') -- the postal service is really good at moving parcels through their system, but if they were tasked with opening, reading, and re-sealing each piece of mail, you'd see a much slower flow of mail through the system.
As a general rule, if you want to run iPerf (or any bandwidth measurement tool) to understand the throughput of routers/switches/APs, you need to run the traffic through the device under test, using two devices capable of 'general purpose' computing (i.e. laptops/desktops, reasonably powerful SBCs, even phones/tablets) as the endpoints, also taking into account any bandwidth bottlenecks that these may have (for example, a Pi4 is fast and can easily saturate a gigabit ethernet link, but the wifi on the device is terrible and will significantly reduce the measured bandwidth if the Pi4 is used via wifi for a test).
Ah, what DSL link did you use it at last? VDSL2 50/10 by chance? FritzOS has some way to traffic shape that might have been set in the past and that might still be active somehow.
Ah, the fritzbox essentially operates as AP then? I guess the easiest would be to hook up to the primary router via a LAN port, but that would require disabling the Fritzbox's DHCP server and might not work with the VoIP functionality... However the 7590 generation should be fast enough to route/NAT traffic at close to 1 Gbps WAN line rate. I really wonder whether you not somehow enabled the Fritzbox's traffic shaping somehow? (Last time I used FritzOS was beginning of the 2000s, not sure the few things I still remember are still applicable, but I did run strace on a recent dsl deamon from AVM and it looks like they do use linux traffic shapers like HTB, at least under some conditions).
It is actually not an OpenWRT problem at all. The Fritzbox does traffic shaping. I had entered the speed of my internet connection (300 down, 50 up) in the Fritzbox, and apparently it shapes the traffic to 50 Mbit if it goes both ways. If I enter 1000 Mbit as connection speed I get around 500 Mbit iperf to the OpenWRT box instead of the 50.
Sorry for the confusion, and thank you for the help.