pingb lets you determine the bandwidth between your computer and any other computer that responds to plain old pings (ICMP echo).
Normally, to determine the speed of a connection you have to run something like iperf at point A and point B. Of course that of often impossible. Firewalls and security will often not allow for you to interact with the remote system in a way that you can use a tool like iperf.
You can run pingb locally and get the bandwidth available to you - even to systems that you have no access to
pingb sends 2 pings in quick succession. 1st ping is as tiny as possible. 2nd ping is as big as possible. I do the math on the difference in lacency to get an estimate of speed measured in Kbps
For pingb to function the target IP has to respond to pings > 1500 bytes (preferrably > 10000 bytes)
pingb can't distinguish between latency getting to the target vs the latency getting back. For that reason, it can't distinguish between upload speed and download speed. The best it can do is make an educated estimate based on the download to upload ratio of your connection. For example, if your ADSL connection is 20 Mbs down and 2 Mbs UP, that is a ratio of 10. With that information, pingb will try to estimate what your actual upload and download bandwidth is.
No install necessary (portable version). Requires .NET framework 3.5
This may also work under Mono framework
Version 0.2 : Automatic gateway discovery. Numerous bug fixes.
1) cd /usr/sbin (or /usr/local/sbin)
2) wget http://florian.ca/pingb/pingb
3) chmod 755 pingb
4) pingb websiteyouwanttotest.com
Should also work in many *nix environments that has a /bin/sh and ping command
Version 0.1.1: Tweaked to work with OpenBSD and systems that have /bin/sh but no /bin/bash Version 0.1.0: Removed requirement for bc command. pingb now uses AWK (more common) instead. Fixed bug related to maximum ping size detection.