Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I fear that our ISP suppling our web server's connection is not providing a good service. What software do people use to monitor the spped of a web server's internet connection? (or any internet connection for that matter). I am thinking something that will periodically monitor it to allow a picture to be built up over time.

SpeedTest.Net does not seem appropriate for a web server.

share|improve this question
    
FWIW I have chanced across this comparebroadbandspeedtest.com Isposure looks promising... anyone using it? –  DJA Dec 21 '10 at 12:13
add comment

5 Answers

I suggest to create a simple html page (to rule out database issues etc) and then use a website monitoring service like AlertFox.

If everything else stays the same, the only performance parementer is your ISP's internet connection speed.

share|improve this answer
add comment

you can use http://www.speedtestfile.com/ and cron or Task scheduler to run this file download every few minutes.

Cacti or raw rrd may be quite nice to graph the speed over time.

share|improve this answer
add comment

YOu could probably cook something up from ab and cron, installed on one or more machines, just doing performance tests on your web server.

This wouldn't necessarily tell you if it's your ISP "at fault", but would at least show if there's a variation throughout the day.

share|improve this answer
add comment

Do you have another machine you can use? Basically, use FTP and a command file (see 'man ftp') to upload/download a semi-large file. You can then use grep to grab your upload/download speeds.

Once you have those, what you do with them is up to you. I'd suggest RRDTool, though it's interface can be a bit confusing.

I've done this before, here's some PHP code that I used. The ftp1.optonline.net link probably isn't helpful to you, you basically just need to find a large file on a http/ftp server.

<?php
chdir('/tmp');
$c = curl_init('ftp://ftp1.optonline.net/test4');
curl_setopt($c,CURLOPT_RETURNTRANSFER,true);
curl_exec($c);
echo "Down: ".curl_getinfo($c,CURLINFO_SPEED_DOWNLOAD)."\n";
$down = curl_getinfo($c,CURLINFO_SPEED_DOWNLOAD);

if (!file_exists('/tmp/speedup'))
{
    exec('dd if=/dev/urandom of=/tmp/speedup bs=1024 count=1024');
}

$u = curl_init('ftp://your_ftp_server');
curl_setopt($u,CURLOPT_USERPWD,"username:password");
curl_setopt($u,CURLOPT_UPLOAD,1);
curl_setopt($u,CURLOPT_INFILE,fopen('/tmp/speedup','r'));
curl_setopt($u,CURLOPT_INFILESIZE,filesize('/tmp/speedup'));
curl_exec($u);

echo "Up: ".curl_getinfo($u,CURLINFO_SPEED_UPLOAD)."\n";
$up = curl_getinfo($u,CURLINFO_SPEED_UPLOAD);


$f = fopen("/tmp/speed_data.txt","a");
fwrite($f,mktime()." $down $up\n");
fclose($f);
share|improve this answer
add comment

You can use Jakarta Jmeter which may help you to test performance both on static and dynamic resources (files, Servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and more). It's an Apache project, so it's rather well supported and tested.

Alternatively, you can use the Firebug addon for Firefox. It has a Net tab for debugging issues and testing. Fiddler on Windows may also be helpful.

share|improve this answer
add comment

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.