0

OK, I got the following situation: I have a laptop with a usb (3.0) attached gigabit lan card. On the other hand I have a banana pi and a FritzBox which are also gigabit capable.

If I connect everything using short cables I get a transmission of about 1GBit/s. Thus the card is correctly configured and works as expected.

I now put a (long) CAT5e cable in my apartment through which I wand to connect the gigabit LAN. If I tried it, I get only about 100MBit/s.

Further looking results in

# ethtool eth1
Settings for eth1:
    Supported ports: [ TP MII ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Half 1000baseT/Full
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  100baseT/Full
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                         100baseT/Half 100baseT/Full
                                         1000baseT/Half 1000baseT/Full
    Link partner advertised pause frame use: Symmetric Receive-only
    Link partner advertised auto-negotiation: Yes
    Speed: 100Mb/s
    Duplex: Full
    Port: MII
    PHYAD: 32
    Transceiver: internal
    Auto-negotiation: on
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: yes

You see, that the available speeds are detected as 1000baseT on both edges but the actual speed is set to 100baseT, which is consistent with the measurement of 100MBit/s.

If I try to alter the speed to gigabit, the connection drops and reinitializes after a few seconds.

# ethtool -s eth1 speed 1000
# ethtool eth1
Settings for eth1:
    Supported ports: [ TP MII ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Half 1000baseT/Full
    Supported pause frame use: No
    Supports auto-negotiation: Yes
    Advertised link modes:  100baseT/Half
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Speed: 10Mb/s
    Duplex: Half
    Port: MII
    PHYAD: 32
    Transceiver: internal
    Auto-negotiation: on
    Current message level: 0x00000007 (7)
                   drv probe link
    Link detected: no

Is there something necessary from the hardware point of view to enable the gigabit? It is clear to me that a longer cable will introduce more noise and thus will not reach the full speed. But this does not mean, that the speed must be lowered to 100baseT. With a longer cable (1.5m) the speed drops also a bit compared to the short cable (30cm) but this is ok.

The cable is completely pached 1:1 (all 4 pairs are connected to the same ethernet slots).

2

The link modes are but one factor that comes to play when ethernet speeds are autonegotiated. During autonegotiation, the link speed is actively checked and settles on a common denominator of all components involved.

Considering that all worked fine with the shorter cables, there is a certain undeniable logic that the longer cable must be the issue.

You could turn autonegotiation off (check the man for your version of ethtool) and try to force a gigabit connection but it is strongly recommended that you don't do this. Most likely, it will not give you any additional speed but you will have huge quality issues.

I'm not sure you noticed but in your second example your speed drops even more, down to 10MBit/s. There is clearly something wrong with your hardware.

  • I noticed it. When I try to force the speed to 1Gb/s the connection drops (LEDs go dark) and the "official" speed is 10baseT/Half. After approx. 10sec the link resynces and goes to 100/full as before. As far as I can tell, there is no network available while 10Mb/s (might also be a IP issue). This was also the reason I asked if I must enforce anything further from the hardware point of view. – Christian Wolf Nov 27 '15 at 14:16
  • No, you shouldn't enforce anything. There are many things that can go wrong (drivers, advertised vs. real NIC capabilities, Switch ports etc) but since you stated that all works without any irregularities when using short cables, these can be pretty much ruled out. Unless your tests with the short cables were not thorough enough. – vic Nov 27 '15 at 15:09
  • I'm just reading in your other comments that you patched the cable yourself. From personal experience, I would place a bet that you didn't terminate the cables properly. So I don't think you need to look anywhere else. – vic Nov 27 '15 at 15:16
1

The adapters are able to auto negotiate link speed, as most modern ones can. They're dropping the link speed because a higher link speed does not work.

How long is the long cable? Up to 30M(sometimes 50m) 5e should do gigabit fine, so theres something up:

  • Cheap/bad cables
  • Poor termination: if the untwist is excessive, no gig
  • Poor NICs

Most commonly with pre-crimped cables you find the issue is cheap cables which arent actually to the category standards at all. If a 1.5m cable isnt going straight to gigabit, its probably junk.

  • 1
    The long cable is manually patched to something like this wlan-shop24.de/bilder/produkte/gross/… and has a total length of about 15m. How to determine if there is too much untwist? Its about 5cm in total (classical LSA tool used). Of course the NICs are not HiClass, just for a large file transfers from time to time. But it works with the short cables. Nevertheless a NIC issue? – Christian Wolf Nov 27 '15 at 12:47
  • Untwist should only be the length of the RJ45 head, about 2cm, or maybe 3cm for mounting to blocks. Go and buy a cable tester and test your link, wouldnt be surprised if one wire wasnt even connected at all. – Linef4ult Nov 27 '15 at 13:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.