Re: Straw Poll: Restore Header Table and Static Table Indices

Willy Tarreau <w@1wt.eu> Thu, 16 October 2014 09:19 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 094141A1BE4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 16 Oct 2014 02:19:48 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.912
X-Spam-Level:
X-Spam-Status: No, score=-6.912 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 39YMLG8MzhVU for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Thu, 16 Oct 2014 02:19:46 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id ED3BA1A1AB6 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Thu, 16 Oct 2014 02:19:45 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1XehBa-00024d-Ny for ietf-http-wg-dist@listhub.w3.org; Thu, 16 Oct 2014 09:17:30 +0000
Resent-Date: Thu, 16 Oct 2014 09:17:30 +0000
Resent-Message-Id: <E1XehBa-00024d-Ny@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <w@1wt.eu>) id 1XehBR-00023m-88 for ietf-http-wg@listhub.w3.org; Thu, 16 Oct 2014 09:17:21 +0000
Received: from 1wt.eu ([62.212.114.60]) by lisa.w3.org with esmtp (Exim 4.72) (envelope-from <w@1wt.eu>) id 1XehBO-0005Nz-MD for ietf-http-wg@w3.org; Thu, 16 Oct 2014 09:17:21 +0000
Received: (from willy@localhost) by mail.home.local (8.14.4/8.14.4/Submit) id s9G9GQY7004333; Thu, 16 Oct 2014 11:16:26 +0200
Date: Thu, 16 Oct 2014 11:16:26 +0200
From: Willy Tarreau <w@1wt.eu>
To: RUELLAN Herve <Herve.Ruellan@crf.canon.fr>
Cc: Amos Jeffries <squid3@treenet.co.nz>, "ietf-http-wg@w3.org" <ietf-http-wg@w3.org>
Message-ID: <20141016091626.GC3079@1wt.eu>
References: <CAP+FsNeJU6aciA+UV3sQ318e4=fXxv9zZbsDZ1jXmYstz6XwaQ@mail.gmail.com> <E465C1C7-20DF-4F78-9936-9C914042920A@mnot.net> <20141013012326.GD13217@1wt.eu> <CAP+FsNci+YbQ9fP9LiJ1BBUSDryWOqi4A4YsKyORskY7pK0Fmg@mail.gmail.com> <CAHzwyDuAeMJe_BW0kZkLUHRn6xAN8LO_uno_ZL0TmCLgSaYbkg@mail.gmail.com> <CAH_y2NHhDTDtM4+DvWAf66GiO7of4H+ouMhxzseGODhfCSchXg@mail.gmail.com> <CAHzwyDuuN=-DyGiWAfttwq7O_zUGOE=7kVf5J=qu6i_-A9ezfg@mail.gmail.com> <543E0400.8080009@treenet.co.nz> <20141015201540.GB980@1wt.eu> <6C71876BDCCD01488E70A2399529D5E53BF5F842@ADELE.crf.canon.fr>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <6C71876BDCCD01488E70A2399529D5E53BF5F842@ADELE.crf.canon.fr>
User-Agent: Mutt/1.4.2.3i
Received-SPF: pass client-ip=62.212.114.60; envelope-from=w@1wt.eu; helo=1wt.eu
X-W3C-Hub-Spam-Status: No, score=-3.1
X-W3C-Hub-Spam-Report: AWL=-3.053, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01
X-W3C-Scan-Sig: lisa.w3.org 1XehBO-0005Nz-MD 0f15a7f596c5b91c0b36d7e2db36b79b
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Straw Poll: Restore Header Table and Static Table Indices
Archived-At: <http://www.w3.org/mid/20141016091626.GC3079@1wt.eu>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/27632
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On Thu, Oct 16, 2014 at 09:09:55AM +0000, RUELLAN Herve wrote:
> > -----Original Message-----
> > From: Willy Tarreau [mailto:w@1wt.eu]
> > Sent: mercredi 15 octobre 2014 22:16
> > To: Amos Jeffries
> > Cc: ietf-http-wg@w3.org
> > Subject: Re: Straw Poll: Restore Header Table and Static Table Indices
> > 
> > On Wed, Oct 15, 2014 at 06:20:00PM +1300, Amos Jeffries wrote:
> > > -----BEGIN PGP SIGNED MESSAGE-----
> > > Hash: SHA1
> > >
> > > On 15/10/2014 6:11 p.m., Adrian Cole wrote:
> > > >> If an argument can be made that 2 byte encodings are still too
> > > >> large for dynamic headers, then instead of flipping back let's
> > > >> investigate how the 1 byte slots can be shared between static and
> > > >> dynamic.
> > > > FWIW, I'm happy to implement an alternate approach, if one comes
> > > > out. Thanks, Greg.
> > > >
> > >
> > > Alternative approach has already been proposed. That the first bit of
> > > the index is used as a flag to indicate static or dynamic table for
> > > the remaning 7+ bits.
> > >
> > > That not only puts both on an even bias, but expands the range of
> > > values getting 1-byte encodings in either table and removes the need
> > > for the math complexity people are disliking.
> > >
> > > 1 stone, 3 birds.
> > 
> > I totally agree with this except that I don't see where you take that
> > spare bit from, that's what initially led me to rethink the encoding.
> > So if you konw where to find one bit, +1 for me obviously!
> 
> Everywhere where there's an index into the static/dynamic table, reduce the
> index size by 1 bit and use this bit as a flag to find which table is used.

OK that way it's clear. Initially I didn't want to do it that way (when
I tried to adjust the encoding to save more bits) because I believed we
needed to have all the static headers in 1 byte. But assuming the most
common ones have the lowest indexes, it makes sense to do so, as we can
encode the first 32 of them with 1 byte, same for the dynamic ones.

Thus +1 for me.

Willy