Re: Header Table and Static Table Indicies Switched

On 3 August 2014 17:12, Ilari Liusvaara <ilari.liusvaara@elisanet.fi> wrote:

> > The order of the tables has no impact on the difficulty of
> > implementation, it's basically a swap of the length checks and which
> > table you offset. Why would we give up 8% in compression for free?
>
> There is a trick to quickly extract individual headers (or small groups
> of headers) out of compressed header block. It works if static table
> comes before header table, but not vice versa (the reasons for this
> involve interaction between eviction and Huffman).


There is also another good benefit for encoding with static indexes low.
Because the index does not change for fields like Date and Server, you can
every second pre-encode the bytes for fields like:

  server: jetty-9.3.0
  date: Wed, 06 Aug 2014 05:19:19 GMT

With the static index's low, this pre-encoded value is the same for all
connection, as it is not a function of the size of the dynamic table of
each connection.   Thus the same pre-encoded value may be used 10s of
thousands of times, rather than encoding these fields on each and every
response for each and every connection.

cheers






-- 
Greg Wilkins <gregw@intalio.com>
http://eclipse.org/jetty HTTP, SPDY, Websocket server and client that scales
http://www.webtide.com  advice and support for jetty and cometd.

Received on Wednesday, 6 August 2014 05:23:04 UTC