$ show tohojo/flent
Flent is a mature, actively maintained network testing tool designed primarily for bufferbloat detection. It wraps multiple simultaneous network performance tools (netperf, iperf, ping, fping, irtt) into a single coordinated test, aggregates time-series data, and produces publication-quality plots via matplotlib. The architecture is a Python CLI application with an optional Qt GUI, built around a modular system of test definitions (Python .conf files), pluggable runners, aggregators, combiners, and formatters. It supports batch execution for reproducible experiments, extensive metadata collection (kernel parameters, qdisc stats, WiFi stats), and multiple output formats (CSV, JSON, plots). While primarily an application, it has strong data collection and analysis characteristics, making it a hybrid tool for network performance research. The codebase is well-structured with clear separation of concerns, though it carries some legacy Python 2 compatibility shims and platform-specific Linux dependencies.
The LLM identified 2 files worth highlighting for reuse:
Contains CachingDictionary, a file-backed persistent cache with TTL support, and WhichCache for caching binary paths. These are self-contained utility classes that can be extracted and reused in any Python project needing simple disk-backed caching without external dependencies.
Implements a custom logging framework with hierarchical handlers, output markers, level demotion, and a queue-based handler for multiprocessing. This is a well-isolated, reusable logging system that solves common problems in concurrent applications, such as thread-safe logging and dynamic log level adjustment.