Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have a question about a way I can measure download speed of my server in my case. Basically I have a dedicated server at Namecheap and I purchased the 1GBps port speed. (Not to advertize). But when I run speedtest-cli I never get more than 300 Mbits/s. But I have seen forums were people reach ip to 900 Mbits/s. And the servers that speedtest-cli are only 45 km away.

I talked to them about this and they said the best way to measure download speed was using iperf. They got these results:

------------------------------------------------------------
Client connecting to 199.188.200.101, TCP port 5001
TCP window size: 23.5 KByte (default)
------------------------------------------------------------
[ 11] local port 47152 connected with 199.188.200.101 port 5001
[ 4] local port 47143 connected with 199.188.200.101 port 5001
[ 12] local port 47151 connected with 199.188.200.101 port 5001
[ 5] local port 47145 connected with 199.188.200.101 port 5001
[ 8] local port 47148 connected with 199.188.200.101 port 5001
[ 10] local port 47150 connected with 199.188.200.101 port 5001
[ 9] local port 47149 connected with 199.188.200.101 port 5001
[ 7] local port 47146 connected with 199.188.200.101 port 5001
[ 6] local port 47147 connected with 199.188.200.101 port 5001
[ 3] local port 47144 connected with 199.188.200.101 port 5001
[ ID] Interval Transfer Bandwidth
[ 6] 0.0-10.0 sec 92.4 MBytes 77.4 Mbits/sec
[ 4] 0.0-10.0 sec 35.6 MBytes 29.8 Mbits/sec
[ 9] 0.0-10.0 sec 242 MBytes 202 Mbits/sec
[ 3] 0.0-10.0 sec 68.0 MBytes 56.9 Mbits/sec
[ 12] 0.0-10.0 sec 59.4 MBytes 49.6 Mbits/sec
[ 5] 0.0-10.0 sec 95.1 MBytes 79.5 Mbits/sec
[ 8] 0.0-10.1 sec 110 MBytes 91.9 Mbits/sec
[ 10] 0.0-10.1 sec 85.8 MBytes 71.5 Mbits/sec
[ 11] 0.0-10.1 sec 86.1 MBytes 71.7 Mbits/sec
[ 7] 0.0-10.1 sec 60.2 MBytes 50.1 Mbits/sec
[SUM] 0.0-10.1 sec 934 MBytes 777 Mbits/sec

But the fact is, when people download things they never open up several ports to do it. And how is it that my server is not matching with the rest on the same test. Something seems off. Can anyone tell me if the data their presenting proves my server is 1GBps? Or am I being cheated?

UPDATE:

My results

root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (******)...
Selecting best server based on ping...
Hosted by KanOkla Networks (Caldwell, KS) [120.08 km]: 29.723 ms
Testing download speed........................................
Download: 306.43 Mbits/s
Testing upload speed..................................................
Upload: 34.66 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (***)...
Selecting best server based on ping...
Hosted by IdeaTek Systems (Buhler, KS) [69.02 km]: 8.663 ms
Testing download speed........................................
Download: 160.10 Mbits/s
Testing upload speed..................................................
Upload: 37.91 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (***)...
Selecting best server based on ping...
Hosted by Sumner Communications (Wellington, KS) [88.77 km]: 23.047 ms
Testing download speed........................................
Download: 27.94 Mbits/s
Testing upload speed..................................................
Upload: 21.71 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by KsFiberNet (Wichita, KS) [45.26 km]: 29.723 ms
Testing download speed........................................
Download: 131.05 Mbits/s
Testing upload speed..................................................
Upload: 31.58 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by IdeaTek Systems (Buhler, KS) [69.02 km]: 8.98 ms
Testing download speed........................................
Download: 277.10 Mbits/s
Testing upload speed..................................................
Upload: 37.58 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
python speedtest-cliRetrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by IdeaTek Systems (Buhler, KS) [69.02 km]: 8.98 ms
Testing download speed........................................
Download: 138.62 Mbits/s
Testing upload speed..................................................
Upload: 37.42 Mbits/s
root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by IdeaTek Systems (Buhler, KS) [69.02 km]: 8.901 ms
Testing download speed........................................
Download: 137.41 Mbits/s
Testing upload speed..................................................
Upload: 36.51 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by Sumner Communications (Wellington, KS) [88.77 km]: 8.265 ms
Testing download speed........................................
Download: 32.07 Mbits/s
Testing upload speed..................................................
Upload: 20.07 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by IdeaTek Systems (Buhler, KS) [69.02 km]: 8.583 ms
Testing download speed........................................
Download: 179.43 Mbits/s
Testing upload speed..................................................
Upload: 33.49 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by KanOkla Networks (Caldwell, KS) [120.08 km]: 8.98 ms
Testing download speed........................................
Download: 127.67 Mbits/s
Testing upload speed..................................................
Upload: 24.39 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by Sumner Communications (Wellington, KS) [88.77 km]: 30.279 ms
Testing download speed........................................
Download: 30.61 Mbits/s
Testing upload speed..................................................
Upload: 20.45 Mbits/s



root@NC-PH-0471-11:~# python speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Namecheap (*****)...
Selecting best server based on ping...
Hosted by KsFiberNet (Wichita, KS) [45.26 km]: 8.663 ms
Testing download speed........................................
Download: 130.36 Mbits/s
Testing upload speed..................................................
Upload: 28.73 Mbits/s
share|improve this question
    
Incidentally, it is very common to open several connections to the same machine at once. Many web browsers will use a handful of connections to download all of the content on a page. Also if you're downloading multiple files at once. More on-topic: How are you accessing the internet? Are you on wifi? How much bandwidth is your ISP giving you? –  Jason C Jul 5 at 4:29
    
20 TB of bandwidth. My computer is not the one testing the download. Its a server 45 km away that is used for SpeedTest.net –  kdogisthebest Jul 5 at 4:40
    
20TB is the data transfer cap, it is unrelated to the data transfer speed. Your question and comments indicate that you should sit down and think about how all of this is working very carefully, some thought may lead to some more understanding of why you are seeing what you are seeing. :) –  Jason C Jul 5 at 4:52
    
It's just: The data is inconsistent with the data I get from my ATlanta server 1000 km away. The Atlanta server gets around a constant 150 with the same Kansas servers being tested above. –  kdogisthebest Jul 5 at 4:54
    
Why do you expect the data to be consistent? Also, what leads you to believe that transfer rates are related primarily to physical distance? –  Jason C Jul 5 at 4:59

1 Answer 1

You purchased a machine with a gigabit ethernet port. That means the bandwidth at that point is 1 gbps. This is the theoretical limit on the combined bandwidth of all traffic in and out of the server.

The 300mbps you observed does at least prove that the machine has a 1gbps ethernet connection; because the next highest link speed (assuming wired ethernet) is 100mbps, which you have exceeded. Beyond that it doesn't say much.

You posted their results but not yours; did you try multiple speedtest server IDs as well? And, this might be a silly thing, but be sure you are running speedtest-cli from your server, and not inadvertently running it from your local machine.

You mention that speedtest-cli bases its server selection on ping times. Ping times are an indication of latency, not bandwidth. It is not unreasonable for the bandwidth between a speedtest server and yours to be less than a full 1gbps. You would want to have multiple speedtest servers doing a simultaneous bandwidth check, then add them all together; that's what the tests they performed did.

Remember that your 1gbps port speed primarily helps multiple users use your site at once without affecting eachother, as it is very unlikely for a single user to obtain a 1gbps sustained connection to your server. Speedtest to a single server is not the right tool for this job.

By the way, if your server is running Linux, you can just verify the ethernet link speed directly. First do ifconfig to see the interface names (usually it will be eth0 or similar), then use ethtool to display information about the interface, which includes the hardware link speed.

share|improve this answer
    
Is there a way I can see were the bottleneck is? I have tested several servers. (BTW, Its not a connection between me and my server but my server and another server). And I have a new server in the same location but a different host and it returns 966 Mbits/s –  kdogisthebest Jul 5 at 4:28
1  
@kdogisthebest No not really. But the 300mbps you got does at least prove that you have a 1gbps ethernet link in the machine, because the next highest link speed is 100mbps, which you have exceeded. It would help if you posted your results; have you tried multiple speedtest server IDs? –  Jason C Jul 5 at 4:39
    
Yes when its choosing servers it selected based on ping, but it pulled a different server several times –  kdogisthebest Jul 5 at 4:42
    
@kdogisthebest See my edits. –  Jason C Jul 5 at 4:46
    
I posted my results –  kdogisthebest Jul 5 at 4:47

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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