My first post here, so please bear with me.
I am facing a pretty weird performance issue and I don't know where to look further.
Setup: two LANs connected to fast Internet links. Description is "bottom-up", i.e. from the 'deepest' device towards the Internet connection. All connections are wired.
Site A: Windows box (Windows-A), connected to a Netgear R7000 in AP mode (Switch-A), connected to a Linux gateway (Router-A), which does the NAT and then plugs into the fiber link and onwards to the Internet.
Site B: Linux box (Linux-B, with GbE link into a router); Raspberry Pi 3B+ (RPi-B, "GbE" link to the same router - I know, the RPi only does < 300 Mbps on the cable connection); that router (Router-B) does the NAT and is connected to the fiber link. The Linux-B uses the RPi as a gateway.
Slightly more graphical (path description):
Linux-B --> RPi-B --> router --> Internet --> Router-A --> Switch-A --> Windows-A
Problem: speeds are inconsistent / illogical when testing throughput between devices on different sites. Data in the attached image:
Or the URL, if the embedding doesn't work: https://www.imgpaste.net/image/H4q95
Line headers are the source of the test, column headers the destination (e.g. line 2, column 2 means "speed test from Linux-B to RPi-B is 237 Mbps").
All tests done with iperf3, all speeds in Mbps. All connections are wired. All MTUs are 1500 on all interfaces involved.
What I can understand:
1. Poor (<300 Mbps) speeds within site B (from Linux-B to RPi-B and reverse), which are limited by the Raspberry Pi's LAN speed.
2. Relatively poor speeds when Switch-A is tested locally (i.e. from Router-A to Switch-A or from Windows-A to Switch-A or the other way around). This appears to be limited by the CPU on Switch-A (it is a dual core and I see usage going to ~55% during the testing, which means one core fully loaded).
What I cannot understand:
The drop in speed when testing across sites and going "one level below" the entry point. For instance, RPi-B to Router-A is 113 Mbps (effectively the site-to-site link, limited by the upload speed at site B), but Linux-B to Router-A is just 42 Mbps and RPi-B to Windows-A is just 28 Mbps. What is causing this drop in speed when going one more hop, as locally the speed is fine in each site?
I am facing a pretty weird performance issue and I don't know where to look further.
Setup: two LANs connected to fast Internet links. Description is "bottom-up", i.e. from the 'deepest' device towards the Internet connection. All connections are wired.
Site A: Windows box (Windows-A), connected to a Netgear R7000 in AP mode (Switch-A), connected to a Linux gateway (Router-A), which does the NAT and then plugs into the fiber link and onwards to the Internet.
Site B: Linux box (Linux-B, with GbE link into a router); Raspberry Pi 3B+ (RPi-B, "GbE" link to the same router - I know, the RPi only does < 300 Mbps on the cable connection); that router (Router-B) does the NAT and is connected to the fiber link. The Linux-B uses the RPi as a gateway.
Slightly more graphical (path description):
Linux-B --> RPi-B --> router --> Internet --> Router-A --> Switch-A --> Windows-A
Problem: speeds are inconsistent / illogical when testing throughput between devices on different sites. Data in the attached image:
Or the URL, if the embedding doesn't work: https://www.imgpaste.net/image/H4q95
Line headers are the source of the test, column headers the destination (e.g. line 2, column 2 means "speed test from Linux-B to RPi-B is 237 Mbps").
All tests done with iperf3, all speeds in Mbps. All connections are wired. All MTUs are 1500 on all interfaces involved.
What I can understand:
1. Poor (<300 Mbps) speeds within site B (from Linux-B to RPi-B and reverse), which are limited by the Raspberry Pi's LAN speed.
2. Relatively poor speeds when Switch-A is tested locally (i.e. from Router-A to Switch-A or from Windows-A to Switch-A or the other way around). This appears to be limited by the CPU on Switch-A (it is a dual core and I see usage going to ~55% during the testing, which means one core fully loaded).
What I cannot understand:
The drop in speed when testing across sites and going "one level below" the entry point. For instance, RPi-B to Router-A is 113 Mbps (effectively the site-to-site link, limited by the upload speed at site B), but Linux-B to Router-A is just 42 Mbps and RPi-B to Windows-A is just 28 Mbps. What is causing this drop in speed when going one more hop, as locally the speed is fine in each site?