.. SPDX-License-Identifier: GPL-2.0
.. NOTE: This document was auto-generated.


============================================
Family ``tcp_metrics`` netlink specification
============================================


.. contents:: :depth: 3


-------
Summary
-------


Management interface for TCP metrics.


----------
Operations
----------


.. _tcp_metrics-operation-get:

get
===
Retrieve metrics.

:attribute-set: :ref:`tcp_metrics-attribute-set-tcp-metrics`
:dont-validate: ['strict', 'dump']
:do:
    **request**
        :attributes: [``addr-ipv4``, ``addr-ipv6``, ``saddr-ipv4``, ``saddr-ipv6``]

    **reply**
        :attributes: [``addr-ipv4``, ``addr-ipv6``, ``saddr-ipv4``, ``saddr-ipv6``, ``age``, ``vals``, ``fopen-mss``, ``fopen-syn-drops``, ``fopen-syn-drop-ts``, ``fopen-cookie``]

:dump:
    **reply**
        :attributes: [``addr-ipv4``, ``addr-ipv6``, ``saddr-ipv4``, ``saddr-ipv6``, ``age``, ``vals``, ``fopen-mss``, ``fopen-syn-drops``, ``fopen-syn-drop-ts``, ``fopen-cookie``]



.. _tcp_metrics-operation-del:

del
===
Delete metrics.

:attribute-set: :ref:`tcp_metrics-attribute-set-tcp-metrics`
:dont-validate: ['strict', 'dump']
:flags: [``admin-perm``]
:do:
    **request**
        :attributes: [``addr-ipv4``, ``addr-ipv6``, ``saddr-ipv4``, ``saddr-ipv6``]




-----------
Definitions
-----------


.. _tcp_metrics-definition-tcp-fastopen-cookie-max:

tcp-fastopen-cookie-max
=======================
:type: const
:value: 16



--------------
Attribute sets
--------------


.. _tcp_metrics-attribute-set-tcp-metrics:

tcp-metrics
===========
addr-ipv4 (``u32``)
~~~~~~~~~~~~~~~~~~~
:byte-order: big-endian
:display-hint: ipv4


addr-ipv6 (``binary``)
~~~~~~~~~~~~~~~~~~~~~~
:byte-order: big-endian
:display-hint: ipv6


age (``u64``)
~~~~~~~~~~~~~


tw-tsval (``u32``)
~~~~~~~~~~~~~~~~~~
:doc: unused


tw-ts-stamp (``s32``)
~~~~~~~~~~~~~~~~~~~~~
:doc: unused


vals (``nest``)
~~~~~~~~~~~~~~~
:nested-attributes: :ref:`tcp_metrics-attribute-set-metrics`


fopen-mss (``u16``)
~~~~~~~~~~~~~~~~~~~


fopen-syn-drops (``u16``)
~~~~~~~~~~~~~~~~~~~~~~~~~


fopen-syn-drop-ts (``u64``)
~~~~~~~~~~~~~~~~~~~~~~~~~~~


fopen-cookie (``binary``)
~~~~~~~~~~~~~~~~~~~~~~~~~


saddr-ipv4 (``u32``)
~~~~~~~~~~~~~~~~~~~~
:byte-order: big-endian
:display-hint: ipv4


saddr-ipv6 (``binary``)
~~~~~~~~~~~~~~~~~~~~~~~
:byte-order: big-endian
:display-hint: ipv6


pad (``pad``)
~~~~~~~~~~~~~


.. _tcp_metrics-attribute-set-metrics:

metrics
=======
rtt (``u32``)
~~~~~~~~~~~~~
:doc: Round Trip Time (RTT), in msecs with 3 bits fractional (left-shift by 3 to get the msec value).


rttvar (``u32``)
~~~~~~~~~~~~~~~~
:doc: Round Trip Time VARiance (RTT), in msecs with 2 bits fractional (left-shift by 2 to get the msec value).


ssthresh (``u32``)
~~~~~~~~~~~~~~~~~~
:doc: Slow Start THRESHold.


cwnd (``u32``)
~~~~~~~~~~~~~~
:doc: Congestion Window.


reodering (``u32``)
~~~~~~~~~~~~~~~~~~~
:doc: Reodering metric.


rtt-us (``u32``)
~~~~~~~~~~~~~~~~
:doc: Round Trip Time (RTT), in usecs, with 3 bits fractional (left-shift by 3 to get the msec value).


rttvar-us (``u32``)
~~~~~~~~~~~~~~~~~~~
:doc: Round Trip Time (RTT), in usecs, with 2 bits fractional (left-shift by 3 to get the msec value).

