SpeedTest
Copyright (C) 2005 Oliver Hitz
Introduction
SpeedTest is a set of PHP and Java programs that allow you to measure the performance in terms of bandwidth of your Internet access. By installing it on their web servers, service providers can show their customers how fast their Internet access is.
The bandwidth is calculated by measuring how long it takes to transfer blocks of data of various different sizes between the web browser and the web server. This method works reasonably well for relatively slow links (DSL-class links). However, do not expect it to yield reasonable results on high speed links.
License
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
Requirements
SpeedTest requires a web server with PHP support as well as a web browser with support for Java applets. A log of all the SpeedTest runs will be written to a simple CSV file, therefore make sure that the web server has write access to the directory where SpeedTest is installed.
Installing
Installation is straightforward: Copy the entire speedtest directory to your web server and access it through your web browser. Your browser will then download the speedtest.jar archive and conduct the speed test.
Administrative Interface
The subdirectory php contains a simple administrative interface. By default, access to this directory is blocked using .htaccess. Modify this file if you know what you are doing.
Log File
By default, a log file will be written to php/speedtest.log. It is a CSV-formatted file with the following fields:
- Unix timestamp
- IP address
- Download bandwidth in Kbps
- Upload bandwidth in Kbps
Todo
- Sophisticated reports in the administrative interface
- Abuse prevention mechanisms
Thanks for sending us bug reports, enhancements, suggestions etc!
$Id$