Re: [hybi] WebSocket subprotocol parameters
Tobias Oberstein <tobias.oberstein@tavendo.de> Mon, 20 January 2014 11:26 UTC
Return-Path: <tobias.oberstein@tavendo.de>
X-Original-To: hybi@ietfa.amsl.com
Delivered-To: hybi@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6FBC71A0122 for <hybi@ietfa.amsl.com>; Mon, 20 Jan 2014 03:26:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id C2rPJ8yyspqa for <hybi@ietfa.amsl.com>; Mon, 20 Jan 2014 03:26:06 -0800 (PST)
Received: from EXHUB020-3.exch020.serverdata.net (exhub020-3.exch020.serverdata.net [206.225.164.30]) by ietfa.amsl.com (Postfix) with ESMTP id 107FD1A0128 for <hybi@ietf.org>; Mon, 20 Jan 2014 03:26:06 -0800 (PST)
Received: from EXVMBX020-12.exch020.serverdata.net ([169.254.3.11]) by EXHUB020-3.exch020.serverdata.net ([206.225.164.30]) with mapi; Mon, 20 Jan 2014 03:26:06 -0800
From: Tobias Oberstein <tobias.oberstein@tavendo.de>
To: Takeshi Yoshino <tyoshino@google.com>
Date: Mon, 20 Jan 2014 03:26:03 -0800
Thread-Topic: [hybi] WebSocket subprotocol parameters
Thread-Index: Ac8VuqQgIB5XX0N2T2usfyvZTAcXWwAFtW9Q
Message-ID: <634914A010D0B943A035D226786325D4446BF99977@EXVMBX020-12.exch020.serverdata.net>
References: <634914A010D0B943A035D226786325D4446BF9948F@EXVMBX020-12.exch020.serverdata.net> <52D90F99.6080205@gmx.de> <634914A010D0B943A035D226786325D4446BF9949D@EXVMBX020-12.exch020.serverdata.net> <CAH9hSJZQ3NxVW36PnZ0TpMF4tPPaJLr12M8NtbPb6pUejf1wcQ@mail.gmail.com>
In-Reply-To: <CAH9hSJZQ3NxVW36PnZ0TpMF4tPPaJLr12M8NtbPb6pUejf1wcQ@mail.gmail.com>
Accept-Language: de-DE, en-US
Content-Language: de-DE
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: de-DE, en-US
Content-Type: multipart/alternative; boundary="_000_634914A010D0B943A035D226786325D4446BF99977EXVMBX02012ex_"
MIME-Version: 1.0
Cc: Julian Reschke <julian.reschke@gmx.de>, "hybi@ietf.org" <hybi@ietf.org>
Subject: Re: [hybi] WebSocket subprotocol parameters
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi/>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 20 Jan 2014 11:26:08 -0000
Hi Takeshi, thanks alot for digging out these posts! In retrospect, I think it's a pity that we did not specify "qvalue-like" grammer for Sec-WebSocket-Protocol as we did for Sec-WebSocket-Extension. The latter provides a lot of useful flexibility … eg as used in "permessage-deflate". Hacks like having subprotocols like this wamp.2.json wamp.2.msgpack wamp.2.json.batched wamp.2.msgpack.batched .. negotiated only works for "discrete value parameters" (json/msgpack, batched/unbatched), but breaks down quite quickly. As Julian pointed out, making Sec-WebSocket-Protocol using the same "qvalue-grammer" as Sec-WebSocket-Extension would be a significant change to the RFC6455, and break existing code. It would also possibly require changes to the WS API in JavaScript to be useful. Mmh. Too bad;( /Tobias Von: Takeshi Yoshino [mailto:tyoshino@google.com] Gesendet: Montag, 20. Januar 2014 09:36 An: Tobias Oberstein Cc: Julian Reschke; hybi@ietf.org Betreff: Re: [hybi] WebSocket subprotocol parameters On Fri, Jan 17, 2014 at 10:01 PM, Tobias Oberstein <tobias.oberstein@tavendo.de<mailto:tobias.oberstein@tavendo.de>> wrote: > > Was there any good reason disallowing parameters for "Sec-WebSocket- > Protocol"? > > I think that was discussed and the decision was made on purpose. For details > you'll have to visit the mailing list archives though. I can't find it .. searching the Hybi archives is a pain .. I can't recall such discussion. In this thread, Brodie used an example similar to that, but the main topic of the post was to update the spec to include multiple subprotocol offer mechanism. http://www.ietf.org/mail-archive/web/hybi/current/msg04467.html In this long thread, what character should be used for subprotocol is discussed. Some people preferred more liberal rule, but no one discussed qvalue-like grammar. http://www.ietf.org/mail-archive/web/hybi/current/msg00913.html Subprotocol History FYI: We added the constraint "U+0021 .. U+007E" from http://tools.ietf.org/html/draft-hixie-thewebsocketprotocol-31 -> 32 Single value -> multiple value (SP-separated) http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-02 -> 03 We made it follow 1#(token | quoted-string) ABNF from http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-03 -> 04 Changed from (token | quoted-string) to token http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-07
- [hybi] WebSocket subprotocol parameters Tobias Oberstein
- Re: [hybi] WebSocket subprotocol parameters Julian Reschke
- Re: [hybi] WebSocket subprotocol parameters Tobias Oberstein
- Re: [hybi] WebSocket subprotocol parameters Bjoern Hoehrmann
- Re: [hybi] WebSocket subprotocol parameters Takeshi Yoshino
- Re: [hybi] WebSocket subprotocol parameters Tobias Oberstein
- Re: [hybi] WebSocket subprotocol parameters Peter Thorson
- Re: [hybi] WebSocket subprotocol parameters Tobias Oberstein
- Re: [hybi] WebSocket subprotocol parameters Peter Thorson
- Re: [hybi] WebSocket subprotocol parameters Tobias Oberstein
- Re: [hybi] WebSocket subprotocol parameters Takeshi Yoshino
- Re: [hybi] WebSocket subprotocol parameters Martin J. Dürst
- Re: [hybi] WebSocket subprotocol parameters Tobias Oberstein
- Re: [hybi] WebSocket subprotocol parameters Takeshi Yoshino