Re: [hybi] comments on draft-ietf-hybi-websocket-requirements-00

Willy Tarreau <w@1wt.eu> Sat, 10 July 2010 06:38 UTC

Return-Path: <w@1wt.eu>
X-Original-To: hybi@core3.amsl.com
Delivered-To: hybi@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id DA08F3A67B4 for <hybi@core3.amsl.com>; Fri, 9 Jul 2010 23:38:22 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.428
X-Spam-Level:
X-Spam-Status: No, score=-3.428 tagged_above=-999 required=5 tests=[AWL=-1.385, BAYES_00=-2.599, HELO_IS_SMALL6=0.556]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xRDqnWhbgIbl for <hybi@core3.amsl.com>; Fri, 9 Jul 2010 23:38:22 -0700 (PDT)
Received: from 1wt.eu (1wt.eu [62.212.114.60]) by core3.amsl.com (Postfix) with ESMTP id BC74E3A6783 for <hybi@ietf.org>; Fri, 9 Jul 2010 23:38:21 -0700 (PDT)
Date: Sat, 10 Jul 2010 08:38:25 +0200
From: Willy Tarreau <w@1wt.eu>
To: Anne van Kesteren <annevk@opera.com>
Message-ID: <20100710063825.GB8207@1wt.eu>
References: <615374.65181.qm@web82607.mail.mud.yahoo.com> <op.vfj9vfna64w2qv@annevk-t60> <564970.65690.qm@web82607.mail.mud.yahoo.com> <op.vfl5hj0864w2qv@annevk-t60>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <op.vfl5hj0864w2qv@annevk-t60>
User-Agent: Mutt/1.5.20 (2009-06-14)
Cc: hybi@ietf.org
Subject: Re: [hybi] comments on draft-ietf-hybi-websocket-requirements-00
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/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: Sat, 10 Jul 2010 06:38:23 -0000

On Sat, Jul 10, 2010 at 07:57:25AM +0200, Anne van Kesteren wrote:
> On Sat, 10 Jul 2010 03:30:10 +0200, gabriel montenegro
> <g_e_montenegro@yahoo.com> wrote:
> >[gm] Hmmm... I was under the impression that the whole point was to
> >start with HTTP and then via the Upgrade directive move into the
> >WebSocket protocol. Or are you saying that there might be other ways
> >to start other than HTTP?
> 
> Yes, but mostly I'm saying that the requirements document should not
> constrain the design to this level of detail.

But the original one is (unfortunately) even much more detailed. So
maybe what should be done is to detail only the WebSocket protocol
after the Upgrade, ensuring it works on top of raw TCP without the
HTTP Upgrade, then add a paragraph explaining how to use it after an
HTTP Upgrade when the port is shared.

And after all, that becomes logical and clear. We could state that
by default, the WS protocol consists in the framing we currently
see after the Upgrade. Clients explicitly talking to port 80 SHOULD
use the HTTP Upgrade method. Those passing through proxies must also
use the CONNECT method first (then either raw proto or HTTP upgrade
depending on the port). That would leave all combinations possible
and an easy way for the client to know which one to pick.

And after all, that's precisely what RFC2817 already suggests for
TLS over HTTP.

Regards,
Willy