Re: [hybi] Framing take IV

Greg Wilkins <gregw@webtide.com> Thu, 05 August 2010 02:30 UTC

Return-Path: <gregw@webtide.com>
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 C62CB3A635F for <hybi@core3.amsl.com>; Wed, 4 Aug 2010 19:30:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.732
X-Spam-Level:
X-Spam-Status: No, score=-1.732 tagged_above=-999 required=5 tests=[AWL=0.245, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622]
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 o9ccRQoi+LTS for <hybi@core3.amsl.com>; Wed, 4 Aug 2010 19:30:17 -0700 (PDT)
Received: from mail-fx0-f44.google.com (mail-fx0-f44.google.com [209.85.161.44]) by core3.amsl.com (Postfix) with ESMTP id 2442F3A6A12 for <hybi@ietf.org>; Wed, 4 Aug 2010 19:30:14 -0700 (PDT)
Received: by fxm16 with SMTP id 16so1961254fxm.31 for <hybi@ietf.org>; Wed, 04 Aug 2010 19:30:41 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.223.109.2 with SMTP id h2mr9774005fap.95.1280975441512; Wed, 04 Aug 2010 19:30:41 -0700 (PDT)
Received: by 10.223.57.12 with HTTP; Wed, 4 Aug 2010 19:30:41 -0700 (PDT)
In-Reply-To: <20100805020304.GY27827@shareable.org>
References: <AANLkTinyrDoG5d_Ur6HVRy=SgMPjLzJtpJ++Ye=1DQdj@mail.gmail.com> <20100804022719.GT27827@shareable.org> <AANLkTi=MENta8H4A_ota=R==EJ3j0zAkPc7ai2qmsZiT@mail.gmail.com> <AANLkTinZE8-HSi-BJD8Oq3z3+9BXY8eMnZ4DAnOaiuT=@mail.gmail.com> <20100804031917.GV27827@shareable.org> <AANLkTikMuVDwUyKYetCvj2GWv8dW+sWa5RLOVVOVPcBF@mail.gmail.com> <20100805020304.GY27827@shareable.org>
Date: Thu, 05 Aug 2010 12:30:41 +1000
Message-ID: <AANLkTi=HHNhWsg8by3p-F_V-dctH+hv=c44qUGRiWF7P@mail.gmail.com>
From: Greg Wilkins <gregw@webtide.com>
To: Jamie Lokier <jamie@shareable.org>
Content-Type: text/plain; charset="UTF-8"
Cc: hybi@ietf.org
Subject: Re: [hybi] Framing take IV
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: Thu, 05 Aug 2010 02:30:29 -0000

Jamie,

sorry the text diagrams are not working... they should be in fixed width fonts.

Anyway - I'm trying to work out the exact nature of your proposal other than
what I think are stylistic (eg opcode + length  vs BERlength + opcode )

So I think the key aspect of your  proposal I think is that the
extended op codes are negotiated in the handshake.
You say that the *client* decides opcode values for features it
proposes, but how does the client know what features the server
supports?
Surely it is best for the client to simply list the extensions it may
support and then the server picks the final list and allocates opcodes
(and/or bits)?
Could you possible do some more worked examples of how you see this
working - eg if I wanted to negotiate fragments, mime messages and
compressed frames.


Eitherway, if opcodes were able to be negotiated, then would you agree
that this would work with the binary framing more or less how it is
currently
specified;

    op-code(8) + BER length + data


I ask this because the current framing is our starting point.  I know
there are arguments for
    opcode + fixed length
    opcode + BER length
    BER opcode + BER length
    fix length + opcode
    BER length + opcode
    BER length + BER opcode

but I think they are secondary to the basic extension mechanism and
I'd really like to separate out discussion of what is the best length
encoding from what is a sufficient extension mechanism.

cheers