brintos

brintos / linux-shallow public Read only

0
0
Text · 3.6 KiB · 1bd94f4 Raw
170 lines · yaml
1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)2 3name: tcp_metrics4 5protocol: genetlink-legacy6 7doc: |8  Management interface for TCP metrics.9 10c-family-name: tcp-metrics-genl-name11c-version-name: tcp-metrics-genl-version12max-by-define: true13kernel-policy: global14 15definitions:16  -17    name: tcp-fastopen-cookie-max18    type: const19    value: 1620 21attribute-sets:22  -23    name: tcp-metrics24    name-prefix: tcp-metrics-attr-25    attributes:26      -27        name: addr-ipv428        type: u3229        byte-order: big-endian30        display-hint: ipv431      -32        name: addr-ipv633        type: binary34        checks:35          min-len: 1636        byte-order: big-endian37        display-hint: ipv638      -39        name: age40        type: u6441      -42        name: tw-tsval43        type: u3244        doc: unused45      -46        name: tw-ts-stamp47        type: s3248        doc: unused49      -50        name: vals51        type: nest52        nested-attributes: metrics53      -54        name: fopen-mss55        type: u1656      -57        name: fopen-syn-drops58        type: u1659      -60        name: fopen-syn-drop-ts61        type: u6462      -63        name: fopen-cookie64        type: binary65        checks:66          min-len: tcp-fastopen-cookie-max67      -68        name: saddr-ipv469        type: u3270        byte-order: big-endian71        display-hint: ipv472      -73        name: saddr-ipv674        type: binary75        checks:76          min-len: 1677        byte-order: big-endian78        display-hint: ipv679      -80        name: pad81        type: pad82 83  -84    name: metrics85    # Intentionally don't define the name-prefix, see below.86    doc: |87      Attributes with metrics. Note that the values here do not match88      the TCP_METRIC_* defines in the kernel, because kernel defines89      are off-by one (e.g. rtt is defined as enum 0, while netlink carries90      attribute type 1).91    attributes:92      -93        name: rtt94        type: u3295        doc: |96          Round Trip Time (RTT), in msecs with 3 bits fractional97          (left-shift by 3 to get the msec value).98      -99        name: rttvar100        type: u32101        doc: |102          Round Trip Time VARiance (RTT), in msecs with 2 bits fractional103          (left-shift by 2 to get the msec value).104      -105        name: ssthresh106        type: u32107        doc: Slow Start THRESHold.108      -109        name: cwnd110        type: u32111        doc: Congestion Window.112      -113        name: reodering114        type: u32115        doc: Reodering metric.116      -117        name: rtt-us118        type: u32119        doc: |120          Round Trip Time (RTT), in usecs, with 3 bits fractional121          (left-shift by 3 to get the msec value).122      -123        name: rttvar-us124        type: u32125        doc: |126          Round Trip Time (RTT), in usecs, with 2 bits fractional127          (left-shift by 3 to get the msec value).128 129operations:130  list:131    -132      name: get133      doc: Retrieve metrics.134      attribute-set: tcp-metrics135 136      dont-validate: [ strict, dump ]137 138      do:139        request: &sel_attrs140          attributes:141            - addr-ipv4142            - addr-ipv6143            - saddr-ipv4144            - saddr-ipv6145        reply: &all_attrs146          attributes:147            - addr-ipv4148            - addr-ipv6149            - saddr-ipv4150            - saddr-ipv6151            - age152            - vals153            - fopen-mss154            - fopen-syn-drops155            - fopen-syn-drop-ts156            - fopen-cookie157      dump:158        reply: *all_attrs159 160    -161      name: del162      doc: Delete metrics.163      attribute-set: tcp-metrics164 165      dont-validate: [ strict, dump ]166      flags: [ admin-perm ]167 168      do:169        request: *sel_attrs170