- From: Willy Tarreau <w@1wt.eu>
- Date: Mon, 18 Jul 2011 10:55:46 +0200
- To: Mark Nottingham <mnot@mnot.net>
- Cc: Adrien de Croy <adrien@qbik.com>, Poul-Henning Kamp <phk@phk.freebsd.dk>, Roy Fielding <fielding@gbiv.com>, HTTP Working Group <ietf-http-wg@w3.org>
On Mon, Jul 18, 2011 at 04:05:42PM +1000, Mark Nottingham wrote: > I think we're hitting diminishing returns here, and possibly approaching the angels dancing on the pins. > > If someone has a proposal for a text change that they think will represent consensus, great. > > In the meantime, I don't see any pushback on the proposed resolution, as it affects p1. Before we rush into writing anything, we should try to think about some use cases to ensure they can rely on a very clear understanding of the spec. Among the things that were discussed in this thread : - Upgrade is mostly being used end-to-end despite being hop-by-hop, and contents are generally exchanged as tunnelled data between both ends over intermediaries which support it without specific handling of the upgraded protocol ; - In order to be usable through intermediaries, those who don't know the upgraded protocol are simply blind and do already work that way ; thus they don't care about semantics at this point as they don't participate to the upgraded protocol ; - Upgrade might be used to upgrade to next generation protocols such as SPDY without affecting the method's semantics ; - a server might need more information from the client before responding to an upgrade request (eg: session ID or cipher suite) What I'm wondering is how would an HTTP-to-SPDY gateway work. Let's imagine that we have a caching proxy which always adds an "Upgrade: SPDY/1.0" header into all outgoing requests so that compliant servers may tentatively upgrade. I think I get Roy's point about the GET semantics : if this caching proxy gets a 101, it should still assume that it gets a response to the GET request with whatever it can imply in terms of caching, origin, etc... Still, doing so does not prevent the proxy from sending some required protocol data to the server so that it can provide the adequate response. It may also have implications about idempotence of the request when the connection is unexpectedly aborted and the request retried. With that said, I think we should wait for Roy's feedback and comments on the subject. He certainly has precise ideas of how he expects Upgrade+101 to be used, and we should consider his ideas and better document the spec accordingly. Cheers, Willy
Received on Monday, 18 July 2011 08:56:26 UTC