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-hwskip-swin-hwnot-in-nwverbose
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)¶
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