- From: Willy Tarreau <w@1wt.eu>
- Date: Sat, 31 Mar 2012 09:24:39 +0200
- To: Mike Belshe <mike@belshe.com>
- Cc: Mark Watson <watsonm@netflix.com>, "William Chan (?????????)" <willchan@chromium.org>, "<ietf-http-wg@w3.org>" <ietf-http-wg@w3.org>
On Sat, Mar 31, 2012 at 01:46:15AM +0200, Mike Belshe wrote: > > Send the requests (yes, pipelined). If they come back without ids, then > > they are coming back in the order they were sent. If they come back with > > ids, then that tells you which response is which. > > You can't do this until you've got confirmation that the server is going to > give you a HTTP/1.1 response. It could come back HTTP/1.0. > > So do we first have to do a 1.1 request successfully (with 1.1 response) > before we can ever attempt to do a pipelined upgrade? When you get some time to check our draft, you'll see that by using header compression we can actually achieve this in a different way : http://tools.ietf.org/id/draft-tarreau-httpbis-network-friendly-00.html#optim-rt Using a low request overhead for HTTP/1.x-only implementations, we can make an opportunistic pipelining attempt without pushing any data past the first message. Requests ending on 1.1 gateways or servers will simply not be pipelined, but when end-to-end is 2.0 then pipelining is OK. This is a nice fast fallback in my opinion. For having worked with a mobile operator and observed how RTTs are wasted on each connection by not pipelining the first request, I would really not want anything that still requires one RTT before pipelining, it simply doubles the page load time. Willy
Received on Saturday, 31 March 2012 07:25:06 UTC