0

My internet speed is supposed to be 100Mbps down and 10Mbps up, if I connect my PC directly to modem I can measure that, with a degree of error. So far so good. But if I connect PC to modem via router then my speed drops to 10Mbps/10Mbps. I tried Asus RT-AC51U and TP-LINK Archer C20 and both routers drop connection to roughly the same speed even though they should support speeds up to 100mbps. I don't know how to troubleshoot any further, any help would be much appreciated.

EDIT: I used same cable for PC-modem connection as for PC-router connection. I always used same port on modem but tried all 4 ports on router. I can further try other 3 ports on modem and change cable for model-router connection. Will report on that.

4
  • 1
    100Mbits per second is roughly 10MBytes per second (about 12 in reality). Are you mixing megabytes and megabits?
    – Mokubai
    Commented Mar 6, 2020 at 10:17
  • 1
    Are you using the same cable to test the direct connection to the modem vs the routers? Could be a CAT3 cable
    – LPChip
    Commented Mar 6, 2020 at 10:18
  • Also, is the router plugged into the same port on the modem as you plug in your cable? Also, tested the cable between the modem and router?
    – LPChip
    Commented Mar 6, 2020 at 10:19
  • @Mokubai speedtest.net uses Mbits/s, right? I measured 100mbps on speedtest.net (using PC-modem connection) so I think I didn't mix up units.
    – Dread Boy
    Commented Mar 6, 2020 at 11:20

1 Answer 1

1

Auto-negotiation of the speed between devices doesn't always result in a correct connection.

There is a reason it is called auto-negotiation of connection speed and not auto-detect. The negotiation can fail and in that case both devices are supposed to fall-back to a default.

Unfortunately there is no good definition in the auto-negotiation specification what that default should be. So each device can do whatever it wants. Some go to their highest supported speed, others to their lowest.
If both ends of the connection make a different choice this leads to a mismatch resulting in slow speeds.

This could lead to the router thinking it is connecting to a 10/10 modem instead of making a 100/100 connection.

In the settings of the router check the WAN port settings and see if you can force the connection to 100 Mb/s, full-duplex. That usually solves this problem.

3
  • I didn't find a way to set port speed but I end up factory resetting the router which solved the problem. I'll accept the answer because it probably correctly identified the problem.
    – Dread Boy
    Commented Mar 6, 2020 at 12:01
  • The auto-negotiation specification in IEEE 802.3-2015 section 28.1.1 says that if the device doesn't receive any "fast link pulses" (i.e. no autonegotiation support) but does receive normal link pulses, it must treat the other end as a 10BASE-T device. Section 28.2.3.3 says that if autonegotiation is done but there is no common speed between the two devices, the link must not be established at all (disabling the PHY and indicating link_status=FAIL). Commented Mar 6, 2020 at 14:22
  • @user1686 I know, but the fact is that many routers and modems implement the standard very badly. Many devices seem to pick an arbitrary speed when auto-negotiation fails. Or just try various combinations until something works. If both ends of the connection do that (I had it happen at home with an Arris Docsis modem and a D-Link router) it is even possible they never agree on a speed. In all cases setting a manual speed (if possible) will fix that. Sometime a reset of one side will re-establish a connection, but in that case it can easily go wrong again on the next reboot.
    – Tonny
    Commented Mar 6, 2020 at 14:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .