From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yuchung Cheng Subject: Re: [PATCH iproute2] ss: add support for delivered and delivered_ce fields Date: Mon, 26 Nov 2018 14:37:15 -0800 Message-ID: References: <20181126222953.179043-1-edumazet@google.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Cc: David Ahern , Stephen Hemminger , netdev , Eric Dumazet To: Eric Dumazet Return-path: Received: from mail-io1-f66.google.com ([209.85.166.66]:42652 "EHLO mail-io1-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727313AbeK0Jdg (ORCPT ); Tue, 27 Nov 2018 04:33:36 -0500 Received: by mail-io1-f66.google.com with SMTP id x6so15366523ioa.9 for ; Mon, 26 Nov 2018 14:37:57 -0800 (PST) In-Reply-To: <20181126222953.179043-1-edumazet@google.com> Sender: netdev-owner@vger.kernel.org List-ID: On Mon, Nov 26, 2018 at 2:29 PM, Eric Dumazet wrote: > Kernel support was added in linux-4.18 in commit feb5f2ec6464 > ("tcp: export packets delivery info") > > Tested: > > ss -ti > ... > ESTAB 0 2270520 [2607:f8b0:8099:e16::]:47646 [2607:f8b0:8099:e18::]:38953 > ts sack cubic wscale:8,8 rto:7 rtt:2.824/0.278 mss:1428 > pmtu:1500 rcvmss:536 advmss:1428 cwnd:89 ssthresh:62 bytes_acked:2097871945 > segs_out:1469144 segs_in:65221 data_segs_out:1469142 send 360.0Mbps lastsnd:2 > lastrcv:99231 lastack:2 pacing_rate 431.9Mbps delivery_rate 246.4Mbps > (*) delivered:1469099 delivered_ce:424799 > busy:99231ms unacked:44 rcv_space:14280 rcv_ssthresh:65535 > notsent:2207688 minrtt:0.228 > > Signed-off-by: Eric Dumazet Acked-by: Yuchung Cheng Thank you Eric! > --- > misc/ss.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/misc/ss.c b/misc/ss.c > index e4d6ae489e798419fa6ce6fb0f4b8b0b3232adf6..3aa94f235085512510dca9fd597e8e37aaaf0fd3 100644 > --- a/misc/ss.c > +++ b/misc/ss.c > @@ -817,6 +817,8 @@ struct tcpstat { > unsigned int fackets; > unsigned int reordering; > unsigned int not_sent; > + unsigned int delivered; > + unsigned int delivered_ce; > double rcv_rtt; > double min_rtt; > int rcv_space; > @@ -2483,6 +2485,10 @@ static void tcp_stats_print(struct tcpstat *s) > > if (s->delivery_rate) > out(" delivery_rate %sbps", sprint_bw(b1, s->delivery_rate)); > + if (s->delivered) > + out(" delivered:%u", s->delivered); > + if (s->delivered_ce) > + out(" delivered_ce:%u", s->delivered_ce); > if (s->app_limited) > out(" app_limited"); > > @@ -2829,6 +2835,8 @@ static void tcp_show_info(const struct nlmsghdr *nlh, struct inet_diag_msg *r, > s.busy_time = info->tcpi_busy_time; > s.rwnd_limited = info->tcpi_rwnd_limited; > s.sndbuf_limited = info->tcpi_sndbuf_limited; > + s.delivered = info->tcpi_delivered; > + s.delivered_ce = info->tcpi_delivered_ce; > tcp_stats_print(&s); > free(s.dctcp); > free(s.bbr_info); > -- > 2.20.0.rc0.387.gc7a69e6b6c-goog >