I have an HP Proliant Server running Ubuntu 16.04.03 LTS and when I run a speed test, I am only getting download speeds of 3.5Mbps. On a windows laptop on the same network I get download speeds of 29Mbps.
They are both using wired connection with a gigabit NICs on a gigabit network, and the server is connected directly to the ADSL router. The server's NIC is:
lspci -ks 02:00.0
02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5723 Gigabit Ethernet PCIe (rev 10)
Subsystem: Hewlett-Packard Company NC107i Integrated PCI Express Gigabit Server Adapter
Kernel driver in use: tg3
Kernel modules: tg3
I have tried disabling ipv6, but that made no difference.
Does anyone have any suggestions as to what I should try? Thanks in advance.
UPDATE 12 Jan 2018
I now think that it is not a problem with the NIC. I tested copying 100-500MB files on my LAN and I can easily get 300+Mbps transfer rates. So clearly there is no great problem with the NIC.
The problem seems to arise because I am using speedtest-cli, which is a python implementation for using the speedtest.net network of servers. When I run speedtest-cli, it reports a speed of ~3.5Mbps, when I test the download of a large file over the internet I get ~3.5MBps (bytes not bits).
$wget --output-document=/dev/null http://ipv4.download.thinkbroadband.com/100MB.zip
--2018-01-12 15:39:24-- http://ipv4.download.thinkbroadband.com/100MB.zip
Resolving ipv4.download.thinkbroadband.com
(ipv4.download.thinkbroadband.com)... 80.249.99.148
Connecting to ipv4.download.thinkbroadband.com
(ipv4.download.thinkbroadband.com)|80.249.99.148|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 104857600 (100M) [application/zip]
Saving to: ‘/dev/null’
/dev/null 100%[===================>] 100.00M 3.60MB/s in 28s
2018-01-12 15:39:57 (3.60 MB/s) - ‘/dev/null’ saved [104857600/104857600]
$ speedtest-cli
Retrieving speedtest.net configuration...
Testing from TalkTalk (<redacted>)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by CloudConnX (Eastbourne) [3.95 km]: 2525.195 ms
Testing download speed................................................................................
Download: 3.63 Mbit/s
Testing upload speed................................................................................................
Upload: 2.85 Mbit/s
I wondered if speedtest-cli is calibrated wrongly, reporting bits instead of bytes, but I don't think so. In which case it seems to be a bug in the software.
I wonder if anyone else has seen this behaviour?
Best Answer
Run in your terminal with correct ethernet port number you are using. Here I assumed it is 'eth0':
and see if the duplex mode is Half or Full. If it is Half duplex change it to full duplex with this command:
You can also change the ethernet port to Half duplex with this command:
However you need to install the
ethtool
first if it is not yet installed.