Re: [hybi] frame length encoding

"Shelby Moore" <shelby@coolpage.com> Sat, 21 August 2010 19:54 UTC

Return-Path: <shelby@coolpage.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 8E2B73A686E for <hybi@core3.amsl.com>; Sat, 21 Aug 2010 12:54:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.082
X-Spam-Level:
X-Spam-Status: No, score=-2.082 tagged_above=-999 required=5 tests=[AWL=0.517, BAYES_00=-2.599]
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 Ru5XsO1iapd4 for <hybi@core3.amsl.com>; Sat, 21 Aug 2010 12:54:15 -0700 (PDT)
Received: from www5.webmail.pair.com (www5.webmail.pair.com [66.39.3.83]) by core3.amsl.com (Postfix) with SMTP id 2BBFE3A67FE for <hybi@ietf.org>; Sat, 21 Aug 2010 12:54:15 -0700 (PDT)
Received: (qmail 51930 invoked by uid 65534); 21 Aug 2010 19:54:48 -0000
Received: from 121.97.54.174 ([121.97.54.174]) (SquirrelMail authenticated user shelby@coolpage.com) by sm.webmail.pair.com with HTTP; Sat, 21 Aug 2010 15:54:48 -0400
Message-ID: <20ef7ed5e135c57c1ee5a741658b9d98.squirrel@sm.webmail.pair.com>
In-Reply-To: <alpine.DEB.2.00.1008212123460.27211@tvnag.unkk.fr>
References: <AANLkTimKbmcpgx8k0uXUWvCO=8w9pPrtV=3y4qh6363k@mail.gmail.com> <alpine.DEB.2.00.1008212037190.27211@tvnag.unkk.fr> <AANLkTinrsT+wV48nHvVW_1ChGYffkq7jisU2-PZnMyKg@mail.gmail.com> <alpine.DEB.2.00.1008212123460.27211@tvnag.unkk.fr>
Date: Sat, 21 Aug 2010 15:54:48 -0400
From: Shelby Moore <shelby@coolpage.com>
To: Daniel Stenberg <daniel@haxx.se>
User-Agent: SquirrelMail/1.4.20
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
X-Priority: 3 (Normal)
Importance: Normal
Cc: Hybi <hybi@ietf.org>
Subject: Re: [hybi] frame length encoding
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
Reply-To: shelby@coolpage.com
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, 21 Aug 2010 19:54:16 -0000

> On Sat, 21 Aug 2010, gustav wrote:
>
>>> I think I would prefer a plain 32 bit size, with no special treatment
>>> for
>>> smaller fragments.
>
>> Do you care to elaborate why ?.
>
> I think most of the arguments around the sizes already have been mentioned
> and
> I'm not sitting on any new secrets.
>
> I think sizes larger than 32bit will be very rare for Websockets, even for
> a
> long time to come into the future. Thus a vast vast majority of all frames
> will be sent with at least 4 bytes set to zero (with a fair amount of them
> not
> even implementing >32 bit support). In my mind, I think the few users that
> acually want to send more than 32bits of data can send it in multiple
> packets
> to get around the limitation. It's not like having a 32bit limit here will
> prevent anyone from sending more than 4GB of data.


No because for any file on disk larger than 4GB, we will have to move the
entire file through the CPU, when we wouldn't had to otherwise:

http://www.ietf.org/mail-archive/web/hybi/current/msg03402.html

More abstract explanation of the above link:

http://www.ietf.org/mail-archive/web/hybi/current/msg03410.html
http://www.ietf.org/mail-archive/web/hybi/current/msg03417.html


> I don't think 4 bytes size is any particular size "loss" for small packets
> to
> feel bad about, so I prefer the simplicity of always just getting the size
> in
> a single specified way.
>
>> Its not the lazy coders who pay others net bills.
>
> Uh?

Imagine a WebSocket used to push wakeup events to real-time application
(game perhaps), so that is only perhaps 1 byte of payload. You are
proposing to double the network traffic.