Restore Submenu

Motivation for flowgrind

Flowgrind is a tool similar to iperf, netperf to measure throughput and other metrics for TCP and other protocols. It features some unique characteristics which are of use when exploring the idiosyncrasies of wireless mesh networks.

Features:

distributed architecture
Flowgrind is split into two components: the flowgrind daemon and the flowgrind controller. Using the controller, flows between any two systems running the flowgrind daemon can be setup (third party tests). At regular intervals during the test the controller collects and displays the measured results from the daemons. It can run multiple flows at once with the same or different settings and individually schedule every one. Test and control connection can optionally be diverted to different interfaces.

Advanced metrics
besides goodput it measures application layer IAT and 2-way (RTT) delay, blockcount and Networktransactions/s.

Stochastic Traffic Generation
bulk transfers, rate-limited flows, sophisticated request/response tests.

Automatic Dump support
can use libpcap to automatically dump traffic for qualitative analysis.

Special Linux TCP support
shows tcpi_info stats (RTT, RTO, CWND, SSTRESH, congestion control state etc), can set TCP options like TCP_NODELAY, set buffer size on per flow basis, set congestion control algorithm, DSCP field etc.

Singlethreaded flow handling
handles all flow inside one thread to improve fairness between flows.

Gnuplot compatible configureable output format.

If you are interestd in flowgrind you can download the current tarball or directly access the code via our subversion repository: svn://svn.umic-mesh.net/flowgrind/trunk