Re: [hybi] I-D Action:draft-ietf-hybi-thewebsocketprotocol-01.txt

John Tamplin <jat@google.com> Thu, 02 September 2010 18:15 UTC

Return-Path: <jat@google.com>
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 B6A373A6B50 for <hybi@core3.amsl.com>; Thu, 2 Sep 2010 11:15:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.63
X-Spam-Level:
X-Spam-Status: No, score=-105.63 tagged_above=-999 required=5 tests=[AWL=0.347, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
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 KZ4NbdIi6nnN for <hybi@core3.amsl.com>; Thu, 2 Sep 2010 11:15:29 -0700 (PDT)
Received: from smtp-out.google.com (smtp-out.google.com [74.125.121.35]) by core3.amsl.com (Postfix) with ESMTP id C09433A6B7E for <hybi@ietf.org>; Thu, 2 Sep 2010 11:01:32 -0700 (PDT)
Received: from hpaq7.eem.corp.google.com (hpaq7.eem.corp.google.com [172.25.149.7]) by smtp-out.google.com with ESMTP id o82HfBT8001771 for <hybi@ietf.org>; Thu, 2 Sep 2010 10:41:11 -0700
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1283449271; bh=sJ2OoBfLMlXWFYKDdj4G0QbbE4Q=; h=MIME-Version:In-Reply-To:References:From:Date:Message-ID:Subject: To:Cc:Content-Type:Content-Transfer-Encoding; b=BlLRpfZ2wSBERWEfdKo0j2qzukIgneV+AkmtmwSYGbeoBe0868BrK/Bc5vlkLhE+H cea70OS4JOmSCPOVeNHtA==
Received: from yxh35 (yxh35.prod.google.com [10.190.2.227]) by hpaq7.eem.corp.google.com with ESMTP id o82HeTlV006310 for <hybi@ietf.org>; Thu, 2 Sep 2010 10:41:10 -0700
Received: by yxh35 with SMTP id 35so358954yxh.40 for <hybi@ietf.org>; Thu, 02 Sep 2010 10:41:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=beta; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:cc:content-type :content-transfer-encoding; bh=LB/useOsFn78+NK0bMdbfLFIu+SuLdSROxq+G1+RKy4=; b=Q2gjbCS/g4/r4yZ9tW+9hRa2GcTn8lwRYawzxXfVQjuoizRPOgNrvDDW3EgvImtWLf avUGOrMMklPvc+IOWL3A==
DomainKey-Signature: a=rsa-sha1; c=nofws; d=google.com; s=beta; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:content-transfer-encoding; b=UjWHQqzr2hc82Pn+eW5T6cG0FrDSTzMAqNT4248TzH4lLvURjYCPJJe8LuO282JFDi V2liBWOrWjKL2w3Pv5GA==
Received: by 10.151.144.2 with SMTP id w2mr417944ybn.230.1283449269670; Thu, 02 Sep 2010 10:41:09 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.151.103.4 with HTTP; Thu, 2 Sep 2010 10:40:49 -0700 (PDT)
In-Reply-To: <4C7FDF5D.6080301@helsinki.fi>
References: <20100901224502.0519B3A687C@core3.amsl.com> <AANLkTikP1CF22fL0rBniXmrxEoBAbTNfzP9kyiNA4nbb@mail.gmail.com> <AANLkTi=_1m36ThFZTH_aGE_Unz0KTeexJq_74UGr2j+u@mail.gmail.com> <AANLkTikmYvJaZnc-SAaGm1Xztn31DqTnttonKFNBvT86@mail.gmail.com> <AANLkTimHUDGW=XGgjPFG9n+s01Q21e_BvHS+X6VSFUdD@mail.gmail.com> <AANLkTikKHi3Wqy+SgYzk9KxU8o9dpAbEZCQH3UcPkAa_@mail.gmail.com> <4C7FB233.1050908@helsinki.fi> <AANLkTi=m7QxBm7xjn2AbbkW-ihfE7tiA9cSdrHVoYq5=@mail.gmail.com> <4C7FDF5D.6080301@helsinki.fi>
From: John Tamplin <jat@google.com>
Date: Thu, 02 Sep 2010 13:40:49 -0400
Message-ID: <AANLkTi=ecNr0MW3pgaYqJ9zaG8wsaHi+LYvHc0+AzCKM@mail.gmail.com>
To: Olli@pettay.fi
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-System-Of-Record: true
Cc: hybi <hybi@ietf.org>
Subject: Re: [hybi] I-D Action:draft-ietf-hybi-thewebsocketprotocol-01.txt
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: Thu, 02 Sep 2010 18:15:31 -0000

On Thu, Sep 2, 2010 at 1:31 PM, Olli Pettay <Olli.Pettay@helsinki.fi> wrote:
> I understand what subprotocols are meant for, but while we're trying to
> stabilize the protocol, subprotocols could be used for versioning too.

So what if you want to experiment with an application subprotocol?  If
the framing is altered based on the subprotocol, then the application
can't use subprotocols itself.

> The old hixie-style framing allow all sorts for extensions. There are
> plenty of bits left for different kinds of frame types.

Well, the first problem is it doesn't support fragmentation, which is
a problem given that has been accepted as a requirement.  Second, it
uses two different types of framing for text and binary data, and many
negative opinions of having two types of framing were expressed here.
Finally, the only possible method of extension would be to define
nested opcodes, and there have been many discussions here about the
virtue of that choice relative to others.  The point of the current
framing is that it answers most of the objections that have been
raised while retaining the flexibility to define the various extension
mechanisms that have been proposed on top of it.  That allows us to
agree on the base framing, in such a way that those who don't ever
want to handle extensions can just refuse to negotiate them and ignore
them, and then those who do care can debate the merits of different
extension mechanisms.

> (And for things like multiplexing shared workers some
>  people have just said that it doesn't work without even trying.)

How can writing shared workers ever handle the case of mutliplexing
traffic in different apps?  Or aggregating traffic across an expensive
wireless link, which will then get split on the other side?  Even if
shared workers can be used to solve some of the problems multiplexing
solves, it can't solve all of them and IMHO is more complex rather
than just implementing it once in the framing layer.

-- 
John A. Tamplin
Software Engineer (GWT), Google