Re: Straw Poll: Restore Header Table and Static Table Indices
Nicholas Hurley <hurley@todesschaf.org> Tue, 07 October 2014 16:14 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 F23061A016B for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 7 Oct 2014 09:14:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.188
X-Spam-Level:
X-Spam-Status: No, score=-7.188 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, J_CHICKENPOX_65=0.6, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.786, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] 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 it2M6Wk1bJdI for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Tue, 7 Oct 2014 09:14:32 -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 82D2A1A01CB for <httpbisa-archive-bis2Juki@lists.ietf.org>; Tue, 7 Oct 2014 09:14:32 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1XbXM6-0002Jg-7n for ietf-http-wg-dist@listhub.w3.org; Tue, 07 Oct 2014 16:11:18 +0000
Resent-Date: Tue, 07 Oct 2014 16:11:18 +0000
Resent-Message-Id: <E1XbXM6-0002Jg-7n@frink.w3.org>
Received: from maggie.w3.org ([128.30.52.39]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <hurley@todesschaf.org>) id 1XbXM2-0002GO-4O for ietf-http-wg@listhub.w3.org; Tue, 07 Oct 2014 16:11:14 +0000
Received: from out1-smtp.messagingengine.com ([66.111.4.25]) by maggie.w3.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from <hurley@todesschaf.org>) id 1XbXLw-0003eX-5s for ietf-http-wg@w3.org; Tue, 07 Oct 2014 16:11:14 +0000
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by gateway2.nyi.internal (Postfix) with ESMTP id 50BF920CBE for <ietf-http-wg@w3.org>; Tue, 7 Oct 2014 12:10:45 -0400 (EDT)
Received: from web2 ([10.202.2.212]) by compute4.internal (MEProxy); Tue, 07 Oct 2014 12:10:45 -0400
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=todesschaf.org; h= message-id:x-sasl-enc:from:to:mime-version :content-transfer-encoding:content-type:in-reply-to:references :subject:date; s=mesmtp; bh=C3IJq4Z2tiP+CBG1gf85sTRYhLA=; b=I0Jg v6+fKXzg518ud6eYw2Lr9M86DkC2v6ipSx3MSVAO1Gj2T2BEsuVLdBbBNo3fI+Q5 D2Fls4949ifvSbaCVYFmpDXpkPqLhbCPeTxtYt1rXVM/YZfxGzNr5y/D52wQh56N KvKMac6m/s200uzl8oCrW/IDirPRuVaOXhvMbzg=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=message-id:x-sasl-enc:from:to :mime-version:content-transfer-encoding:content-type:in-reply-to :references:subject:date; s=smtpout; bh=C3IJq4Z2tiP+CBG1gf85sTRY hLA=; b=NzyFAD+0CF4W/13O3d1c3vr9ZmNFEZqpn1PMyHHfMn1WaZiCzRdHuU5j 3V0VV/Ba68ZMWuc+AbKtQJj4cGBRLryf1ME+ChRm9NN37MNZekSqWGU1/raxf6oD 3cYoKG02Owo0Rpei/36iQBYuZ2nTcRXvbxGlOlJcpw6kv+IvmnQ=
Received: by web2.nyi.internal (Postfix, from userid 99) id 258D754013C; Tue, 7 Oct 2014 12:10:45 -0400 (EDT)
Message-Id: <1412698245.2163945.176189617.6D3084E5@webmail.messagingengine.com>
X-Sasl-Enc: ceA2J81NU5Vnsk08T4R1ykHKeh3tYq8bJXHvV4cYSoop 1412698245
From: Nicholas Hurley <hurley@todesschaf.org>
To: Mark Nottingham <mnot@mnot.net>, Willy Tarreau <w@1wt.eu>, HTTP Working Group <ietf-http-wg@w3.org>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain
X-Mailer: MessagingEngine.com Webmail Interface - ajax-257eafe9
In-Reply-To: <C2C61B19-E738-4B90-BE0F-A4346C095FA4@mnot.net>
References: <CA+pLO_jkN67HLT7oup+FcYVY+RZ7ckhpY2gGy=TAsr2UUMnVVA@mail.gmail.com> <987FB86A-EF8B-4CD1-A9A7-52A9163E8CB3@mnot.net> <54334615.40907@iij.ad.jp> <CAH_y2NGuRBeN=_NJExeFqt06Uq5MAdYHpAp2xhiFKj0AE1wcJQ@mail.gmail.com> <0BB64E69-463C-4D12-8582-FD1FF84D1B10@mnot.net> <20141007052847.GA11117@1wt.eu> <B47FA4E6-6F91-44A1-8257-AE5086EF4DC1@mnot.net> <20141007054917.GB4566@1wt.eu> <28897143-3030-4500-829A-4199CE17CA22@mnot.net> <20141007061650.GD4566@1wt.eu> <C2C61B19-E738-4B90-BE0F-A4346C095FA4@mnot.net>
Date: Tue, 07 Oct 2014 09:10:45 -0700
Received-SPF: pass client-ip=66.111.4.25; envelope-from=hurley@todesschaf.org; helo=out1-smtp.messagingengine.com
X-W3C-Hub-Spam-Status: No, score=-3.6
X-W3C-Hub-Spam-Report: AWL=-2.757, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001
X-W3C-Scan-Sig: maggie.w3.org 1XbXLw-0003eX-5s 29e60f03e9703e5f79c38acbe26a84e5
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/1412698245.2163945.176189617.6D3084E5@webmail.messagingengine.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/27486
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>
I'm a big -1 on both of those options. They are both rather significant changes that have no proof of viability behind them, and are even larger changes than the one Jeff proposed (and in my estimation - take that for what you will - have no place being considered at this stage of the process). Note: this does not in any way mean I'm any more positive on Jeff's proposed change. On Mon, Oct 6, 2014, at 23:26, Mark Nottingham wrote: > Thanks, Willy. > > Everyone, please extend the straw poll to include these two options -- > who prefers one of them as the solution? > > Regards, > > > On 7 Oct 2014, at 5:16 pm, Willy Tarreau <w@1wt.eu> wrote: > > > On Tue, Oct 07, 2014 at 04:54:01PM +1100, Mark Nottingham wrote: > >> Willy, if you have a concrete proposal that you think can can strong > >> consensus, please make it ASAP. Stopping the work to do research on whether a > >> change is necessary isn't appropriate at this point in the work; that train > >> left the station a while ago. > > > > I have proposed two directions in July and was told it was already too late. > > I'm sorry for not having accurate details anymore in my mind 3 months later, > > but that was the first one : > > > > http://article.gmane.org/gmane.ietf.http-wg/23155 > > > > " > > I'm noticing that we need only 4 bits to send any possible static header+value > > (assuming we swap accept-charset and accept-encoding), since all other values > > are empty and will never be used as-is but as litterals. > > > > So I think that based on your suggestion to split indexing of static and > > dynamic, I'm suspecting we could systematically split indexes between static > > and dynamic in opcodes. Indeed, some index fields are already small (6+ for > > litterals and 4+ for litterals not indexed/never indexed), so having the > > static first will force one extra byte for all dynamic headers. However, > > stealing one bit in unused value ranges could help make that situation > > better. Something along these lines seems possible (please forgive me for > > errors, I'm encoding as I write) : > > > > 11 XXXXXX => send 6+indexed header from *dynamic* table as-is (0xC0 reserved) > > 10 01XXXX => send 4+indexed header from *static* table as-is (0x80 reserved) > > > > 00 00XXXX => send 4+indexed *dynamic* header without indexing (unchanged) > > 10 00XXXX => send 4+indexed *static* header without indexing > > > > 10 1XXXXX => send litteral based on *dynamic* header table (0=new name or reserved) > > 01 XXXXXX => send litteral based on *static* header table (0=new name) > > > > The idea is that even when we have few bits to encode the index, we're not > > forced to add an extra byte to encode the values from the other table, whatever > > table we pick first as first. > > " > > > > The second one was much simpler and Greg seems to favor it as well : > > > > http://article.gmane.org/gmane.ietf.http-wg/23201 > > > > " > > If at least we had the ability to encode both static table and most recent > > dynamic entries with a single index, I would feel better. For example you > > can have another approach : > > - positive indexes = static table index > > - negative indexes = - dynamic table index > > > > You encode (index + 10), so that you can encode up to the last 10 emitted > > fields, and you can encode up to 54 static headers in a single byte (it's > > just a matter of proper sorting but it's already reasonably clean). I think > > you get the idea. > > " > > > > Greg proposed to run some tests. I really think the second one is *very* > > easy to test in a sane environment, and represents a very small change. > > It ensures that commonly used fields do not need an extra byte, that recently > > indexed headers do not need an extra byte either, and that only old indexed > > headers or rarely used static headers need one. Right now I think that some > > of the static header fields might be less common than a number of the ones > > that are found in the indexed table, precisely because if they're in the > > indexed table, they're being used! > > > > Regards, > > Willy > > > > -- > Mark Nottingham https://www.mnot.net/ > > -- Peace, -Nick
- Re: Restore Header Table and Static Table Indices Nicholas Hurley
- Restore Header Table and Static Table Indices Jeff Pinner
- Re: Restore Header Table and Static Table Indices Kulkarni, Saurabh
- Re: Restore Header Table and Static Table Indices Poul-Henning Kamp
- Straw Poll: Restore Header Table and Static Table… Mark Nottingham
- Re: Restore Header Table and Static Table Indices Ludin, Stephen
- Re: Restore Header Table and Static Table Indices Michael Sweet
- Re: Restore Header Table and Static Table Indices Greg Wilkins
- Re: Restore Header Table and Static Table Indices Daniel Stenberg
- Re: Restore Header Table and Static Table Indices Simpson, Robby (GE Energy Management)
- Re: Restore Header Table and Static Table Indices Roberto Peon
- RE: Restore Header Table and Static Table Indices Mike Bishop
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Shigeki Ohtsu
- Re: Straw Poll: Restore Header Table and Static T… Greg Wilkins
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Amos Jeffries
- RE: Straw Poll: Restore Header Table and Static T… K.Morgan
- Re: Straw Poll: Restore Header Table and Static T… Nicholas Hurley
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Nicholas Hurley
- RE: Straw Poll: Restore Header Table and Static T… RUELLAN Herve
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Greg Wilkins
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Roberto Peon
- Re: Straw Poll: Restore Header Table and Static T… Greg Wilkins
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Roberto Peon
- Re: Straw Poll: Restore Header Table and Static T… Poul-Henning Kamp
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Greg Wilkins
- Re: Straw Poll: Restore Header Table and Static T… Adrian Cole
- Re: Restore Header Table and Static Table Indices Adrian Cole
- Re: Straw Poll: Restore Header Table and Static T… Greg Wilkins
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Adrian Cole
- Re: Straw Poll: Restore Header Table and Static T… Adrian Cole
- Re: Straw Poll: Restore Header Table and Static T… Amos Jeffries
- Re: Straw Poll: Restore Header Table and Static T… Poul-Henning Kamp
- Re: Straw Poll: Restore Header Table and Static T… Adrian Cole
- RE: Straw Poll: Restore Header Table and Static T… RUELLAN Herve
- Re: Straw Poll: Restore Header Table and Static T… Poul-Henning Kamp
- Re: Straw Poll: Restore Header Table and Static T… Simpson, Robby (GE Energy Management)
- Re: Straw Poll: Restore Header Table and Static T… Simpson, Robby (GE Energy Management)
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Jason Greene
- RE: Straw Poll: Restore Header Table and Static T… RUELLAN Herve
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Poul-Henning Kamp
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Greg Wilkins
- Re: Straw Poll: Restore Header Table and Static T… Mark Nottingham
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Poul-Henning Kamp
- Re: Straw Poll: Restore Header Table and Static T… Roberto Peon
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Poul-Henning Kamp
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Julian Reschke
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Poul-Henning Kamp
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Greg Wilkins
- Re: Straw Poll: Restore Header Table and Static T… Willy Tarreau
- Re: Straw Poll: Restore Header Table and Static T… Jason Greene
- timestamps encoding (was: Re: Straw Poll: Restore… Willy Tarreau
- #578 [was: Straw Poll: Restore Header Table and S… Mark Nottingham
- Re: timestamps encoding (was: Re: Straw Poll: Res… Martin Nilsson
- Re: timestamps encoding Amos Jeffries
- Re: #578 [was: Straw Poll: Restore Header Table a… Amos Jeffries
- Re: #578 [was: Straw Poll: Restore Header Table a… Mark Nottingham
- Re: timestamps encoding Martin Nilsson