.. SPDX-License-Identifier: GPL-2.0 .. NOTE: This document was auto-generated. =================================== Family ``tc`` netlink specification =================================== .. contents:: ------- Summary ------- Netlink raw family for tc qdisc, chain, class and filter configuration over rtnetlink. ---------- Operations ---------- newqdisc ======== Create new tc qdisc. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``kind``, ``options``, ``rate``, ``chain``, ``ingress-block``, ``egress-block``] delqdisc ======== Delete existing tc qdisc. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** getqdisc ======== Get / dump tc qdisc information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``dump-invisible``] **reply** :attributes: [``kind``, ``options``, ``stats``, ``xstats``, ``rate``, ``fcnt``, ``stats2``, ``stab``, ``chain``, ``ingress-block``, ``egress-block``] newtclass ========= Get / dump tc traffic class information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``kind``, ``options``, ``rate``, ``chain``, ``ingress-block``, ``egress-block``] deltclass ========= Get / dump tc traffic class information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** gettclass ========= Get / dump tc traffic class information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** **reply** :attributes: [``kind``, ``options``, ``stats``, ``xstats``, ``rate``, ``fcnt``, ``stats2``, ``stab``, ``chain``, ``ingress-block``, ``egress-block``] newtfilter ========== Get / dump tc filter information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``kind``, ``options``, ``rate``, ``chain``, ``ingress-block``, ``egress-block``] deltfilter ========== Get / dump tc filter information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``chain``, ``kind``] gettfilter ========== Get / dump tc filter information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``chain``, ``kind``] **reply** :attributes: [``kind``, ``options``, ``stats``, ``xstats``, ``rate``, ``fcnt``, ``stats2``, ``stab``, ``chain``, ``ingress-block``, ``egress-block``] :dump: **request** :attributes: [``chain``, ``dump-flags``] **reply** :attributes: [``kind``, ``options``, ``stats``, ``xstats``, ``rate``, ``fcnt``, ``stats2``, ``stab``, ``chain``, ``ingress-block``, ``egress-block``] newchain ======== Get / dump tc chain information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``kind``, ``options``, ``rate``, ``chain``, ``ingress-block``, ``egress-block``] delchain ======== Get / dump tc chain information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``chain``] getchain ======== Get / dump tc chain information. :attribute-set: tc-attrs :fixed-header: tcmsg :do: **request** :attributes: [``chain``] **reply** :attributes: [``kind``, ``options``, ``stats``, ``xstats``, ``rate``, ``fcnt``, ``stats2``, ``stab``, ``chain``, ``ingress-block``, ``egress-block``] ---------------- Multicast groups ---------------- - rtnlgrp-tc ----------- Definitions ----------- tcmsg ===== :type: struct :members: :family: :pad: :ifindex: :handle: :parent: :info: tc-cls-flags ============ :type: flags :entries: - ``skip-hw`` - ``skip-sw`` - ``in-hw`` - ``not-in-nw`` - ``verbose`` tc-stats ======== :type: struct :members: :bytes: :packets: :drops: :overlimits: :bps: :pps: :qlen: :backlog: tc-cbs-qopt =========== :type: struct :members: :offload: :pad: :hicredit: :locredit: :idleslope: :sendslope: tc-etf-qopt =========== :type: struct :members: :delta: :clockid: :flags: tc-fifo-qopt ============ :type: struct :members: :limit: tc-htb-opt ========== :type: struct :members: :rate: :ceil: :buffer: :cbuffer: :quantum: :level: :prio: tc-htb-glob =========== :type: struct :members: :version: :rate2quantum: :defcls: :debug: :direct-pkts: tc-gred-qopt ============ :type: struct :members: :limit: :qth-min: :qth-max: :DP: :backlog: :qave: :forced: :early: :other: :pdrop: :Wlog: :Plog: :Scell_log: :prio: :packets: :bytesin: tc-gred-sopt ============ :type: struct :members: :DPs: :def_DP: :grio: :flags: :pad: tc-hfsc-qopt ============ :type: struct :members: :defcls: tc-mqprio-qopt ============== :type: struct :members: :num-tc: :prio-tc-map: :hw: :count: :offset: tc-multiq-qopt ============== :type: struct :members: :bands: :max-bands: tc-netem-qopt ============= :type: struct :members: :latency: :limit: :loss: :gap: :duplicate: :jitter: tc-plug-qopt ============ :type: struct :members: :action: :limit: tc-prio-qopt ============ :type: struct :members: :bands: :priomap: tc-red-qopt =========== :type: struct :members: :limit: :qth-min: :qth-max: :Wlog: :Plog: :Scell-log: :flags: tc-sfb-qopt =========== :type: struct :members: :rehash-interval: :warmup-time: :max: :bin-size: :increment: :decrement: :limit: :penalty-rate: :penalty-burst: tc-sfq-qopt-v1 ============== :type: struct :members: :quantum: :perturb-period: :limit: :divisor: :flows: :depth: :headdrop: :limit: :qth-min: :qth-mac: :Wlog: :Plog: :Scell-log: :flags: :max-P: :prob-drop: :forced-drop: :prob-mark: :forced-mark: :prob-mark-head: :forced-mark-head: tc-tbf-qopt =========== :type: struct :members: :rate: :peakrate: :limit: :buffer: :mtu: tc-sizespec =========== :type: struct :members: :cell-log: :size-log: :cell-align: :overhead: :linklayer: :mpu: :mtu: :tsize: gnet-estimator ============== :type: struct :members: :interval: :ewma-log: -------------- Attribute sets -------------- tc-attrs ======== kind (``string``) ~~~~~~~~~~~~~~~~~ options (``sub-message``) ~~~~~~~~~~~~~~~~~~~~~~~~~ :sub-message: tc-options-msg :selector: kind stats (``binary``) ~~~~~~~~~~~~~~~~~~ :struct: tc-stats xstats (``binary``) ~~~~~~~~~~~~~~~~~~~ rate (``binary``) ~~~~~~~~~~~~~~~~~ :struct: gnet-estimator fcnt (``u32``) ~~~~~~~~~~~~~~ stats2 (``nest``) ~~~~~~~~~~~~~~~~~ :nested-attributes: tca-stats-attrs stab (``nest``) ~~~~~~~~~~~~~~~ :nested-attributes: tca-stab-attrs pad (``pad``) ~~~~~~~~~~~~~ dump-invisible (``flag``) ~~~~~~~~~~~~~~~~~~~~~~~~~ chain (``u32``) ~~~~~~~~~~~~~~~ hw-offload (``u8``) ~~~~~~~~~~~~~~~~~~~ ingress-block (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ egress-block (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ dump-flags (``bitfield32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ext-warn-msg (``string``) ~~~~~~~~~~~~~~~~~~~~~~~~~ tc-cake-attrs ============= pad (``pad``) ~~~~~~~~~~~~~ base-rate64 (``u64``) ~~~~~~~~~~~~~~~~~~~~~ diffserv-mode (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ atm (``u32``) ~~~~~~~~~~~~~ flow-mode (``u32``) ~~~~~~~~~~~~~~~~~~~ overhead (``u32``) ~~~~~~~~~~~~~~~~~~ rtt (``u32``) ~~~~~~~~~~~~~ target (``u32``) ~~~~~~~~~~~~~~~~ autorate (``u32``) ~~~~~~~~~~~~~~~~~~ memory (``u32``) ~~~~~~~~~~~~~~~~ nat (``u32``) ~~~~~~~~~~~~~ raw (``u32``) ~~~~~~~~~~~~~ wash (``u32``) ~~~~~~~~~~~~~~ mpu (``u32``) ~~~~~~~~~~~~~ ingress (``u32``) ~~~~~~~~~~~~~~~~~ ack-filter (``u32``) ~~~~~~~~~~~~~~~~~~~~ split-gso (``u32``) ~~~~~~~~~~~~~~~~~~~ fwmark (``u32``) ~~~~~~~~~~~~~~~~ tc-cake-stats-attrs =================== pad (``pad``) ~~~~~~~~~~~~~ capacity-estimate64 (``u64``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ memory-limit (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ memory-used (``u32``) ~~~~~~~~~~~~~~~~~~~~~ avg-netoff (``u32``) ~~~~~~~~~~~~~~~~~~~~ min-netlen (``u32``) ~~~~~~~~~~~~~~~~~~~~ max-netlen (``u32``) ~~~~~~~~~~~~~~~~~~~~ min-adjlen (``u32``) ~~~~~~~~~~~~~~~~~~~~ max-adjlen (``u32``) ~~~~~~~~~~~~~~~~~~~~ tin-stats (``binary``) ~~~~~~~~~~~~~~~~~~~~~~ deficit (``s32``) ~~~~~~~~~~~~~~~~~ cobalt-count (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ dropping (``u32``) ~~~~~~~~~~~~~~~~~~ drop-next-us (``s32``) ~~~~~~~~~~~~~~~~~~~~~~ p-drop (``u32``) ~~~~~~~~~~~~~~~~ blue-timer-us (``s32``) ~~~~~~~~~~~~~~~~~~~~~~~ tc-cbs-attrs ============ parms (``binary``) ~~~~~~~~~~~~~~~~~~ :struct: tc-cbs-qopt tc-choke-attrs ============== parms (``binary``) ~~~~~~~~~~~~~~~~~~ :struct: tc-red-qopt stab (``binary``) ~~~~~~~~~~~~~~~~~ max-p (``u32``) ~~~~~~~~~~~~~~~ tc-codel-attrs ============== target (``u32``) ~~~~~~~~~~~~~~~~ limit (``u32``) ~~~~~~~~~~~~~~~ interval (``u32``) ~~~~~~~~~~~~~~~~~~ ecn (``u32``) ~~~~~~~~~~~~~ ce-threshold (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ tc-drr-attrs ============ quantum (``u32``) ~~~~~~~~~~~~~~~~~ tc-flower-attrs =============== classid (``u32``) ~~~~~~~~~~~~~~~~~ indev (``string``) ~~~~~~~~~~~~~~~~~~ act (``array-nest``) ~~~~~~~~~~~~~~~~~~~~ :nested-attributes: tc-act-attrs key-eth-dst (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: mac key-eth-dst-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: mac key-eth-src (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: mac key-eth-src-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: mac key-eth-type (``u16``) ~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-ip-proto (``u8``) ~~~~~~~~~~~~~~~~~~~~~ key-ipv4-src (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-ipv4-src-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-ipv4-dst (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-ipv4-dst-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-ipv6-src (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-ipv6-src-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-ipv6-dst (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-ipv6-dst-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-tcp-src (``u16``) ~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-tcp-dst (``u16``) ~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-udp-src (``u16``) ~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-udp-dst (``u16``) ~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian flags (``u32``) ~~~~~~~~~~~~~~~ :enum: tc-cls-flags :enum-as-flags: True key-vlan-id (``u16``) ~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-vlan-prio (``u8``) ~~~~~~~~~~~~~~~~~~~~~~ key-vlan-eth-type (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-enc-key-id (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-enc-ipv4-src (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-enc-ipv4-src-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-enc-ipv4-dst (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-enc-ipv4-dst-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian :display-hint: ipv4 key-enc-ipv6-src (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-enc-ipv6-src-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-enc-ipv6-dst (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-enc-ipv6-dst-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :display-hint: ipv6 key-tcp-src-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-tcp-dst-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-udp-src-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-udp-dst-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-sctp-src-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-sctp-dst-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-sctp-src (``u16``) ~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-sctp-dst (``u16``) ~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-enc-udp-src-port (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-enc-udp-src-port-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-enc-udp-dst-port (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-enc-udp-dst-port-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-flags (``u32``) ~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-flags-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-icmpv4-code (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-icmpv4-code-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-icmpv4-type (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-icmpv4-type-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-icmpv6-code (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-icmpv6-code-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-icmpv6-type (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-icmpv6-type-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-arp-sip (``u32``) ~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-arp-sip-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-arp-tip (``u32``) ~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-arp-tip-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-arp-op (``u8``) ~~~~~~~~~~~~~~~~~~~ key-arp-op-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-arp-sha (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-arp-sha-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-arp-tha (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-arp-tha-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-mpls-ttl (``u8``) ~~~~~~~~~~~~~~~~~~~~~ key-mpls-bos (``u8``) ~~~~~~~~~~~~~~~~~~~~~ key-mpls-tc (``u8``) ~~~~~~~~~~~~~~~~~~~~ key-mpls-label (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-tcp-flags (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-tcp-flags-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-ip-tos (``u8``) ~~~~~~~~~~~~~~~~~~~ key-ip-tos-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-ip-ttl (``u8``) ~~~~~~~~~~~~~~~~~~~ key-ip-ttl-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~ key-cvlan-id (``u16``) ~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-cvlan-prio (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~ key-cvlan-eth-type (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-enc-ip-tos (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~ key-enc-ip-tos-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-enc-ip-ttl (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~ key-enc-ip-ttl-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-enc-opts (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~ key-enc-opts-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ in-hw-count (``u32``) ~~~~~~~~~~~~~~~~~~~~~ key-port-src-min (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-port-src-max (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-port-dst-min (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-port-dst-max (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-ct-state (``u16``) ~~~~~~~~~~~~~~~~~~~~~~ key-ct-state-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-ct-zone (``u16``) ~~~~~~~~~~~~~~~~~~~~~ key-ct-zone-mask (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ key-ct-mark (``u32``) ~~~~~~~~~~~~~~~~~~~~~ key-ct-mark-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ key-ct-labels (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ key-ct-labels-mask (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ key-mpls-opts (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ key-hash (``u32``) ~~~~~~~~~~~~~~~~~~ key-hash-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ key-num-of-vlans (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~ key-pppoe-sid (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-ppp-proto (``u16``) ~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian key-l2-tpv3-sid (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~ :byte-order: big-endian tc-gred-attrs ============= parms (``binary``) ~~~~~~~~~~~~~~~~~~ stab (``binary``) ~~~~~~~~~~~~~~~~~ :sub-type: u8 dps (``binary``) ~~~~~~~~~~~~~~~~ :struct: tc-gred-sopt max-p (``binary``) ~~~~~~~~~~~~~~~~~~ :sub-type: u32 limit (``u32``) ~~~~~~~~~~~~~~~ vq-list (``nest``) ~~~~~~~~~~~~~~~~~~ :nested-attributes: tca-gred-vq-list-attrs tca-gred-vq-list-attrs ====================== entry (``nest``) ~~~~~~~~~~~~~~~~ :nested-attributes: tca-gred-vq-entry-attrs :multi-attr: True tca-gred-vq-entry-attrs ======================= pad (``pad``) ~~~~~~~~~~~~~ dp (``u32``) ~~~~~~~~~~~~ stat-bytes (``u32``) ~~~~~~~~~~~~~~~~~~~~ stat-packets (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ stat-backlog (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ stat-prob-drop (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~ stat-prob-mark (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~ stat-forced-drop (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ stat-forced-mark (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ stat-pdrop (``u32``) ~~~~~~~~~~~~~~~~~~~~ stat-other (``u32``) ~~~~~~~~~~~~~~~~~~~~ flags (``u32``) ~~~~~~~~~~~~~~~ tc-hfsc-attrs ============= rsc (``binary``) ~~~~~~~~~~~~~~~~ fsc (``binary``) ~~~~~~~~~~~~~~~~ usc (``binary``) ~~~~~~~~~~~~~~~~ tc-hhf-attrs ============ backlog-limit (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ quantum (``u32``) ~~~~~~~~~~~~~~~~~ hh-flows-limit (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~ reset-timeout (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ admit-bytes (``u32``) ~~~~~~~~~~~~~~~~~~~~~ evict-timeout (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ non-hh-weight (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ tc-htb-attrs ============ parms (``binary``) ~~~~~~~~~~~~~~~~~~ :struct: tc-htb-opt init (``binary``) ~~~~~~~~~~~~~~~~~ :struct: tc-htb-glob ctab (``binary``) ~~~~~~~~~~~~~~~~~ rtab (``binary``) ~~~~~~~~~~~~~~~~~ direct-qlen (``u32``) ~~~~~~~~~~~~~~~~~~~~~ rate64 (``u64``) ~~~~~~~~~~~~~~~~ ceil64 (``u64``) ~~~~~~~~~~~~~~~~ pad (``pad``) ~~~~~~~~~~~~~ offload (``flag``) ~~~~~~~~~~~~~~~~~~ tc-act-attrs ============ kind (``string``) ~~~~~~~~~~~~~~~~~ options (``sub-message``) ~~~~~~~~~~~~~~~~~~~~~~~~~ :sub-message: tc-act-options-msg :selector: kind index (``u32``) ~~~~~~~~~~~~~~~ stats (``binary``) ~~~~~~~~~~~~~~~~~~ pad (``pad``) ~~~~~~~~~~~~~ cookie (``binary``) ~~~~~~~~~~~~~~~~~~~ flags (``bitfield32``) ~~~~~~~~~~~~~~~~~~~~~~ hw-stats (``bitfield32``) ~~~~~~~~~~~~~~~~~~~~~~~~~ used-hw-stats (``bitfield32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ in-hw-count (``u32``) ~~~~~~~~~~~~~~~~~~~~~ tc-etf-attrs ============ parms (``binary``) ~~~~~~~~~~~~~~~~~~ :struct: tc-etf-qopt tc-ets-attrs ============ nbands (``u8``) ~~~~~~~~~~~~~~~ nstrict (``u8``) ~~~~~~~~~~~~~~~~ quanta (``nest``) ~~~~~~~~~~~~~~~~~ :nested-attributes: tc-ets-attrs quanta-band (``u32``) ~~~~~~~~~~~~~~~~~~~~~ :multi-attr: True priomap (``nest``) ~~~~~~~~~~~~~~~~~~ :nested-attributes: tc-ets-attrs priomap-band (``u8``) ~~~~~~~~~~~~~~~~~~~~~ :multi-attr: True tc-fq-attrs =========== plimit (``u32``) ~~~~~~~~~~~~~~~~ flow-plimit (``u32``) ~~~~~~~~~~~~~~~~~~~~~ quantum (``u32``) ~~~~~~~~~~~~~~~~~ initial-quantum (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~ rate-enable (``u32``) ~~~~~~~~~~~~~~~~~~~~~ flow-default-rate (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ flow-max-rate (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~ buckets-log (``u32``) ~~~~~~~~~~~~~~~~~~~~~ flow-refill-delay (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ orphan-mask (``u32``) ~~~~~~~~~~~~~~~~~~~~~ low-rate-threshold (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ce-threshold (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ timer-slack (``u32``) ~~~~~~~~~~~~~~~~~~~~~ horizon (``u32``) ~~~~~~~~~~~~~~~~~ horizon-drop (``u8``) ~~~~~~~~~~~~~~~~~~~~~ tc-fq-codel-attrs ================= target (``u32``) ~~~~~~~~~~~~~~~~ limit (``u32``) ~~~~~~~~~~~~~~~ interval (``u32``) ~~~~~~~~~~~~~~~~~~ ecn (``u32``) ~~~~~~~~~~~~~ flows (``u32``) ~~~~~~~~~~~~~~~ quantum (``u32``) ~~~~~~~~~~~~~~~~~ ce-threshold (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ drop-batch-size (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~ memory-limit (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ ce-threshold-selector (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ce-threshold-mask (``u8``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ tc-fq-pie-attrs =============== limit (``u32``) ~~~~~~~~~~~~~~~ flows (``u32``) ~~~~~~~~~~~~~~~ target (``u32``) ~~~~~~~~~~~~~~~~ tupdate (``u32``) ~~~~~~~~~~~~~~~~~ alpha (``u32``) ~~~~~~~~~~~~~~~ beta (``u32``) ~~~~~~~~~~~~~~ quantum (``u32``) ~~~~~~~~~~~~~~~~~ memory-limit (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ ecn-prob (``u32``) ~~~~~~~~~~~~~~~~~~ ecn (``u32``) ~~~~~~~~~~~~~ bytemode (``u32``) ~~~~~~~~~~~~~~~~~~ dq-rate-estimator (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ tc-netem-attrs ============== corr (``binary``) ~~~~~~~~~~~~~~~~~ delay-dist (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~ :sub-type: s16 reorder (``binary``) ~~~~~~~~~~~~~~~~~~~~ corrupt (``binary``) ~~~~~~~~~~~~~~~~~~~~ loss (``binary``) ~~~~~~~~~~~~~~~~~ rate (``binary``) ~~~~~~~~~~~~~~~~~ ecn (``u32``) ~~~~~~~~~~~~~ rate64 (``u64``) ~~~~~~~~~~~~~~~~ pad (``u32``) ~~~~~~~~~~~~~ latency64 (``s64``) ~~~~~~~~~~~~~~~~~~~ jitter64 (``s64``) ~~~~~~~~~~~~~~~~~~ slot (``binary``) ~~~~~~~~~~~~~~~~~ slot-dist (``binary``) ~~~~~~~~~~~~~~~~~~~~~~ :sub-type: s16 tc-pie-attrs ============ target (``u32``) ~~~~~~~~~~~~~~~~ limit (``u32``) ~~~~~~~~~~~~~~~ tupdate (``u32``) ~~~~~~~~~~~~~~~~~ alpha (``u32``) ~~~~~~~~~~~~~~~ beta (``u32``) ~~~~~~~~~~~~~~ ecn (``u32``) ~~~~~~~~~~~~~ bytemode (``u32``) ~~~~~~~~~~~~~~~~~~ dq-rate-estimator (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ tc-qfq-attrs ============ weight (``u32``) ~~~~~~~~~~~~~~~~ lmax (``u32``) ~~~~~~~~~~~~~~ tc-red-attrs ============ parms (``binary``) ~~~~~~~~~~~~~~~~~~ :struct: tc-red-qopt stab (``binary``) ~~~~~~~~~~~~~~~~~ max-p (``u32``) ~~~~~~~~~~~~~~~ flags (``binary``) ~~~~~~~~~~~~~~~~~~ early-drop-block (``u32``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ mark-block (``u32``) ~~~~~~~~~~~~~~~~~~~~ tc-taprio-attrs =============== priomap (``binary``) ~~~~~~~~~~~~~~~~~~~~ :struct: tc-mqprio-qopt sched-entry-list (``nest``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~ :nested-attributes: tc-taprio-sched-entry-list sched-base-time (``s64``) ~~~~~~~~~~~~~~~~~~~~~~~~~ sched-single-entry (``nest``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :nested-attributes: tc-taprio-sched-entry sched-clockid (``s32``) ~~~~~~~~~~~~~~~~~~~~~~~ pad (``pad``) ~~~~~~~~~~~~~ admin-sched (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~~ sched-cycle-time (``s64``) ~~~~~~~~~~~~~~~~~~~~~~~~~~ sched-cycle-time-extension (``s64``) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ flags (``u32``) ~~~~~~~~~~~~~~~ txtime-delay (``u32``) ~~~~~~~~~~~~~~~~~~~~~~ tc-entry (``nest``) ~~~~~~~~~~~~~~~~~~~ :nested-attributes: tc-taprio-tc-entry-attrs tc-taprio-sched-entry-list ========================== entry (``nest``) ~~~~~~~~~~~~~~~~ :nested-attributes: tc-taprio-sched-entry tc-taprio-sched-entry ===================== index (``u32``) ~~~~~~~~~~~~~~~ cmd (``u8``) ~~~~~~~~~~~~ gate-mask (``u32``) ~~~~~~~~~~~~~~~~~~~ interval (``u32``) ~~~~~~~~~~~~~~~~~~ tc-taprio-tc-entry-attrs ======================== index (``u32``) ~~~~~~~~~~~~~~~ max-sdu (``u32``) ~~~~~~~~~~~~~~~~~ fp (``u32``) ~~~~~~~~~~~~ tc-tbf-attrs ============ parms (``binary``) ~~~~~~~~~~~~~~~~~~ :struct: tc-tbf-qopt rtab (``binary``) ~~~~~~~~~~~~~~~~~ ptab (``binary``) ~~~~~~~~~~~~~~~~~ rate64 (``u64``) ~~~~~~~~~~~~~~~~ prate4 (``u64``) ~~~~~~~~~~~~~~~~ burst (``u32``) ~~~~~~~~~~~~~~~ pburst (``u32``) ~~~~~~~~~~~~~~~~ pad (``pad``) ~~~~~~~~~~~~~ tca-gact-attrs ============== tm (``binary``) ~~~~~~~~~~~~~~~ parms (``binary``) ~~~~~~~~~~~~~~~~~~ prob (``binary``) ~~~~~~~~~~~~~~~~~ pad (``pad``) ~~~~~~~~~~~~~ tca-stab-attrs ============== base (``binary``) ~~~~~~~~~~~~~~~~~ :struct: tc-sizespec data (``binary``) ~~~~~~~~~~~~~~~~~ tca-stats-attrs =============== basic (``binary``) ~~~~~~~~~~~~~~~~~~ rate-est (``binary``) ~~~~~~~~~~~~~~~~~~~~~ queue (``binary``) ~~~~~~~~~~~~~~~~~~ app (``binary``) ~~~~~~~~~~~~~~~~ :sub-message: tca-stats-app-msg :selector: kind rate-est64 (``binary``) ~~~~~~~~~~~~~~~~~~~~~~~ pad (``pad``) ~~~~~~~~~~~~~ basic-hw (``binary``) ~~~~~~~~~~~~~~~~~~~~~ pkt64 (``binary``) ~~~~~~~~~~~~~~~~~~ ------------ Sub-messages ------------ tc-options-msg ============== - **bfifo** :fixed-header: tc-fifo-qopt - **cake** :attribute-set: tc-cake-attrs - **cbs** :attribute-set: tc-cbs-attrs - **choke** :attribute-set: tc-choke-attrs - **clsact** - **codel** :attribute-set: tc-codel-attrs - **drr** :attribute-set: tc-drr-attrs - **etf** :attribute-set: tc-etf-attrs - **ets** :attribute-set: tc-ets-attrs - **fq** :attribute-set: tc-fq-attrs - **fq_codel** :attribute-set: tc-fq-codel-attrs - **fq_pie** :attribute-set: tc-fq-pie-attrs - **flower** :attribute-set: tc-flower-attrs - **gred** :attribute-set: tc-gred-attrs - **hfsc** :fixed-header: tc-hfsc-qopt - **hhf** :attribute-set: tc-hhf-attrs - **htb** :attribute-set: tc-htb-attrs - **ingress** - **mq** - **mqprio** :fixed-header: tc-mqprio-qopt - **multiq** :fixed-header: tc-multiq-qopt - **netem** :fixed-header: tc-netem-qopt :attribute-set: tc-netem-attrs - **pfifo** :fixed-header: tc-fifo-qopt - **pfifo_fast** :fixed-header: tc-prio-qopt - **pfifo_head_drop** :fixed-header: tc-fifo-qopt - **pie** :attribute-set: tc-pie-attrs - **plug** :fixed-header: tc-plug-qopt - **prio** :fixed-header: tc-prio-qopt - **qfq** :attribute-set: tc-qfq-attrs - **red** :attribute-set: tc-red-attrs - **sfb** :fixed-header: tc-sfb-qopt - **sfq** :fixed-header: tc-sfq-qopt-v1 - **taprio** :attribute-set: tc-taprio-attrs - **tbf** :attribute-set: tc-tbf-attrs tc-act-options-msg ================== - **gact** :attribute-set: tca-gact-attrs tca-stats-app-msg ================= - **bfifo** - **blackhole** - **cake** :attribute-set: tc-cake-stats-attrs - **cbs** - **choke** - **clsact** - **codel** - **drr** - **etf** - **ets** - **fq** - **fq_codel** - **fq_pie** - **flower** - **gred** - **hfsc** - **hhf** - **htb** - **ingress** - **mq** - **mqprio** - **multiq** - **netem** - **noqueue** - **pfifo** - **pfifo_fast** - **pfifo_head_drop** - **pie** - **plug** - **prio** - **qfq** - **red** - **sfb** - **sfq** - **taprio** - **tbf**