Re: Straw Poll: Restore Header Table and Static Table Indices
Greg Wilkins <gregw@intalio.com> Mon, 13 October 2014 00:21 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 D23B71A1B24 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sun, 12 Oct 2014 17:21:01 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.065
X-Spam-Level:
X-Spam-Status: No, score=-7.065 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, 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 zJ4oXjGVawj9 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sun, 12 Oct 2014 17:20:58 -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 BA70A1A1AC8 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sun, 12 Oct 2014 17:20:57 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1XdTJw-0003lL-S5 for ietf-http-wg-dist@listhub.w3.org; Mon, 13 Oct 2014 00:17:04 +0000
Resent-Date: Mon, 13 Oct 2014 00:17:04 +0000
Resent-Message-Id: <E1XdTJw-0003lL-S5@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <gregw@intalio.com>) id 1XdTJo-0003k5-AO for ietf-http-wg@listhub.w3.org; Mon, 13 Oct 2014 00:16:56 +0000
Received: from mail-wg0-f46.google.com ([74.125.82.46]) by lisa.w3.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.72) (envelope-from <gregw@intalio.com>) id 1XdTJm-0000Ww-Ho for ietf-http-wg@w3.org; Mon, 13 Oct 2014 00:16:56 +0000
Received: by mail-wg0-f46.google.com with SMTP id l18so7575743wgh.5 for <ietf-http-wg@w3.org>; Sun, 12 Oct 2014 17:16:27 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=XhJWdgSpWXVuDLwqJknAR8xu7eSrg/pUjpVuADkxFBw=; b=lGV6sTfPyZcYkEl9le6Ko0eJ0QrlyRVEwcqC2AI1kKAFwOf3J7pJeeQ0mUAUUrE38H BlHult6ivyDtpLwE/coK5gLfNG8CLystRg6E6aPOBTHEtIcmy6wdwURdyzNSwnUM584u It6fwgM0AleiqIIOaWfp5+lCXTlXkTBxa7I6a2NQdOMZVjl/6WPL1IEzFc8l9QdsWeAw RnxnuIpswlln5ueui+A5PaXy8TPvJt/hGtxhc7MYDPogkTc6zZHymis8YpObYnOL/3Qd CO5w+25WjfXq7q01lWDGwSK4Oi2PJI1y2DYM6jZPcgCOrYQ3K7GHoxPqIUbRHX0Nk3a8 AEPQ==
X-Gm-Message-State: ALoCoQmKi6b5kD/M+Cad2FU59V7xQm3ILlUfu7ICVrqiMkmmyizuB3gzxV0DjJDXCXX+9IiIae3p
MIME-Version: 1.0
X-Received: by 10.180.72.142 with SMTP id d14mr4796216wiv.31.1413159387794; Sun, 12 Oct 2014 17:16:27 -0700 (PDT)
Received: by 10.194.169.98 with HTTP; Sun, 12 Oct 2014 17:16:27 -0700 (PDT)
In-Reply-To: <CAP+FsNeJU6aciA+UV3sQ318e4=fXxv9zZbsDZ1jXmYstz6XwaQ@mail.gmail.com>
References: <CA+pLO_jkN67HLT7oup+FcYVY+RZ7ckhpY2gGy=TAsr2UUMnVVA@mail.gmail.com> <987FB86A-EF8B-4CD1-A9A7-52A9163E8CB3@mnot.net> <EBB30C88-7EBD-400F-9591-B646B4D3687B@mnot.net> <CAP+FsNeJU6aciA+UV3sQ318e4=fXxv9zZbsDZ1jXmYstz6XwaQ@mail.gmail.com>
Date: Mon, 13 Oct 2014 11:16:27 +1100
Message-ID: <CAH_y2NH5Q38rsvq1vn04_C=ZXRQ5b26ENkAV0CoEk3pbWtDjyA@mail.gmail.com>
From: Greg Wilkins <gregw@intalio.com>
To: Roberto Peon <grmocg@gmail.com>
Cc: Mark Nottingham <mnot@mnot.net>, HTTP Working Group <ietf-http-wg@w3.org>, Jeff Pinner <jpinner@twitter.com>
Content-Type: multipart/alternative; boundary="f46d043be28a524223050542cfe4"
Received-SPF: permerror client-ip=74.125.82.46; envelope-from=gregw@intalio.com; helo=mail-wg0-f46.google.com
X-W3C-Hub-Spam-Status: No, score=-4.7
X-W3C-Hub-Spam-Report: AWL=-2.146, BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7
X-W3C-Scan-Sig: lisa.w3.org 1XdTJm-0000Ww-Ho e46245814a03e94d42b9d2b80d7e6cbf
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/CAH_y2NH5Q38rsvq1vn04_C=ZXRQ5b26ENkAV0CoEk3pbWtDjyA@mail.gmail.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/27587
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>
Roberto, I do understand that you and Jeff would prefer the compression bias to be towards dynamic headers, but what I don't understand is the strength of that preference. You are so strongly in favour of reverting the indexing that I feel that I must be missing something? The compression achieved by hpack regardless of the indexing is excellent. I know that Mark is heavily leaning towards WONTFIX on this one - but I'd be very interested to hear your thoughts on the proposed compromise of reducing the size static table so that there are at lease a few 1 byte index's available for dynamic headers and dynamic header names. If we opened up say 8 slots to be available for 1 byte dynamic index's (and added static values at the same time), do you feel that would go some way to addressing your concerns, or would it still be insufficient? Do you have some example header sets you can share with me so I can do some experimentation? To respond to your specific points: I think that "highly suboptimal" is over stating the situation. Dynamic headers can still be reduced to a 2 byte index, which is a vast improvement over http/1. There was technical evaluation using the available test data an it did show a general improvement with the low static indexes and that variations were essential down among the noise considering the huge savings both approaches already achieve. I believe I have explained how the new scheme has allowed significant CPU and memory savings in my server and there have been reports from other implementers of code savings. I cannot prove that such savings are only available with the low index, and theoretically I might be able to achieve some of them with reverted indexing. However the reality we were not able to achieve those savings with the high static indexing, despite there being significant benefits if we could (and we did try). We have been able to achieve them with the low index's. I know this is not proof, but I think it is good circumstantial evidence. regards On 13 October 2014 03:28, Roberto Peon <grmocg@gmail.com> wrote: > The current mechanism is highly suboptimal when not using the headers in > the static table. > > There has been no technical argument refuting this-- all arguments have > shown that the previous arrangement was approximately on par for > static-table heavy workloads in terms of compression efficiency. > > We have no guarantee that users will always wish to use the arguments in > the static table. > We know that adding to the size of the static table decreases efficiency > of the compressor for any item that would not be in the static table. > > No-one has shown that the new scheme is significantly better in terms of > CPU or memory. > > There was no interop issue w.r.t. the previous text. > > In fact, the previous text allowed for the static table to be changed > easily in future versions, with guaranteed detection of mismatch when new > elements have been appended to the static table by one implementation but > not the other. This is not true of the current version, which would require > a negotiation in order to figure any such things out, and would otherwise > result in corruption. > > > As currently specc'd we're half-assing the compression, and we already > know a better solution and have specc'd, implemented and demonstrated > interop with it. > -=R > > On Sat, Oct 11, 2014 at 11:59 PM, Mark Nottingham <mnot@mnot.net> wrote: > >> There doesn't seem to be support for making a change here; most people >> were against any change, and while there were a few other proposals made, >> they didn't get broad support. Since this isn't a security or interop >> issue, I'm inclined to close as WONTFIX. >> >> Does anybody have new information here, or can we move on? >> >> Cheers, >> >> >> On 7 Oct 2014, at 6:23 am, Mark Nottingham <mnot@mnot.net> wrote: >> >> > Thanks, Jeff. >> > >> > I see people have already started to respond to this. >> > >> > Everyone else, please do the same — if you think this needs more >> discussion, please do so, but I think we’re at a point where people can >> just state their preferences. >> > >> > Regards, >> > >> > >> > On 7 Oct 2014, at 2:02 am, Jeff Pinner <jpinner@twitter.com> wrote: >> > >> >> As request by Mark, I propose that the current HPACK draft be changed >> >> such that Sec. 2.3.3 Index Address Space reads, >> >> >> >> "Indices between 1 and the length of the dynamic table (inclusive) >> >> refer to elements in the dynamic table. >> >> >> >> Indices strictly greater than the length of the dynamic table refer to >> >> elements in the static table. The length of the dynamic table is >> >> subtracted from the index into the static table." >> >> >> >> with the associated diagram updated. This reverts the change made >> >> between draft -08 and -09 in the change log, "Exchanged header and >> >> static table positions." >> >> >> > >> > -- >> > Mark Nottingham http://www.mnot.net/ >> > >> > >> > >> > >> >> -- >> Mark Nottingham https://www.mnot.net/ >> >> >> > -- Greg Wilkins <gregw@intalio.com> @ Webtide - *an Intalio subsidiary* http://eclipse.org/jetty HTTP, SPDY, Websocket server and client that scales http://www.webtide.com advice and support for jetty and cometd.
- 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