Skip to content
Snippets Groups Projects
user avatar
Oskar Viljasaar authored
This implements the get_status method of the qos object, and
calls into libqos in easy-soc-libs to get the actual values to
serve them back to the caller.

This has been inspired by existing *mngr implementations.

Signed-off-by: default avatarOskar Viljasaar <oskar.viljasaar@iopsys.eu>
1853ea3e
History

QoS Manager

This program implements methods provided by the qos object on U-Bus. This is done by calling libqos provided by easy-soc-libs.

So far, the only method implemented is:

  • get_status : {"ifname":"String","qid":"Integer"}

    • ifname: interface name for which we want to get the QoS statistics
    • qid: the TX queue ID for which we want to get the statistics. Optional argument: if not provided, the statistics of all queues for a given interface are returned.

    The response given by this method is a JSON-formatted dump as such:

    {
        "queues": [
                {
                "qid": 1,
                "iface": "eth1",
                "tx_packets": 1146,
                "tx_bytes": 447762,
                "tx_dropped_packets": 0,
                "tx_dropped_bytes": 0
            },
        ]
    }

TODO

  • Reimplement the reload method provided by existing scripts
  • Tests
  • Integration in the OS build