Re: [PATCH] tcp: Implement a two-level initial RTO as per draft RFC 2988bis-02.
From: David Miller <davem@davemloft.net>
Date: 2011-05-19 04:18:26
Also in:
lkml
From: tsuna <redacted> Date: Wed, 18 May 2011 20:56:33 -0700
On Wed, May 18, 2011 at 7:36 PM, David Miller [off-list ref] wrote:quoted
From: Benoit Sigoure <redacted> Date: Wed, 18 May 2011 19:22:24 -0700quoted
Prior to this patch, Linux would always use 3 seconds (compile-time constant) as the initial RTO. Draft RFC 2988bis-02 proposes to tune this down to 1 second and, in case of a timeout during the TCP 3WHS, revert the RTO back up to 3 seconds when data transmission begins.We just had a discussion where it was determined that changes to these settings are "network specific" and therefore that if it is appropriate at all (I'm still not convinced) it is only suitable as a routing metric.Fair enough. I'll take another stab at it and see if I can change this to be on a per network basis. Do I need any patch that's not yet in Linus' tree? I'm referring to this:
Keep in mind another thing I do not like about this knob. The IETF draft has a requirement that we fallback to 3 seconds if the initial RTO is 1 second. Nothing in your facilities ensure this, or provide a way for the kernel to make sure this is the case. And for other values of initial RTO, what fallback is appropriate? As a result of all of this, I do not really think this is something the user should control at all. I really would rather see the initial RTO be static and be set to 1 with fallback RTO of 3.