- From: Kazuho Oku <kazuhooku@gmail.com>
- Date: Mon, 30 Oct 2017 14:10:14 +0900
- To: Patrick McManus <pmcmanus@mozilla.com>
- Cc: hybi <hybi@ietf.org>, HTTP Working Group <ietf-http-wg@w3.org>
Hi, Thank you for working on the draft. I am happy to see WebSockets coming to HTTP/2, and I like that the proposal tries to make changes caused by the transition minimal. The biggest issue I wonder if we can continue using HTTP/1 headers for WebSocket parameter negotiation (e.g., Sec-WebSocket-Version, Sec-WebSocket-Protocol), instead of sending them in DATA frames. The reason I ask this is because unless we keep them as headers, it would become impossible to implement a ws-on-h2 to ws-on-h1 proxy without dealing with the details of the WebSocket protocol. In HTTP/1, it has been possible to implement a HTTP proxy that supports WebSockets, without the knowledge of sub-protocol negotiation. This is because all the parameters were negotiated through the use of the HTTP headers, and a proxy could simply forward them as-is. All the thing that a proxy has been required to do is to look at the Upgrade header and the status code, and start running a bi-directional tunnel once the upstream server sends a 101 response. With the -01 proposal, the same feature is retained only when a proxy forwards from ws-on-h2 client to a ws-on-h2 server. In the case of ws-on-h2 client connecting to ws-on-h1 server (or ws-on-h1 client connecting to ws-on-h2 server), the proxy needs to convert WebSocket-specific values sent in DATA frame to a HTTP header (or vice-versa). I wonder if this is a necessary complication. If not, I would prefer to continue sending all the headers necessary for WebSocket negotiation in HTTP/2 as well. 2017-10-27 2:32 GMT+09:00 Patrick McManus <pmcmanus@mozilla.com>: > This is an updated based on the direction discussed.. I'm kind of on the > fence about whether its better. Its nice there is no h1 in there. > > ---------- Forwarded message ---------- > From: <internet-drafts@ietf.org> > Date: Thu, Oct 26, 2017 at 1:30 PM > Subject: New Version Notification for > draft-mcmanus-httpbis-h2-websockets-01.txt > To: Patrick McManus <mcmanus@ducksong.com> > > > > A new version of I-D, draft-mcmanus-httpbis-h2-websockets-01.txt > has been successfully submitted by Patrick McManus and posted to the > IETF repository. > > Name: draft-mcmanus-httpbis-h2-websockets > Revision: 01 > Title: Bootstrapping WebSockets with HTTP/2 > Document date: 2017-10-26 > Group: Individual Submission > Pages: 9 > URL: > https://www.ietf.org/internet-drafts/draft-mcmanus-httpbis-h2-websockets-01.txt > Status: > https://datatracker.ietf.org/doc/draft-mcmanus-httpbis-h2-websockets/ > Htmlized: > https://tools.ietf.org/html/draft-mcmanus-httpbis-h2-websockets-01 > Htmlized: > https://datatracker.ietf.org/doc/html/draft-mcmanus-httpbis-h2-websockets-01 > Diff: > https://www.ietf.org/rfcdiff?url2=draft-mcmanus-httpbis-h2-websockets-01 > > Abstract: > This document defines a mechanism for running the WebSocket Protocol > [RFC6455] over a single stream of an HTTP/2 connection. > > > > > Please note that it may take a couple of minutes from the time of submission > until the htmlized version and diff are available at tools.ietf.org. > > The IETF Secretariat > > -- Kazuho Oku
Received on Monday, 30 October 2017 05:10:38 UTC