On Mon, Apr 24, 2017 at 3:11 PM, Lars Erik Storbukås <storbukas....@gmail.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