Re: [hybi] Review of draft-ietf-hybi-thewebsocketprotocol-13

Tobias Oberstein <tobias.oberstein@tavendo.de> Tue, 06 September 2011 14:57 UTC

Return-Path: <tobias.oberstein@tavendo.de>
X-Original-To: hybi@ietfa.amsl.com
Delivered-To: hybi@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 78B9821F8B0A; Tue, 6 Sep 2011 07:57:52 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.348
X-Spam-Level:
X-Spam-Status: No, score=-2.348 tagged_above=-999 required=5 tests=[AWL=-0.049, BAYES_00=-2.599, MIME_8BIT_HEADER=0.3]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id u+Er9AaTUXzO; Tue, 6 Sep 2011 07:57:52 -0700 (PDT)
Received: from EXHUB020-5.exch020.serverdata.net (exhub020-5.exch020.serverdata.net [206.225.164.32]) by ietfa.amsl.com (Postfix) with ESMTP id EB57A21F8B08; Tue, 6 Sep 2011 07:57:51 -0700 (PDT)
Received: from EXVMBX020-12.exch020.serverdata.net ([169.254.3.209]) by EXHUB020-5.exch020.serverdata.net ([206.225.164.32]) with mapi; Tue, 6 Sep 2011 07:59:38 -0700
From: Tobias Oberstein <tobias.oberstein@tavendo.de>
To: "Richard L. Barnes" <rbarnes@bbn.com>, Iñaki Baz Castillo <ibc@aliax.net>
Date: Tue, 06 Sep 2011 07:58:34 -0700
Thread-Topic: [hybi] Review of draft-ietf-hybi-thewebsocketprotocol-13
Thread-Index: Acxso2ak8/fVa0ySQwKoy3S/d5dsNgAAQkuw
Message-ID: <634914A010D0B943A035D226786325D422C0EB8D18@EXVMBX020-12.exch020.serverdata.net>
References: <942CCA6B-B784-441B-96CA-3506FFC439E1@bbn.com> <CALiegfmyQ5h4S2FgBnrh2VLr8+q-h0sLiGsww7T+1VwYNRo4wQ@mail.gmail.com> <72E40A0F-C923-472F-9534-538B89F7A444@bbn.com>
In-Reply-To: <72E40A0F-C923-472F-9534-538B89F7A444@bbn.com>
Accept-Language: de-DE, en-US
Content-Language: de-DE
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: de-DE, en-US
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: General Area Review Team <gen-art@ietf.org>, "hybi@ietf.org" <hybi@ietf.org>
Subject: Re: [hybi] Review of draft-ietf-hybi-thewebsocketprotocol-13
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/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: Tue, 06 Sep 2011 14:57:52 -0000

> In contrast, *not* requiring breaking at UTF-8 code points means that clients
> can't do any meaningful validation on text frames.  Which means you might
> as well get rid of text frames entirely.

Why?

You can do streaming validation of UTF-8 without requiring frame boundaries to
observe UTF-8 code point boundaries.

In Python you can do that i.e. using

codecs.getincrementaldecoder('utf-8')()

When a frame does not end on code point boundary, one needs to remember
at most 3 bytes to continue validation on next frame.

It would make sense that a peer SHOULD fail a connection upon invalid UTF-8
as soon as it is possible - that means with at most 1 frame delay upon the
start of the byte sequence that was invalid UTF-8.

Anyway: what's the advantage of such an requirement?