Skip to main content

iperf3-lib

CI PyPI Python

Documentation · Changelog · Issues

iperf3-lib is a programmable network benchmarking and analysis library powered by native libiperf through CFFI. Configure clients and servers from Python, preserve and analyze measurements, run repeatable experiments, and export results to Prometheus.

Why use iperf3-lib?

Use iperf3-lib when benchmarks feed an application, a repeatable test campaign, or a monitoring pipeline. Reuse a tested Python API for the work that otherwise accumulates around subprocess calls or Ansible tasks:

  • Configure tests with validated dataclasses, including traffic direction, transport controls, and explicit rate intent.
  • Interpret measurements consistently, keeping sender and receiver observations separate, preserving native JSON, and distinguishing missing measurements from measured zero.
  • Build on reusable experiments and reports: repeated trials, baseline assessments, bounded parameter sweeps, portable artifacts, and Prometheus output.

The library calls libiperf through CFFI; it does not invoke the iperf3 executable. Some execution paths use isolated Python worker processes. A short CLI script remains useful for one-off tests, and Ansible can deploy and run Python benchmark applications across your hosts. See choosing a Python API, CLI, or Ansible workflow for the comparison, execution boundaries, and version-specific features.

Getting started

Follow the installation and first-run guide to install the Python package and native library, start a server, and run a benchmark. The Python package does not bundle libiperf. Current native qualification covers libiperf 3.19.1 and 3.22 on Linux; see the compatibility reference.

Python 3.12–3.15 with the standard GIL is supported. Stable CI and release qualification cover all four Python versions against both native endpoints, including installed wheel and sdist checks.

The project has Beta maturity. Documentation follows main. The installation guide explains how to choose between a published package and a source revision; consult the changelog for release status. Upgrade guidance covers 0.2.0 to 0.3.0 and 0.3.0 to 0.4.0.

Documentation

The documentation contains the examples, API contracts, supported versions, and execution limits.

Topic Guides and references
Run clients and servers Running tests · Python API
Bind interfaces and tune traffic Native-control recipes · Configuration · Complete native-option inventory
Check support and execution limits Compatibility and native setup · Rate intent and capabilities
Interpret and save measurements Results · Portable artifacts
Analyze and compare experiments Analysis · Trials and baselines · Parameter sweeps
Integrate monitoring Prometheus · Grafana

Contributing

See the contributor guide for development setup, checks, and repository policies. Use GitHub issues to report bugs or discuss planned work.

Metadata

Release files for iperf3-lib 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iperf3-lib 0.4.1
File Size Uploaded
iperf3_lib-0.4.1.tar.gz 716.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iperf3-lib 0.4.1
File Interpreter ABI Platform
iperf3_lib-0.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 879.5 kB

Release files / iperf3_lib-0.4.1.tar.gz

Download URL iperf3_lib-0.4.1.tar.gz
Size 716.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8c40ae25a262129d0d4f6336d30f0c2e46f004c47ef4b4f826174856a0b14f4f
BLAKE2b-256 checksum
How to use checksums
c1ce2ad351a8c372ddbd1b20626c0a6643cbafcc6bb041f854d4d4fd9afad0e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.

Transparency log

Release files / iperf3_lib-0.4.1-py3-none-any.whl

Download URL iperf3_lib-0.4.1-py3-none-any.whl
Size 162.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a61bc6edb2876e243268daf25506c48c9d1be8487bafa28faec1df808be2dde4
BLAKE2b-256 checksum
How to use checksums
294a65b2b1d54ce98a6f28190e964663cf61433c0c8efc06d3a7a47a0f943c26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 12, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.1 This release

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page