- From: Willy Tarreau <w@1wt.eu>
- Date: Tue, 9 Sep 2014 07:50:08 +0200
- To: Poul-Henning Kamp <phk@phk.freebsd.dk>
- Cc: HTTP Working Group <ietf-http-wg@w3.org>
Hi Poul-Henning, On Mon, Sep 08, 2014 at 07:18:48AM +0000, Poul-Henning Kamp wrote: > I have been trying to figure out how the "Connection:" HTTP header > works in HTTP/2.0. > > The Connection: header is strictly hop-by-hop, so we don't need to > consider version translation issues, it doesn't cross proxies. > > In HTTP/1.1 the Connection: header is used for two things: Marking > headers as hop-by-hop and managing TCP connections. > > I think we should retain the ability to mark headers hop-by-hop. > I can see the benefit in being able to send headers only to the > first proxy. > > Managing TCP connections is out-of-band in HTTP/2.0, so sending > "Connection: close" or "Connection: keepalive" inside a HTTP/2.0 > multiplex doesn't make any sense, should not happen and I think > we should make that an explicit SHALL NOT. > > The general way to do that would be to make it a stream-error in > HTTP/2.0 if Connection: tries to make a non-existent header hop-by-hop. I don't think this extra check would provide any value, to be honnest. The only real trouble we can have with Connection: is when it marks an end-to-end header hoping that a further 1.1 proxy in the chain will remove it (eg: Host after passing through filtering proxies). Willy
Received on Tuesday, 9 September 2014 05:50:33 UTC