[hybi] -09: data framing

Peter Saint-Andre <stpeter@stpeter.im> Wed, 15 June 2011 23:05 UTC

Return-Path: <stpeter@stpeter.im>
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 C153D11E817D for <hybi@ietfa.amsl.com>; Wed, 15 Jun 2011 16:05:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -102.599
X-Spam-Level:
X-Spam-Status: No, score=-102.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dWle8ohBHxc7 for <hybi@ietfa.amsl.com>; Wed, 15 Jun 2011 16:05:50 -0700 (PDT)
Received: from stpeter.im (mailhost.stpeter.im [207.210.219.225]) by ietfa.amsl.com (Postfix) with ESMTP id 0F36B11E8178 for <hybi@ietf.org>; Wed, 15 Jun 2011 16:05:50 -0700 (PDT)
Received: from leavealone.cisco.com (72-163-0-129.cisco.com [72.163.0.129]) (Authenticated sender: stpeter) by stpeter.im (Postfix) with ESMTPSA id 4C596400A5 for <hybi@ietf.org>; Wed, 15 Jun 2011 17:06:12 -0600 (MDT)
Message-ID: <4DF93ACB.9070100@stpeter.im>
Date: Wed, 15 Jun 2011 17:05:47 -0600
From: Peter Saint-Andre <stpeter@stpeter.im>
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10
MIME-Version: 1.0
To: "hybi@ietf.org" <hybi@ietf.org>
X-Enigmail-Version: 1.1.1
OpenPGP: url=http://www.saint-andre.com/me/stpeter.asc
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha1"; boundary="------------ms060207060300050801040702"
Subject: [hybi] -09: data framing
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: Wed, 15 Jun 2011 23:05:50 -0000

Here are some comments on Section 4 (I had comments on Section 3 of -08
but they were fixed in -09).

In 4.2...

   frame-rsv1              = %x0 ; 1 bit, MUST be 0

   frame-rsv2              = %x0 ; 1 bit, MUST be 0

   frame-rsv3              = %x0 ; 1 bit, MUST be 0

I think we mean "MUST be 0 unless negotiated otherwise".

In 4.3...

At the beginning of Section 4.4 there is a nice paragraph starting with
"The primary purpose of fragmentation is...", but we don't have
something similar about masking. What is masking intended to accomplish?
Is it supposed to have security properties? Etc.

   The client MUST mask all frames sent to the server.  A server MUST
   close the connection upon receiving a frame with the MASK bit set to
   0.

If framing is truly mandatory for all frames (not "if the parties
negotiate masking, then the client MUST mask all frames..."), why have
the MASK bit in the first place? Would frame-masked be set to 0 only for
control frames (or control frames not containing a body)?

In 4.5.2 and 4.5.3, it might be helpful to say explicitly whether Ping
frames and Pong frames are allowed to contain a body.

In 4.8, I think we mean "prescriptive" instead of "proscriptive" (from
"proscribe" = "forbid").

   o  Extension data may be placed in the payload data before the
      application data.

Do we mean "MAY"?

Peter

-- 
Peter Saint-Andre
https://stpeter.im/