File Index
Files and directories
Sign in
FILE

tcp_metrics.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/netlink/specs/tcp_metrics.yaml YAML
  1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
  2---
  3name: tcp_metrics
  4
  5protocol: genetlink-legacy
  6
  7doc: |
  8  Management interface for TCP metrics.
  9
 10c-family-name: tcp-metrics-genl-name
 11c-version-name: tcp-metrics-genl-version
 12max-by-define: true
 13kernel-policy: global
 14
 15definitions:
 16  -
 17    name: tcp-fastopen-cookie-max
 18    type: const
 19    value: 16
 20
 21attribute-sets:
 22  -
 23    name: tcp-metrics
 24    name-prefix: tcp-metrics-attr-
 25    attributes:
 26      -
 27        name: addr-ipv4
 28        type: u32
 29        byte-order: big-endian
 30        display-hint: ipv4
 31      -
 32        name: addr-ipv6
 33        type: binary
 34        checks:
 35          min-len: 16
 36        byte-order: big-endian
 37        display-hint: ipv6
 38      -
 39        name: age
 40        type: u64
 41      -
 42        name: tw-tsval
 43        type: u32
 44        doc: unused
 45      -
 46        name: tw-ts-stamp
 47        type: s32
 48        doc: unused
 49      -
 50        name: vals
 51        type: nest
 52        nested-attributes: metrics
 53      -
 54        name: fopen-mss
 55        type: u16
 56      -
 57        name: fopen-syn-drops
 58        type: u16
 59      -
 60        name: fopen-syn-drop-ts
 61        type: u64
 62      -
 63        name: fopen-cookie
 64        type: binary
 65        checks:
 66          min-len: tcp-fastopen-cookie-max
 67      -
 68        name: saddr-ipv4
 69        type: u32
 70        byte-order: big-endian
 71        display-hint: ipv4
 72      -
 73        name: saddr-ipv6
 74        type: binary
 75        checks:
 76          min-len: 16
 77        byte-order: big-endian
 78        display-hint: ipv6
 79      -
 80        name: pad
 81        type: pad
 82
 83  -
 84    name: metrics
 85    # Intentionally don't define the name-prefix, see below.
 86    doc: |
 87      Attributes with metrics. Note that the values here do not match
 88      the TCP_METRIC_* defines in the kernel, because kernel defines
 89      are off-by one (e.g. rtt is defined as enum 0, while netlink carries
 90      attribute type 1).
 91    attributes:
 92      -
 93        name: rtt
 94        type: u32
 95        doc: |
 96          Round Trip Time (RTT), in msecs with 3 bits fractional
 97          (left-shift by 3 to get the msec value).
 98      -
 99        name: rttvar
100        type: u32
101        doc: |
102          Round Trip Time VARiance (RTT), in msecs with 2 bits fractional
103          (left-shift by 2 to get the msec value).
104      -
105        name: ssthresh
106        type: u32
107        doc: Slow Start THRESHold.
108      -
109        name: cwnd
110        type: u32
111        doc: Congestion Window.
112      -
113        name: reodering
114        type: u32
115        doc: Reodering metric.
116      -
117        name: rtt-us
118        type: u32
119        doc: |
120          Round Trip Time (RTT), in usecs, with 3 bits fractional
121          (left-shift by 3 to get the msec value).
122      -
123        name: rttvar-us
124        type: u32
125        doc: |
126          Round Trip Time (RTT), in usecs, with 2 bits fractional
127          (left-shift by 3 to get the msec value).
128
129operations:
130  list:
131    -
132      name: get
133      doc: Retrieve metrics.
134      attribute-set: tcp-metrics
135
136      dont-validate: [strict, dump]
137
138      do:
139        request: &sel_attrs
140          attributes:
141            - addr-ipv4
142            - addr-ipv6
143            - saddr-ipv4
144            - saddr-ipv6
145        reply: &all_attrs
146          attributes:
147            - addr-ipv4
148            - addr-ipv6
149            - saddr-ipv4
150            - saddr-ipv6
151            - age
152            - vals
153            - fopen-mss
154            - fopen-syn-drops
155            - fopen-syn-drop-ts
156            - fopen-cookie
157      dump:
158        reply: *all_attrs
159
160    -
161      name: del
162      doc: Delete metrics.
163      attribute-set: tcp-metrics
164
165      dont-validate: [strict, dump]
166      flags: [admin-perm]
167
168      do:
169        request: *sel_attrs
~/ Read-only file preview.