[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CADVnQyk9-OGKBKBvQ76itP5JwbVBPt40S8KJ+6oY506hVpMEYA@mail.gmail.com>
Date: Mon, 24 Apr 2017 15:42:24 -0400
From: Neal Cardwell <ncardwell@...gle.com>
To: Lars Erik Storbukås <storbukas.dev@...il.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
Netdev <netdev@...r.kernel.org>
Subject: Re: Get amount of fast retransmissions from TCP info
On Mon, Apr 24, 2017 at 3:11 PM, Lars Erik Storbukås
<storbukas.dev@...il.com> wrote:
> I'm trying to get amount of congestion events in TCP caused by
> DUPACK's (fast retransmissions), and can't seem to find any variable
> in the TCP info struct which hold that value. There are three
> variables in the TCP info struct that seem to hold similar congestion
> values: __u8 tcpi_retransmits;__u32 tcpi_retrans; __u32
> tcpi_total_retrans;
>
> Does anyone have any pointers on how to find this value in the TCP code?
>
> Please CC me personally if answering this question. Any help is
> greatly appreciated.
[I'm cc-ing the netdev list.]
Do you need this per-socket? On a per-socket basis, I do not think
there are separate totals for fast retransmits and timeout
retransmits.
If a global number is good enough, then you can get that number from
the global network statistics. In "nstat" output they look like:
TcpExtTCPFastRetrans = packets sent in fast retransmit / fast recovery
TcpExtTCPSlowStartRetrans = packets sent in timeout recovery
It sounds like TcpExtTCPFastRetrans is what you are after.
Hope that helps,
neal
Powered by blists - more mailing lists