Ethernet connects at 1GB, drops, then connects at 100MB

Hey there,

I’m suffering from an issue that’s basically what it says in the title. I have a 1GB connection and my PC connects to that fine when it boots, but after around 5ish minutes (which I haven’t timed) the connection seems to drop. Upon reconnecting, the link speed is downgraded to 100m/bits - along with what appears to be a whole load of latency.

I’ve tried to sort this issue myself, which involved installing NetworkManager, but I fear that might have actually worsened the issue rather than fixing it. For what it’s worth, this problem appeared out of no where - I’ve been running EndeavorOS as my primary on a dual-boot machine with Win11 since around February time and it’s been nothing but flawless.

The problem is that it seems to take a good 30 seconds or so to reconnect at the lowered link speed, which causes major issues when I’m in the middle of gaming.

I’ve had a look in journalctl and I’ve identified the following logs (redacted by ChatGPT because I’m lazy);

Sep 17 19:58:46 scallaway-pc avahi-daemon[769]: Leaving mDNS multicast group on interface enp6s0.IPv6 with address fe80::XXXX:XXXX:XXXX:1983.
Sep 17 19:58:46 scallaway-pc avahi-daemon[769]: Interface enp6s0.IPv6 no longer relevant for mDNS.
Sep 17 19:58:46 scallaway-pc NetworkManager[827]: <info>  [1726599526.1750] manager: NetworkManager state is now DISCONNECTED
Sep 17 19:58:46 scallaway-pc systemd[1]: Starting Network Manager Script Dispatcher Service...
Sep 17 19:58:46 scallaway-pc systemd[1]: Started Network Manager Script Dispatcher Service.
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1143] device (enp6s0): carrier: link connected
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1144] device (enp6s0): state change: unavailable -> disconnected (reason 'carrier-changed', sys-iface-state: 'managed')
Sep 17 19:58:55 scallaway-pc kernel: RTL8226B_RTL8221B 2.5Gbps PHY r8169-0-600:00: Downshift occurred from negotiated speed 1Gbps to actual speed 100Mbps, check cabling!
Sep 17 19:58:55 scallaway-pc kernel: r8169 0000:06:00.0 enp6s0: Link is Up - 100Mbps/Full (downshifted) - flow control rx/tx
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1149] policy: auto-activating connection 'Wired connection 1' (3fd05c08-a8bd-3542-947f-432786e0fff2)
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1151] device (enp6s0): Activation: starting connection 'Wired connection 1' (3fd05c08-a8bd-3542-947f-432786e0fff2)
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1152] device (enp6s0): state change: disconnected -> prepare (reason 'none', sys-iface-state: 'managed')
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1153] manager: NetworkManager state is now CONNECTING
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1153] device (enp6s0): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1211] device (enp6s0): state change: config -> ip-config (reason 'none', sys-iface-state: 'managed')
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1217] dhcp4 (enp6s0): activation: beginning transaction (timeout in 45 seconds)
Sep 17 19:58:55 scallaway-pc avahi-daemon[769]: Joining mDNS multicast group on interface enp6s0.IPv6 with address fe80::XXXX:XXXX:XXXX:1983.
Sep 17 19:58:55 scallaway-pc avahi-daemon[769]: New relevant interface enp6s0.IPv6 for mDNS.
Sep 17 19:58:55 scallaway-pc avahi-daemon[769]: Registering new address record for fe80::XXXX:XXXX:XXXX:1983 on enp6s0.*.
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.1229] dhcp4 (enp6s0): state changed new lease, address=XXX.XXX.XXX.XXX, acd pending
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.2748] dhcp4 (enp6s0): state changed new lease, address=XXX.XXX.XXX.XXX
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.2750] policy: set 'Wired connection 1' (enp6s0) as default for IPv4 routing and DNS
Sep 17 19:58:55 scallaway-pc avahi-daemon[769]: Joining mDNS multicast group on interface enp6s0.IPv4 with address XXX.XXX.XXX.XXX.
Sep 17 19:58:55 scallaway-pc avahi-daemon[769]: New relevant interface enp6s0.IPv4 for mDNS.
Sep 17 19:58:55 scallaway-pc avahi-daemon[769]: Registering new address record for XXX.XXX.XXX.XXX on enp6s0.IPv4.
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.2838] device (enp6s0): state change: ip-config -> ip-check (reason 'none', sys-iface-state: 'managed')
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.2844] device (enp6s0): state change: ip-check -> secondaries (reason 'none', sys-iface-state: 'managed')
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.2845] device (enp6s0): state change: secondaries -> activated (reason 'none', sys-iface-state: 'managed')
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.2846] manager: NetworkManager state is now CONNECTED_SITE
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.2847] device (enp6s0): Activation: successful, device activated.
Sep 17 19:58:55 scallaway-pc NetworkManager[827]: <info>  [1726599535.3812] manager: NetworkManager state is now CONNECTED_GLOBAL
Sep 17 19:58:55 scallaway-pc kdeconnectd[1656]: 2024-09-17T19:58:55 kdeconnect.core: Failed to send mDNS query: Cannot assign requested address

Downshift occurred from negotiated speed 1Gbps to actual speed 100Mbps, check cabling!

This is very suspicious, but my Win11 installation doesn’t have any issue maintaining the full connection speed.

As per the Arch forums, I’ve disabled fast boot etc. on the Windows partition just to cover that off as a possible cause.

I’ve also consulted ChatGPT (embracing the future) and its suggestion was to walk back to the R8168 driver (I’m currently on R8169) but I can’t seem to get that installed properly. Whenever I run sudo modprobe r8168 after installing extra/r8168-lts it can’t seem to be found. I’ve also tried to install just r8168 through yay -S r8168 but that seems to fail with a build error (and there isn’t a -bin option I can see).

Any information on this would be great, not being able to utilise my full speed is rather frustrating!

Thanks

Checking the cable is a good advice. Try a quality cable, and see if that helps. I have seen such things happening with cheap “slim cables”: which works with some NICs with Gbit speed and with others it falls back to 100 Mbit.

2 Likes

99% of time it is the cable and then when you don’t think it is the cable. It’s still ends up being the cable.

1 Like

I have seen such things happening with cheap “slim cables”

So I am using one of those, but what I don’t understand is the fact that it works fine on my other partition. I don’t see any speed drops in the same time period as I do on Linux.

In fact, just after I posted this I did another restart and the initial handshake resulted in a 100MB max connection speed, rather than starting at 1GB and dropping down.

Is there anything else that you would suggest?

So a bit of an update on this as it seems to be developing further…

It turns out that my Windows partition did end up suffering the same problem, but with my reluctance to swap out the cable (since it’s the only longer cable I have on me at the moment) I’ve swapped the port that it connects to in my switch and that seems to have fixed things -at least for now.

I’m going to continue to monitor the situation with the next step being replacing the cable in the event I get slowdowns again.

It’s been a long time since I was a cable monkey but it does sound very much like a bad cable -

To shed a little more light on it in a super-simplified manner, 1GB Ethernet runs on 4 pairs of wires within the cable acting as a single 1000mbit conduit. You’d think maybe this would mean 1 pair = 250mbit but long boring technical jargon :laughing:

If there’s anything wrong with the connections on one of those pairs it fails over to 100mbit because that’s just how the spec is laid out. This means the cables are remarkably fault tolerant but does lead to moments of intense head scratching where a cable both “works” and is also “faulty”.

What’s likely happened is your jostling of the cable when you’ve swapped ports has jiggled the bad connection back into a position where it’s working again, but is almost certainly going to start failing again unless you’re very lucky :smile:

1 Like