programmatic access to the Linux queuing disciplines
Project description
linuxnet-qos
linuxnet-qos provides programmatic access to the tc(8) command. Using linuxnet-qos one can manipulate the Linux Traffic Control functionality (queuing disciplines).
For the following examples, Python3 (3.6 or later) is required.
Accessing an interface's queuing discipline configuration:
>>> from linuxnet.qos import QDiscConfig
>>> config = QDiscConfig('eth2')
>>> config.dump()
PFifoFastQDisc(0:0) root bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
PFifoFastQDisc
is the Python class used to represent the
pfifo_fast
queuing discipline (see tc-pfifo_fast(8)).
The following examples modify the interface's queuing discipline, so
root privileges are required for successful execution of the tc
command.
Replacing the interface's root queuing discipline:
>>> from linuxnet.qos import NetemQDisc, Handle
>>> netem_qdisc = NetemQDisc(Handle(1,1), None, delay=30.0)
>>> config.create_qdisc(netem_qdisc)
>>> config.dump()
NetemQDisc(1:1) root delay 30.0ms
Deleting the existing queuing discipline configuration:
>>> config.delete_config()
>>> config.read_interface_config()
True
>>> config.dump()
PFifoFastQDisc(0:0) root bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Installation
Python3 is required.
Available Makefile
targets can be listed by invoking make
with no arguments.
make install
will install the package.
make test
runs the unit tests.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for linuxnet_qos-3.3.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c9062a121bb9ac30baedf6c69f1fa9edb99589a1e2997093115770e2031aefa7 |
|
MD5 | a980b96bc5711156966d503a94b8612d |
|
BLAKE2b-256 | 2cc805b082858b61f9114e05db36090bb63096be5ff90874c125b4b4d92e3e71 |