linuxnet-qos


Namelinuxnet-qos JSON
Version 3.4.0 PyPI version JSON
download
home_pagehttps://gitlab.com/panos-tools/linuxnet-qos
Summaryprogrammatic access to the Linux queuing disciplines
upload_time2025-01-17 19:37:00
maintainerNone
docs_urlNone
authorPanagiotis (Panos) Tsirigotis
requires_python>=3.6
licenseAGPLv3
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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:

```python
>>> 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:

```python
>>> 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:

```python
>>> 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.


            

Raw data

            {
    "_id": null,
    "home_page": "https://gitlab.com/panos-tools/linuxnet-qos",
    "name": "linuxnet-qos",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": null,
    "author": "Panagiotis (Panos) Tsirigotis",
    "author_email": "ptsirigotis01@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/06/b7/f6e686a37a2f3a119e03a210b31197edbdcdd95f319b3f0fb829e333316e/linuxnet_qos-3.4.0.tar.gz",
    "platform": null,
    "description": "# linuxnet-qos\n\n**linuxnet-qos** provides programmatic access to the\n**tc(8)** command.\nUsing **linuxnet-qos** one can manipulate the Linux Traffic Control\nfunctionality (queuing disciplines).\n\nFor the following examples, Python3 (3.6 or later) is required.\n\nAccessing an interface's queuing discipline configuration:\n\n```python\n>>> from linuxnet.qos import QDiscConfig\n>>> config = QDiscConfig('eth2')\n>>> config.dump()\nPFifoFastQDisc(0:0) root bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1\n```\n\n`PFifoFastQDisc` is the Python class used to represent the\n`pfifo_fast` queuing discipline (see **tc-pfifo_fast(8)**).\n\nThe following examples modify the interface's queuing discipline, so\nroot privileges are required for successful execution of the `tc`\ncommand.\n\nReplacing the interface's root queuing discipline:\n\n```python\n>>> from linuxnet.qos import NetemQDisc, Handle\n>>> netem_qdisc = NetemQDisc(Handle(1,1), None, delay=30.0)\n>>> config.create_qdisc(netem_qdisc)\n>>> config.dump()\nNetemQDisc(1:1) root delay 30.0ms\n```\n\nDeleting the existing queuing discipline configuration:\n\n```python\n>>> config.delete_config()\n>>> config.read_interface_config()\nTrue\n>>> config.dump()\nPFifoFastQDisc(0:0) root bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1\n```\n\n---------------------\n\n# Installation\n\nPython3 is required.\n\nAvailable `Makefile` targets can be listed by invoking `make` with no arguments.\n\n`make install` will install the package.\n\n`make test` runs the unit tests.\n\n",
    "bugtrack_url": null,
    "license": "AGPLv3",
    "summary": "programmatic access to the Linux queuing disciplines",
    "version": "3.4.0",
    "project_urls": {
        "Documentation": "https://linuxnet-qos.readthedocs.io/en/latest/index.html",
        "Homepage": "https://gitlab.com/panos-tools/linuxnet-qos",
        "Source": "https://gitlab.com/panos-tools/linuxnet-qos"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c47305401af4349a639a66ea815c4d4b5b3c3c0844b404ce5c11335f680c6590",
                "md5": "08268ec61bbcae11f2125efd4a26edf0",
                "sha256": "22eb690b0437e4bac881af7f58f05b8fa29efd4e49ec17630667caa939f55331"
            },
            "downloads": -1,
            "filename": "linuxnet_qos-3.4.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "08268ec61bbcae11f2125efd4a26edf0",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 81221,
            "upload_time": "2025-01-17T19:36:58",
            "upload_time_iso_8601": "2025-01-17T19:36:58.113610Z",
            "url": "https://files.pythonhosted.org/packages/c4/73/05401af4349a639a66ea815c4d4b5b3c3c0844b404ce5c11335f680c6590/linuxnet_qos-3.4.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "06b7f6e686a37a2f3a119e03a210b31197edbdcdd95f319b3f0fb829e333316e",
                "md5": "6ba133858474407789ca5c84ce1353c0",
                "sha256": "ac335f37b46d967e0754d8d3e7cc9b9e70f33e82d36e3a0c5cf3246d1131ffc5"
            },
            "downloads": -1,
            "filename": "linuxnet_qos-3.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "6ba133858474407789ca5c84ce1353c0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 87146,
            "upload_time": "2025-01-17T19:37:00",
            "upload_time_iso_8601": "2025-01-17T19:37:00.458465Z",
            "url": "https://files.pythonhosted.org/packages/06/b7/f6e686a37a2f3a119e03a210b31197edbdcdd95f319b3f0fb829e333316e/linuxnet_qos-3.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-17 19:37:00",
    "github": false,
    "gitlab": true,
    "bitbucket": false,
    "codeberg": false,
    "gitlab_user": "panos-tools",
    "gitlab_project": "linuxnet-qos",
    "lcname": "linuxnet-qos"
}
        
Elapsed time: 0.68376s