Re: [hybi] Frame size

Jamie Lokier <jamie@shareable.org> Mon, 19 April 2010 10:29 UTC

Return-Path: <jamie@shareable.org>
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 E60CF3A68DD for <hybi@core3.amsl.com>; Mon, 19 Apr 2010 03:29:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.187
X-Spam-Level:
X-Spam-Status: No, score=-3.187 tagged_above=-999 required=5 tests=[AWL=-0.588, 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 AZHw9jFoEXAr for <hybi@core3.amsl.com>; Mon, 19 Apr 2010 03:29:05 -0700 (PDT)
Received: from mail2.shareable.org (mail2.shareable.org [80.68.89.115]) by core3.amsl.com (Postfix) with ESMTP id 3E9BC3A6840 for <hybi@ietf.org>; Mon, 19 Apr 2010 03:28:57 -0700 (PDT)
Received: from jamie by mail2.shareable.org with local (Exim 4.63) (envelope-from <jamie@shareable.org>) id 1O3oDf-0008FM-L7; Mon, 19 Apr 2010 11:28:47 +0100
Date: Mon, 19 Apr 2010 11:28:47 +0100
From: Jamie Lokier <jamie@shareable.org>
To: Greg Wilkins <gregw@webtide.com>
Message-ID: <20100419102847.GC28758@shareable.org>
References: <4BC85A31.6060605@webtide.com> <t2iad99d8ce1004160949yb1ba9582l3b626c19dacf8d9@mail.gmail.com> <4BC96DA1.3000706@webtide.com> <u2m2a10ed241004181635qd0554193v36da94ecd7284d31@mail.gmail.com> <l2o2a10ed241004181637hdfab97d5r68f6845be49e8ad8@mail.gmail.com> <20100419005102.GC18876@shareable.org> <g2n2a10ed241004182005n9d8a5f02o29702620ae6205f4@mail.gmail.com> <4BCBD6B6.7010802@caucho.com> <x2i2a10ed241004182127oaee6eaf2j8c56d967a55353ad@mail.gmail.com> <4BCC10E2.2070002@webtide.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <4BCC10E2.2070002@webtide.com>
User-Agent: Mutt/1.5.13 (2006-08-11)
Cc: Hybi <hybi@ietf.org>
Subject: Re: [hybi] Frame size
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: Mon, 19 Apr 2010 10:29:06 -0000

Greg Wilkins wrote:
> PS> Another alternative is to mandate a negotiation
> of maximum message size in the handshake.

TCP does something similar with MSS.  In practice, there are routers
which break some TCP ports(!) by fudging their own broken MSS
negotiation into the middle.  If routers can break TCP, I am sure
proxies attempting to fudge their own message size limit into the
middle of a WebSocket negotation is asking for trouble.

Let's try to keep chunks and messages independent in such a way that
proxies only care about chunks as much as they possibly can.
(I.e. WS-aware firewalls will probably still care about message
structure.)

> Or somebody can come up with a good simple design for
> error handling with large (or unlimited) frames.

You could send TCP URG data on a direct connection, and this is one of
it's most useful uses - avoiding the need to split data streams into
lots of prefixed chunks :-)

But TCP URG isn't handled by most proxies even including "transparent"
(intercepting) TCP relays, so it's a total non-starter.

-- Jamie