Package: iperf3
iperf3-python: Python wrapper around iperf3===========================================|PyPi Status| |Build Status| |Coverage Status| |Documentation Status|Detailed documentation at`iperf3-python.readthedocs.org <https://iperf3-python.readthedocs.org/>`__iperf3 for python provides a wrapper around the excellent iperf3utility. iperf3 is a complete rewrite of the original iperfimplementation. more information on the `official iperf3site <http://software.es.net/iperf/>`__iperf3 introduced an API called libiperf that allows you to easilyinteract with iperf3 from other languages. This library provides apython wrapper around libiperf for easy integration into your own pythonscripts in a pythonic wayInstallation------------First you have to make sure the iperf3 utility is present on your system as thepython module wraps around the libiperf API provided by it.The common linux distributions offer installations from their own repositories. Thesemight be out of date so installation from the official `iperf3 website <http://software.es.net/iperf/>`__is preferred.**note** The libiperf API was only introduced in 3.0.6 so make sure you have an updated versionof iperf3 installation.**note** The libiperf API added a feature to programmatically retrieve the json output from the library. Thisenables us to retrieve the results without having to scrape the output from stdout. Effectively this meansthat if you want to redirect your script's stdout/stderr to something else you need at least iperf3 version 3.1- Install from source (preferred).. code:: bashwget http://downloads.es.net/pub/iperf/iperf-3-current.tar.gztar xvf iperf-3-current.tar.gzcd iperf-3.3/                # Or whatever the latest version is./configure && make && sudo make install- Ubuntu:.. code:: bashsudo apt-get install iperf3- CenOS/RedHat.. code:: bashsudo yum install iperf3Once the iperf3 utility is installed the simplest way to install the python wrapper is through`PyPi <https://pypi.python.org/pypi/iperf3>`__.. code:: bashpip install iperf3You can also install directly from the github repository:.. code:: bashgit clone https://github.com/thiezn/iperf3-python.gitcd iperf3-pythonpython3 setup.py installQuickstart----------For detailed examples check out the `examples page <http://iperf3-python.readthedocs.io/en/latest/examples.html>`__ orthe detailed documentation at `iperf3-python.readthedocs.org <https://iperf3-python.readthedocs.org/>`__**Server**.. code:: python>>> import iperf3>>> server = iperf3.Server()>>> result = server.run()>>> result.remote_host"10.10.10.10"**Client**.. code:: python>>> import iperf3>>> client = iperf3.Client()>>> client.duration = 1>>> client.server_hostname = '127.0.0.1'>>> client.port = 5201>>> result = client.run()>>> result.sent_Mbps32583.293914794922External Dependencies----------------------  iperf3-  libiperf.so.0 (Comes with iperf3 >= 3.0.6)Testing-------- Tested against the following iperf3 versions on Linux:- 3.0.6- 3.0.7- 3.0.8- 3.0.9- 3.0.10- 3.0.11- 3.0.12- 3.1- 3.1.1- 3.1.2- 3.1.3- 3.1.4- 3.1.5- 3.1.6- 3.1.7- 3.2- 3.3- 3.4- 3.5- 3.6- Test coverage reporting through `coveralls.io <https://coveralls.io/>`__- Tested against the following Python versions:- 2.7- 3.6.. |PyPi Status| image:: https://img.shields.io/pypi/v/iperf3.svg:target: https://pypi.python.org/pypi/iperf3.. |Build Status| image:: https://travis-ci.org/thiezn/iperf3-python.svg?branch=master:target: https://travis-ci.org/thiezn/iperf3-python.. |Coverage Status| image:: https://coveralls.io/repos/github/thiezn/iperf3-python/badge.svg?branch=master:target: https://coveralls.io/github/thiezn/iperf3-python?branch=master.. |Documentation Status| image:: https://readthedocs.org/projects/iperf3-python/badge/?version=latest:target: http://iperf3-python.readthedocs.io/en/latest/?badge=latest.. :changelog:Release History---------------0.1.11 (2019-04-13)++++++++++++++++++- Fixed kB_s and MB_s in UDP test results (Thanks @gleichda)- Added omit option (Thanks @ChristofKaufmann)0.1.10 (2018-03-28)+++++++++++++++++++- Allow manual set of libiperf library path and name using lib_name kwarg on Iperf3 Class0.1.9 (2018-02-22)++++++++++++++++++- Use find_library to load libiperf (Thanks to @Austinpayne). This should allow iperf3 lib to run on Mac OS X.0.1.8 (2018-01-24)++++++++++++++++++- Fixed segmentation fault on several Linux distro's (Thanks to @illu89)- Added Travis testing against latest iperf3 releases (3.3)- Renamed bulksize argument to blksize to keep naming in line with iperf3 C library. bulksize argument still available for backwards compatibility0.1.7 (2017-08-02)++++++++++++++++++- Fixed Mbps vs MB_s calculations (Thanks to @rustyhowell)0.1.6 (2017-06-11)++++++++++++++++++- iperf3.__del__ now properly closing FD and pipes (Thanks to @p0intR)0.1.5 (2017-05-22)++++++++++++++++++- iperf3.Client() now allows redirection of stdout (iperf3 version => 3.1 required)0.1.4 (2017-05-15)++++++++++++++++++- Fixed server json_output=False feature0.1.3 (2017-05-15)++++++++++++++++++- Added UDP support (thanks to @fciaccia)- Added bandwidth parameter- json_output = False will now print testresults to screen0.1.2 (2016-09-22)++++++++++++++++++- Improved zerocopy setter validation- Fix for incorrect return of reverse flag (thanks to @fciaccia)0.1.1 (2016-09-12)++++++++++++++++++- Added reverse test parameter (thanks to @cvicente)- Updated travis build to test against iperf3 versions 3.0.6 through 3.1.30.1.0 (2016-08-18)++++++++++++++++++**main functionality available**- introduced TestResult class providing easy access into test results- updated client and server examples- minor documentation tweaks0.0.1 (2016-08-18)++++++++++++++++++**Initial Release**- Client and Server classes around iperf3's libiperf.so.0 API- Documentation on readthedocs- py.tests- blood- sweat- a lot of tears