[Battlemesh] Bufferbloat testing tool

Toke Høiland-Jørgensen toke at toke.dk
Mon Apr 15 15:50:31 CEST 2013


Hi everyone

For those wanting to run bufferbloat tests, here's a short outline of
what is required. The main test to run is the "RRUL" or "Realtime
Response Under Load" test, which runs four concurrent TCP streams in
each direction and measures latency while they're running. That usually
blows up stuff... Consider this email a short tutorial in getting that
test to run:



Required client software:
- Netperf v2.6.0 or later, *built with the --enable-demo option*.
  http://netperf.org/netperf/
  
- Python and Netperf-wrappers
  https://github.com/tohojo/netperf-wrapper

- The python 'matplotlib' library if you want to build plots (newer
  versions are less buggy, but should work as far back as 1.1.0 at
  least).
  http://matplotlib.org/
  

Required server software:
- The netserver component of netperf, form the same revision as the client.


The needed software is packaged for Debian/Ubuntu and Arch Linux in my
repository here:

http://archive.tohojo.dk/apt/README.txt - for Debian/Ubuntu
http://archive.tohojo.dk/archlinux/README.txt - for Arch

Netperf-wrapper is also in the Python pip repository and can be
installed with `sudo pip install netperf-wrapper`.



To run the test, simply issue:
netperf-wrapper -H <server IP/hostname> -f plot rrul

The default rrul test runs each stream with a different diffserv
classification, which can adversely effect things on buggy wifi drivers
(notably the iwl driver). Replace 'rrul' with 'rrul_noclassification' in
the above command to get a version that doesn't.

There's a bunch of other tests, see `netperf-wrapper --list-tests` -
notably, there's the rtt_fair test which measures bandwidth and
roundtrip times to several hosts at once.

For some examples of the kind of data you can get out of the tool, see
my presentation at the IETF:
http://www.ietf.org/proceedings/86/slides/slides-86-iccrg-0.pdf  or
listen to Dave talk today or tomorrow.


Let me know if you have any issues running the tests :)


-Toke

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 489 bytes
Desc: not available
URL: <http://ml.ninux.org/pipermail/battlemesh/attachments/20130415/8c18de97/attachment-0001.sig>


More information about the Battlemesh mailing list