network throughput and latency monitoring on cloud server
February 23, 2012 3:23 AM   Subscribe

I would like some advice. I would like to send test data at intervals from a client to a cloud server and measure the time taken for it to arrive at the server. At the same time, pinging the cloud server at intervals and measuring the roundtrip latency.

Getting roundtrip ping is straightforward but I am unclear how I could get the measurement of how long it takes for the data sent by the client to be received at the server?

Would there have to be something running on the server or could a tool running on a client tell this?

I would be grateful for any suggestions as to how this may be achieved in not too technical terms.

Are there any network monitoring tools that would be suitable for this task? The ability to graph the data would be important. Free is good but I would be prepared to pay something if needed as ease of use is important.

Many thanks!
posted by conrad101 to Computers & Internet (8 answers total) 1 user marked this as a favorite
Without getting too technical, this could probably be scripted. A key factor is what are the Operating Systems at each end?
posted by Diag at 3:41 AM on February 23, 2012

It will take, more or less, exactly the same amount of time as the pings.
posted by gjc at 3:48 AM on February 23, 2012

Response by poster: On the client and server - I could do windows but I would probably want to do linux. So I take it that network monitoring tools could not do this?
posted by conrad101 at 3:49 AM on February 23, 2012

Response by poster: @gjc - yes we are talking milliseconds
posted by conrad101 at 3:51 AM on February 23, 2012

Relatedly helpful: CloudHarmony.
posted by devnull at 4:49 AM on February 23, 2012

Best answer: Not sure what you are looking for exactly. The RTT as measured by ping does only measure how long one small packet takes to be sent, arrive and be retransmitted back.

It sounds like what you want is actual test data to be sent and use this to measure latency and throughput. If this is the case, you can use ttcp. It is available on most linux systems I think. You start a sender one one machine and a receiver on the other end. The receiver data is probably the data you want to use since it actually measures the time for the last packet of data to arrive.
posted by vacapinta at 6:08 AM on February 23, 2012 [1 favorite]

Here's the linux ttcp command reference.
posted by vacapinta at 6:11 AM on February 23, 2012

BWCTL uses Iperf (or a couple of other bandwidth testing tools) on the backend, and is a Bandwidth Test Controller used by the perfSONAR-PS set of tools including the perfSONAR-PS Toolkit which is all probably way overkill for your needs and is not very easy to setup. However you should look into just Iperf, you may have to schedule the tests and collect and massage the output yourself into pretty graphs, but the tool itself does a great job of "send a bunch of random data to the server and report on the bandwith, RTT, jitter, etc."

Isn't this about the same as your previous question? FWIW, whenever the topic of running performance measurement tools on virtual machines is brought up on the I2 performance measurement mailing lists it's poo-poo'd as a deployment option. People sometimes try it for testing but can only get general bandwidth results. The precision clocking and fast predictable response needed for accurate jitter/one-way-ping calculations doesn't seem to be practical on virtualized machines. I'd still try Iperf a few times and see how the numbers look.
posted by zengargoyle at 6:13 AM on February 23, 2012

« Older Suggestions for a document database that runs on...   |   I've screwed my squats. Newer »
This thread is closed to new comments.