[Battlemesh] The Flent testing tool
toke at toke.dk
Tue Aug 11 18:28:46 CEST 2015
With the discussion of possible setups for testing at the next
Battlemesh, I thought I'd chime in by pointing to my own test tool,
Flent, which I believe could be useful as part of the Battlemesh testing
Flent is a Python wrapper around various well-known benchmarking tools,
most notably Netperf. It runs one or more instances of tool(s), parses
the output and stores them in a data file for later perusal. Tests are
defined as Python config files, and there's a batch facility to run a
suite of tests with (optional) setup and teardown commands. Flent also
includes a plotting feature and a GUI to interactively explore data
sets. This GUI was what I was using for flipping through graphs at my
presentation of the "blow up the network" results on Saturday.
Flent is not a test management framework like Wibed is, but rather a
test script on steroids (in fact I originally started writing it because
I was tired of writing ad-hoc shell scripts for testing). As such, it
could be used for the "manual tests" part of the test regimen. Or it can
be run from Wibed like any other test tool.
If anyone thinks this sounds interesting and/or useful, I'll be happy to
help flesh out new tests and configuration for a Battlemesh scenario.
The main limitation in an OpenWrt context is that it requires Python.
But driving the tests from a laptop is totally doable; having Python on
an overlay is also doable.
I anticipate doing a great deal more WiFi testing myself over the coming
year, so I'll probably be adding WiFi-specific features (gathering
metadata, even better ways to blow up WiFi, that sort of thing), and
de-duplication of effort is always nice.
Flent can be found on https://flent.org/ which also has download and
installation instructions. There's a short paper describing the design
goals at https://flent.org/flent-the-flexible-network-tester.pdf
Let me know what you think.
P.S. I'll post the results I showed on Saturday somewhere as soon as I
locate the USB stick with the data files... :)
More information about the Battlemesh