- From: Yuchung Cheng <ycheng@google.com>
- Date: Wed, 17 Apr 2013 15:34:33 -0700
- To: Patrick McManus <mcmanus@ducksong.com>
- Cc: Wesley Eddy <wes@mti-systems.com>, Eliot Lear <lear@cisco.com>, Gabriel Montenegro <Gabriel.Montenegro@microsoft.com>, Roberto Peon <grmocg@gmail.com>, "Simpson, Robby (GE Energy Management)" <robby.simpson@ge.com>, Robert Collins <robertc@squid-cache.org>, Jitu Padhye <padhye@microsoft.com>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>, "Brian Raymor (MS OPEN TECH)" <Brian.Raymor@microsoft.com>, Rob Trace <Rob.Trace@microsoft.com>, Dave Thaler <dthaler@microsoft.com>, Martin Thomson <martin.thomson@skype.net>, "Eggert, Lars" <lars@netapp.com>, Martin Stiemerling <martin.stiemerling@neclab.eu>
On Wed, Apr 17, 2013 at 11:12 AM, Patrick McManus <mcmanus@ducksong.com> wrote: > Hi Wes, > > On Wed, Apr 17, 2013 at 12:48 PM, Wesley Eddy <wes@mti-systems.com> wrote: >> >> >> It's definitely misinformation given the dynamic nature of the >> CWND variable in TCP. This is not a path property like MTU that >> can be thought of as relatively static, and it can change on short >> timescales with high granularity. > > > Granted, an old CWND measurement can be inaccurate. It's an informed guess > based on path performance. I'm sure we agree the path plays a > (non-definitive) role in this. > > The alternative, IW, is an inaccurate guess too. Its an uninformed guess and > I don't see why we should assume it would be more accurate. > > We can't argue that IW10 is strictly more conservative because my data says > it typically isn't. (median SPDY CWND SETTING in firefox data is 30 x 1 > session.. apples to apples that compares to at least 6 parallel HTTP/1 > sessions of IW 10 each). Roberto suggested he's seen something similar. I'm > not sure that more conservative is a better thing anyhow but I don't see how > it applies in this case in any event. I'd like to give some historical perspective of IW10 and CWND-SETTING, as I proposed both to tcpm and the SPDY team. Three years when we started looking at the TCP startup latency problems, we wanted to experiment both simple fixed size solution and a dynamic history-based one. We were aware of the pros and cons of both approaches. But I emphasize cwnd-setting was meant to experiment the cwnd-caching idea that's been floating around for 20? years. It was OK to violate the layers for experimental purposes. I agree with the consensus on the list to delegate this type of job to the network transport. I am happy about the discussion of this thread because it points out a bigger issue: we need a better network transport that understands the applications. The situation is terrible as how much browsers need to work-around or manage to reduce network latency: number of connections, per-opening connections, prefer connections that have sent more data, disable slow-start-after-idle, open two connections at the same time and use the one that comes back first, blah blah blah. each has its merit but together sometimes they do very bad/stupid things (e.g., opening too many connections and hoses itself on slow networks). I feel httpbis and tsvarea should start looking into this problem together. The browser has good knowledge about the priorities of the resources, HTTP/2 helps speeding up things talking to the same host/domain, and the network/transport knows the packet delays and bandwidth well. Together there should be a better solution. It can not be done by any single layer/protocol. > > -Patrick >
Received on Wednesday, 17 April 2013 22:35:22 UTC