We recently just got some brand new servers from Softlayer out of Dallas 05 that should have 10Gbps connectivity and I'd like to test this claim against a few locations. Does anyone have any good method of testing this? I obviously don't expect to see the full 10Gbps due to various factors but I'd like to see just how good it is.
-
Just fire up a top-end EC2 instance for a few minutes and roll your own speediest.– EEAACommented Sep 30, 2013 at 0:36
-
@EEAA how do I get a 10Gbps EC2 instance? I'm not seeing an option for it?– Matthew SalsamendiCommented Sep 30, 2013 at 0:42
-
Joyent has a plethora of 10GE boxes.. maybe give them a try– jermCommented Sep 30, 2013 at 1:02
2 Answers
One very easy way to check this is with BitTorrent (or any P2P protocol for that matter). The reason is that it does not hinge on a single "uploading" server but on hundreds or even thousands.
Just find a good torrent file and start downloading with a client of your choice. I recommend to try finding a Linux distro that has ISOs available as torrents, like Kali Linux. As for the client, go with rTorrent.
I think there is a way to display the D/L speed as a graph.
EDIT:
As Michael Hampton insightfully pointed out, with the usual size of ISOs, the D/L speed will not reach its apex before the file downloads completely. For this reason, you should add a number of different torrents of this kind in order to see a real metric.
-
3You'll have to find larger files than that. A download of a Linux DVD would finish before the torrent really even started getting going. Commented Sep 30, 2013 at 0:47
-
1You might also find with bittorrent, depending on what the torrent is, that your test is more a test of the maximum number of trickling connections your gear can support than of its bandwidth. Commented Sep 30, 2013 at 0:50
-
@MichaelHampton Very true. I really rushed this one. Will edit immediately.– dlyk1988Commented Sep 30, 2013 at 0:55
If you have systems at stated locations, and you can access them and run code, and they're *nix based, you can probably use iperf. It's purpose built for network performance testing.
On one system, start the server:
iperf -s -f M
Then on the other system, start the client (which connects to the server):
iperf -c <server_ip> -f M