Re: [hybi] method of allocation of reserved bits to extensions

Greg Wilkins <gregw@intalio.com> Thu, 28 April 2011 01:38 UTC

Return-Path: <gregw@intalio.com>
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 0E86CE0849 for <hybi@ietfa.amsl.com>; Wed, 27 Apr 2011 18:38:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.915
X-Spam-Level:
X-Spam-Status: No, score=-2.915 tagged_above=-999 required=5 tests=[AWL=0.062, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_LOW=-1]
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 0qZ+dzIJCwx4 for <hybi@ietfa.amsl.com>; Wed, 27 Apr 2011 18:38:32 -0700 (PDT)
Received: from mail-qw0-f44.google.com (mail-qw0-f44.google.com [209.85.216.44]) by ietfa.amsl.com (Postfix) with ESMTP id 6098CE090D for <hybi@ietf.org>; Wed, 27 Apr 2011 18:38:32 -0700 (PDT)
Received: by qwc23 with SMTP id 23so1367407qwc.31 for <hybi@ietf.org>; Wed, 27 Apr 2011 18:38:32 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.229.17.19 with SMTP id q19mr2196641qca.142.1303954711748; Wed, 27 Apr 2011 18:38:31 -0700 (PDT)
Received: by 10.229.186.9 with HTTP; Wed, 27 Apr 2011 18:38:31 -0700 (PDT)
In-Reply-To: <BANLkTikaOXg0u+4d8Ly6OxUQ7PFUU=udgQ@mail.gmail.com>
References: <BANLkTi=vOQDtL5GobitKe8yiUoQFb2go_Q@mail.gmail.com> <BANLkTikaOXg0u+4d8Ly6OxUQ7PFUU=udgQ@mail.gmail.com>
Date: Thu, 28 Apr 2011 11:38:31 +1000
Message-ID: <BANLkTikiUkivJitZGU-+q6wBfJ3VW45F8g@mail.gmail.com>
From: Greg Wilkins <gregw@intalio.com>
To: Hybi <hybi@ietf.org>
Content-Type: text/plain; charset="ISO-8859-1"
Subject: Re: [hybi] method of allocation of reserved bits to extensions
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: Thu, 28 Apr 2011 01:38:33 -0000

On 28 April 2011 11:16, John Tamplin <jat@google.com> wrote:
> I would be opposed to delaying the spec to try and get consensus on
> negotiating the usage of reserved bits into the base spec, since it can be
> just as easily postponed until the first extension that wants to make use of
> some reserved bit.

I also am not keen to see any unreasonable delay.   But I think that
many of the issues surrounding framing and extensions are now better
understood and I think that it is worth while to at least revisit
unresolved issues such as these to see if we can resolve them.

Currently we have the assumption that if we look at a negotiated WS
connection and if we know all the extensions that have been
negotiated, then we will be able to decode the bytes on the wire.
Unfortunately, as Brodie has pointed out, that does not hold if there
is more than one extension that uses reserved bits.     I think this
is an oversight that must be fixed, but I'm not sure that we need
additional headers etc. for it.

I think it would be sufficient to say that reserved bits are allocated
to extensions in the order in which the extensions are negotiated (and
I don't think we need optional bits):

For example: if we have 3 extensions:

   deflate-frame:   uses 1 reserved bit
   sign-frame: uses 0 reserved bits
   mux-o-magic: users 2 reserved bits

the following extension ordering

   mux-o-magic, sign-frame, deflate-frame

then mux-o-magic would get bits RSV1 and RSV2  and defkate-frame would get  RSV3

This is really just a simple convention and requires no extra bytes
sent during handshake.


cheers