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

John Tamplin <jat@google.com> Thu, 28 April 2011 02:13 UTC

Return-Path: <jat@google.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 AAE7AE0770 for <hybi@ietfa.amsl.com>; Wed, 27 Apr 2011 19:13:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -107.856
X-Spam-Level:
X-Spam-Status: No, score=-107.856 tagged_above=-999 required=5 tests=[AWL=-1.880, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-4, 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 2wtIzBb7xjJf for <hybi@ietfa.amsl.com>; Wed, 27 Apr 2011 19:13:33 -0700 (PDT)
Received: from smtp-out.google.com (smtp-out.google.com [74.125.121.67]) by ietfa.amsl.com (Postfix) with ESMTP id A2A78E066F for <hybi@ietf.org>; Wed, 27 Apr 2011 19:13:32 -0700 (PDT)
Received: from kpbe19.cbf.corp.google.com (kpbe19.cbf.corp.google.com [172.25.105.83]) by smtp-out.google.com with ESMTP id p3S2DUHF027816 for <hybi@ietf.org>; Wed, 27 Apr 2011 19:13:31 -0700
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1303956811; bh=tqmI2DFWOcxO503+co1XrEoIrRc=; h=MIME-Version:In-Reply-To:References:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=WUIVVJHuXsqItsrXRoXYLNGnAMOp+E1BVmULpR53HYICZzOIngRcT42E8GFmBZZgj i6KKP/nimCXS7UbJgYbTQ==
Received: from gyh4 (gyh4.prod.google.com [10.243.50.196]) by kpbe19.cbf.corp.google.com with ESMTP id p3S2DTkR030817 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT) for <hybi@ietf.org>; Wed, 27 Apr 2011 19:13:29 -0700
Received: by gyh4 with SMTP id 4so1094781gyh.40 for <hybi@ietf.org>; Wed, 27 Apr 2011 19:13:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=beta; h=domainkey-signature:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=C4eBLuQwJTi3Sw3n8BGFxSacOSxVpHhIvfAFBZBEufg=; b=I3e0BQ1x5D8wXofFrwJZKRGVODDZ1QLVdmEjQEgG2yqlYb2fIqSVNKvCfjdQ9tkU09 do/7i9YEho8D/lpBE5YA==
DomainKey-Signature: a=rsa-sha1; c=nofws; d=google.com; s=beta; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; b=XTd2doJ+ZJa/ySGvVkitkEvB/kup7f0YfyEMgXI6cOCSS27rO1bnmx/9BDZH/WZyaN +1K/2foHNNGpKSX6MRQw==
Received: by 10.150.159.6 with SMTP id h6mr1998998ybe.344.1303956809085; Wed, 27 Apr 2011 19:13:29 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.150.199.16 with HTTP; Wed, 27 Apr 2011 19:13:09 -0700 (PDT)
In-Reply-To: <BANLkTikiUkivJitZGU-+q6wBfJ3VW45F8g@mail.gmail.com>
References: <BANLkTi=vOQDtL5GobitKe8yiUoQFb2go_Q@mail.gmail.com> <BANLkTikaOXg0u+4d8Ly6OxUQ7PFUU=udgQ@mail.gmail.com> <BANLkTikiUkivJitZGU-+q6wBfJ3VW45F8g@mail.gmail.com>
From: John Tamplin <jat@google.com>
Date: Wed, 27 Apr 2011 22:13:09 -0400
Message-ID: <BANLkTindmLQ0KE6K5qUX2ue+=hoLUaznLA@mail.gmail.com>
To: Greg Wilkins <gregw@intalio.com>
Content-Type: multipart/alternative; boundary="000e0cd733906874b904a1f11abc"
X-System-Of-Record: true
Cc: Hybi <hybi@ietf.org>
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 02:13:33 -0000

On Wed, Apr 27, 2011 at 9:38 PM, Greg Wilkins <gregw@intalio.com> wrote:

> 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.
>

I disagree that a complicated method of allocating bits is required.  For
example, given the number of likely extensions that would want to use
reserved bits, it seems reasonable to simply define that the Foo extension
allocates RSV2.  If another extension also statically allocates RSV2, then
obviously they couldn't be used together.  Or, the Foo and Bar extensions
could say they use the WS-Reserved-Bit-Spec to allocate the bits, and any
extensions which want to dynamically allocate reserved bits could use that
spec.  That is what I mean by there is no need to define that method now,
and until we actually have a an extension that wants to allocate reserved
bits there is no need.

-- 
John A. Tamplin
Software Engineer (GWT), Google