All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Julian Anastasov <ja@ssi.bg>, David Miller <davem@davemloft.net>,
	Yuchung Cheng <ycheng@google.com>,
	netdev <netdev@vger.kernel.org>,
	Neal Cardwell <ncardwell@google.com>,
	Larry Brakmo <brakmo@google.com>
Subject: Re: [PATCH v5 net-next] tcp: switch rtt estimations to usec resolution
Date: Mon, 24 Feb 2014 15:51:30 -0800	[thread overview]
Message-ID: <20140224155130.4c286cca@samsung-9> (raw)
In-Reply-To: <1393284682.2316.83.camel@edumazet-glaptop2.roam.corp.google.com>

On Mon, 24 Feb 2014 15:31:22 -0800
Eric Dumazet <eric.dumazet@gmail.com> wrote:

> From: Eric Dumazet <edumazet@google.com>
> 
> Upcoming congestion controls for TCP require usec resolution for RTT
> estimations. Millisecond resolution is simply not enough these days.
> 
> FQ/pacing in DC environments also require this change for finer control
> and removal of bimodal behavior due to the current hack in
> tcp_update_pacing_rate() for 'small rtt'
> 
> TCP_CONG_RTT_STAMP no longer is needed.
> 
> As Julian Anastasov pointed out, we need to keep user compatibility :
> tcp_metrics used to export RTT and RTTVAR in msec resolution,
> so we added RTT_US and RTTVAR_US. An iproute2 patch is needed
> to use the new attributes if provided by the kernel.
> 
> In this example ss command displays a srtt of 32 usecs
> 
> lpk51:~# ./ss -i dst lpk52
> Netid  State      Recv-Q Send-Q   Local Address:Port       Peer
> Address:Port   
> tcp    ESTAB      0      1         10.246.11.51:42959
> 10.246.11.52:64614   
>          cubic wscale:6,6 rto:201 rtt:0.032/0.001 ato:40 mss:1448
> cwnd:10 send
> 3620.0Mbps pacing_rate 7240.0Mbps unacked:1 rcv_rtt:993 rcv_space:29559
>  
> Updated iproute2 ip command displays :
> 
> lpk51:~# ./ip tcp_metrics | grep 10.246.11.52
> 10.246.11.52 age 561.914sec cwnd 10 rtt 274us rttvar 213us source
> 10.246.11.51
> 
> Old binary displays :
> 
> lpk51:~# ip tcp_metrics | grep 10.246.11.52
> 10.246.11.52 age 561.914sec cwnd 10 rtt 250us rttvar 125us source
> 10.246.11.51
> 
> With help from Julian Anastasov and Yuchung Cheng
> 
> Signed-off-by: Eric Dumazet <edumazet@google.com>
> Cc: Yuchung Cheng <ycheng@google.com>
> Cc: Neal Cardwell <ncardwell@google.com>
> Cc: Larry Brakmo <brakmo@google.com>
> Cc: Julian Anastasov <ja@ssi.bg>

The original reason I kept ms resolution and added the flag was
that accessing high resolution time is expensive for systems where
TSC is not stable.  Google may live in a world of SMP systems with
good X86 CPUs with working TSC, but other architectures and system
config's may have non-working TSC.

  reply	other threads:[~2014-02-24 23:51 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-23  6:38 [PATCH net-next] tcp: switch rtt estimations to usec resolution Eric Dumazet
2014-02-23  7:36 ` Julian Anastasov
2014-02-23 17:55   ` Eric Dumazet
2014-02-23 18:50     ` [PATCH v2 " Eric Dumazet
2014-02-23 19:19       ` Yuchung Cheng
2014-02-23 21:41         ` Eric Dumazet
2014-02-24  4:42       ` [PATCH v3 " Eric Dumazet
2014-02-24 17:58         ` Eric Dumazet
2014-02-24 18:24         ` [PATCH v4 " Eric Dumazet
2014-02-24 20:47           ` Julian Anastasov
2014-02-24 22:13             ` Eric Dumazet
2014-02-24 23:01               ` Julian Anastasov
2014-02-24 23:31                 ` [PATCH v5 " Eric Dumazet
2014-02-24 23:51                   ` Stephen Hemminger [this message]
2014-02-25  0:15                     ` David Miller
2014-02-25  1:11                     ` Eric Dumazet
2014-02-25  1:38                       ` Eric Dumazet
2014-02-25  6:22                         ` [PATCH v6 net-next 1/2] net: add skb_mstamp infrastructure Eric Dumazet
2014-02-25  9:51                           ` David Laight
2014-02-25 12:21                             ` Eric Dumazet
2014-02-26 20:02                           ` David Miller
2014-02-26 20:29                             ` Eric Dumazet
2014-02-26 22:02                           ` [PATCH v7 " Eric Dumazet
2014-02-26 22:04                             ` David Miller
2014-02-25  6:22                         ` [PATCH v6 net-next 2/2] tcp: switch rtt estimations to usec resolution Eric Dumazet
2014-02-25 17:46                           ` Neal Cardwell
2014-02-25 18:17                             ` Eric Dumazet
2014-02-25 19:13                           ` Neal Cardwell
2014-02-26 22:02                           ` [PATCH v7 " Eric Dumazet
2014-02-26 22:04                             ` David Miller
2014-02-27  1:09                             ` Stephen Hemminger
2014-02-27  1:21                               ` Rick Jones
2014-02-27  9:57                                 ` David Laight
2014-02-27  2:25                               ` Eric Dumazet
2014-02-24 22:19           ` [PATCH v4 net-next] " Eric Dumazet
2014-02-28  5:20       ` [PATCH v2 " Andi Kleen
2014-02-28  6:14         ` Eric Dumazet
2014-02-28 13:31           ` Andi Kleen
2014-02-28 13:51             ` Eric Dumazet
2014-02-23 19:11     ` [PATCH " Julian Anastasov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140224155130.4c286cca@samsung-9 \
    --to=stephen@networkplumber.org \
    --cc=brakmo@google.com \
    --cc=davem@davemloft.net \
    --cc=eric.dumazet@gmail.com \
    --cc=ja@ssi.bg \
    --cc=ncardwell@google.com \
    --cc=netdev@vger.kernel.org \
    --cc=ycheng@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.