Re: [hybi] complexity explosion

Justin Lee <jlee@antwerkz.com> Wed, 18 August 2010 14:57 UTC

Return-Path: <jlee@antwerkz.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 384C43A6861 for <hybi@core3.amsl.com>; Wed, 18 Aug 2010 07:57:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.543
X-Spam-Level:
X-Spam-Status: No, score=-1.543 tagged_above=-999 required=5 tests=[AWL=0.433, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001]
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 hfSWgEPGvhAU for <hybi@core3.amsl.com>; Wed, 18 Aug 2010 07:57:10 -0700 (PDT)
Received: from mail-vw0-f44.google.com (mail-vw0-f44.google.com [209.85.212.44]) by core3.amsl.com (Postfix) with ESMTP id BF6CF3A659B for <hybi@ietf.org>; Wed, 18 Aug 2010 07:57:09 -0700 (PDT)
Received: by vws10 with SMTP id 10so687966vws.31 for <hybi@ietf.org>; Wed, 18 Aug 2010 07:57:44 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.220.127.4 with SMTP id e4mr5109844vcs.95.1282143463732; Wed, 18 Aug 2010 07:57:43 -0700 (PDT)
Received: by 10.220.10.73 with HTTP; Wed, 18 Aug 2010 07:57:43 -0700 (PDT)
In-Reply-To: <AANLkTi=CPqVQADAun_dTOcLzkdy4V6Lt7px7TwaCQWqv@mail.gmail.com>
References: <AANLkTi=eg-ggfpk0Pho8cPFmCbV-bFOkBWqximBqpz7k@mail.gmail.com> <AANLkTikUvbpEi0pXTEBK0K+q5Kn1J6NwzRDw_MnEuqiW@mail.gmail.com> <AANLkTin89PEPqcoiPGY27BCv9ruB+JuPJ9_s_bjZD68-@mail.gmail.com> <AANLkTi=CPqVQADAun_dTOcLzkdy4V6Lt7px7TwaCQWqv@mail.gmail.com>
Date: Wed, 18 Aug 2010 10:57:43 -0400
Message-ID: <AANLkTi=+yiDaAnHT8RDF5EvGZ6Da2mKSwBt1j5XOaV87@mail.gmail.com>
From: Justin Lee <jlee@antwerkz.com>
To: John Tamplin <jat@google.com>
Content-Type: multipart/alternative; boundary="001636e1ef9db4f77e048e1a4940"
Cc: hybi@ietf.org
Subject: Re: [hybi] complexity explosion
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: Wed, 18 Aug 2010 14:57:11 -0000

OK.  That helps to know.  That's a nice summary.  I hadn't been able to
glean that from the discussion so far.  Thanks for the clarification.

On Wed, Aug 18, 2010 at 10:53 AM, John Tamplin <jat@google.com> wrote:

> On Wed, Aug 18, 2010 at 10:22 AM, Justin Lee <jlee@antwerkz.com> wrote:
>
>> Well, for example, the framing discussion.  At 64 bits, that's still crazy
>> large.  Hell, move it up to 128 if you really want to support sending full
>> movies via on websocket frame.
>
>
> When you read back over the discussions, you will see that there are in
> fact people who wanted to send a full DVD movie in one frame, so they could
> just had it off to the kernel.  The v76 protocol supported an arbitrary
> number of bits of length, so you had to be prepared to handle multiprecision
> arithmetic to properly implement the spec -- at least now you know you need
> a fixed 64-bit integer.
>
>
>> All this back and forth about partial this and multiplexing that.
>
>
> Note that multiplexing specifically will not be included in the base
> protocol.  The discussion about it is so that we can add it later without
> having to break backwards compatibility, which means that you implementing
> v1.0 of the spec won't have to worry about it ever unless you actually do
> want to participate in multiplexing.  Fragmentation has been accepted as a
> requirement of the base protocol, partly to support later extensions, so
> that is complexity you will have to deal with, but it really shouldn't be
> that bad.
>
> To implement the current proposal, if you never negotiate any extensions
> during the handshake then it is simply a length, an opcode, and
> fragmentation flags, and if the short length is 127 then you read the long
> length, and then the payload bytes.
>
> --
> John A. Tamplin
> Software Engineer (GWT), Google
>



-- 
You can find me on the net at:
http://www.linkedin.com/in/justinlee
http://www.twitter.com/evanchooly