Re: [PATCH] tcp: Expose the initial RTO via a new sysctl.
From: tsuna <hidden>
Date: 2011-05-31 14:48:32
Also in:
lkml
On Fri, May 20, 2011 at 5:06 PM, H.K. Jerry Chu [off-list ref] wrote:
Yep, that's why we've had a knob for this for years.
I was traveling last week so sorry for not replying earlier to various comments people made. I talked to Jerry and he's agreed to share some patches that Google has been using internally for years. I started this work because after leaving Google and taking these changes for granted, I was surprised to find that they weren't actually part of the mainline Linux kernel. It seems that David is willing to accept a change that will lower the initRTO to 1s (compile-time constant), with a fallback to 3s (compile-time constant), as per the draft rfc2988bis. Others are legitimately worried about the impact this would cause in environments where RTT is typically (or always) in the 1-3s range. Some would like to see this as a per-destination thing. Personally what I think would be ideal would be: 1. A sysctl knob for initRTO, to allow people to adjust this appropriately for their environment. 2. Apply the srtt / rttvar seen on previous connections to new connections. Does that sound reasonable? For 2), I'm not sure how the details would work yet, I believe the kernel already has what's necessary to remember these things on a per peer basis, but it would be nice if I could specify things like "for 10.x.0.0/16 (local datacenter) use this aggressive setting, for 10.0.0.0/8 (my internal backend network) use that, for everything else (Internets etc.) use the default". -- Benoit "tsuna" Sigoure Software Engineer @ www.StumbleUpon.com