Router is running 21.02.1
ISP-speed is 250/25 MBit/s.
When I connect a 100 MBit/s device to one of the LAN-port the download speed is only 20-30 MBit/s.
When I connect the LAN-port to another GE capable switch and connect the 100MBit device then to the second switch I achieve 90 MBit/s.
So I assume that there is a problem with R7800 and 100 MBit speed.
Perhaps a duplex problem?
swconfig says the port is in full-duplex:
> root@RTR01:~# swconfig dev switch0 port 4 get link
> port:4 link:up speed:100baseT full-duplex txflow rxflow auto
Manually switching to 100MBit/s fails:
> root@RTR01:~# swconfig dev switch0 port 4 set link "speed 100baseT"
> Failed to set attribute: Operation not supported
So these are my questions:
How can I change the speed/duplex settings with swconfig on R7800?
How can I see ethernet errors, collisions etc.?
Usecase is an AP connected via telephone cable (only 100Mb capable).
You're right. It is a 4 pair telephone cable (15m CAT3?). And it worked quite well for a couple of years (with 100 MBit/s).
To exclude the cable, I did the testings with my laptop directly at the R7800.
Don't know, why the connecton is broken now. Perhaps the last OpenWrt update?
Therefore I want to investigate deeper. But I am unable to set speed and duplex manually on the R7800.
It is possible, but unlikely that the update directly impacted your connection speeds. More likely is that it was marginal in the first place and/or conditions changed (one or more of the conductors within the cable may be failing, or the terminations may be weak). Cat3 is rated for 10Mbps ethernet, although for short runs in relatively ideal situations, it may be able to run faster. Replace it with a proper 4-pair Cat5e or Cat6 cable and you should be good.
IMO, it is not worth investigating deeper unless you do it purely as an intellectual curiosity. Otherwise, you're wasting time digging into what will come down to a simple answer: the cable you've been using isn't up to spec for what you want to do with it.
The only "bad" combination is a 100MBit/s device connected to the R7800 when the R7800 is connected to ISP modem and has to route the traffic.
When I put another router between the ISP and let the R7800 switch everything is fine.
Also, when the R7800 routes and the speed is converted by another switch from 100 to 1000 everything is fine, too.
Good (WNDR3700 as speed-converter):
[ISP]-1GE-[WAN R7800 LAN]-1GE-[LAN WNDR3700 LAN]-100FD-[Laptop]
Speedtest ookla 76/28
Good (WNDR3700 as NAT and routing device):
[ISP]-1GE-[WAN WNDR3700 LAN]-1GE-[LAN R7800 LAN]-100FD-[Laptop]
Speedtest ookla 80/27
So it seems to be a problem with routing/natting traffic that comes from a 100MBit port.
And now I remember that I removed my virtual OPNsense FW, which was connected via gigabit to R7800. The 100MBit traffic was switched to the OPNsense box and there it was "converted" to gigabit line speed and went back to R7800.
That is an interesting finding. I wonder if it is a hardware limitation for the built-in switch or the topology within that device.
If you really want to test this fully, roll back to the stock firmware and test again. If the problem persists, it could be something related to the hardware. If it goes away, maybe there is a bug somewhere in OpenWrt.
If you're investigating, I'd also be curious if this causes the entire network to have issues, or just that single 100Mbps Half Duplex device (so if you do a test from machine "A" at 100M FDX or 1G FDX connected to the router while machine "B" is connected at 100M HDX, does machine "A" experience the same bottleneck)?
In the meantime, two thoughts:
do you actually need to worry about the 100M Half Duplex mode of operation (once you replace the cable)? Or is this all theoretical?
If a 100M HDX device will live on the network, can you insert a gigabit switch (as you have done in your test) to prevent that device from affecting the R7800?
Funny thing: when I reactivate my OPNsense FW as described here the speed over the 100FD line is good.
But wifi download connected to R7800 drops down to 80%.
Connection to R7800 with patchcord gives 100% download speed.
I gave up and bought an RT3200.
Now everything is fine