Feb 18

Slow downloading speed from server

This can be of many reasons, might be due to server load, firewall etc. Basically we check these areas when slow downloading speed occurs 🙂

But I have identified one uncommon and not easily notifiable thing on my server regarding with my public Ethernet interface. Please see the following result.

———————-
# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Half
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
MDI-X: Unknown
Supports Wake-on: g
Wake-on: g
Link detected: yes
———————-

Did you notice the Speed: 100Mb/s and Duplex: Half ?, that is the issue here 😀 which allows only half duplex transmission – transmission to only one direction at a time and thus limits the speed.

You can change to full duplex as follows:

————–
ethtool -s eth0 speed 100 duplex full autoneg off
————–

This will change the half duplex to full which allows sending and receiving at a time. Also set auto-negotiate to off as the switch has this function set to and it is best to match up the options.

(Note : In some server it can be eth1 the public interface and eth0 use for internal network, in that case change eth0 to eth1. Always be careful with that)

Then #service network restart

———————-
# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 100Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: off
MDI-X: Unknown
Supports Wake-on: g
Wake-on: g
Link detected: yes
———————-

Make sure secondary IPs associated with your ethernet are up, if not showing in ifconfig, then restart ipaliases.

#/etc/init.d/ipaliases restart

Leave a Reply

Your email address will not be published.