Re: New Version Notification for draft-vkrasnov-h2-compression-dictionaries-01.txt

Martin Thomson <> Fri, 04 November 2016 00:12 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 25FDE1296A0 for <>; Thu, 3 Nov 2016 17:12:47 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -8.498
X-Spam-Status: No, score=-8.498 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-1.497, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (2048-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id HhDnBJ2U9adF for <>; Thu, 3 Nov 2016 17:12:45 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id DD05512969A for <>; Thu, 3 Nov 2016 17:12:45 -0700 (PDT)
Received: from lists by with local (Exim 4.80) (envelope-from <>) id 1c2S3V-0004PP-3c for; Fri, 04 Nov 2016 00:08:25 +0000
Resent-Date: Fri, 04 Nov 2016 00:08:25 +0000
Resent-Message-Id: <>
Received: from ([]) by with esmtps (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <>) id 1c2S3N-0004N3-3w for; Fri, 04 Nov 2016 00:08:17 +0000
Received: from ([]) by with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <>) id 1c2S3H-0004eK-4l for; Fri, 04 Nov 2016 00:08:11 +0000
Received: by with SMTP id c47so38950187qtc.2 for <>; Thu, 03 Nov 2016 17:07:50 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=QINVY+Ry+Zsv13twbXQC3i/mu+8XUf0frupoYjUyuOY=; b=JVoAPC3qI6tMwXBlzaUunRKK3DPsFwSdHOlLJJHdIFz/rOnCAs5awRUQQUQQ+9+7m6 eu0zqZzeXlPVZgbwXn8VdtQb6hN6lLs+fCR+lJ3mZIHxd7m1vvXDC++CK6G84r4Mpi1K InkBmv60oP6FJS0xsjFRKXzjt4pwiTa0fN5M0xCMiJh+L4PdB8ooQ5qFzzL9yxP5CLfM Bmggg3YLkOYRowfYqDxcfxkE8KCOzLwpQ85CzDIsEgxBm2PhbVhFIb9RjdIrnszcl7dd vFJ+1Ap/ZUBGBQaIS34rkkTMiUMA/tRFvZZX83EtnykbYgbHxsvO95s3rnbXvb+O7Ppi 9C2g==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=QINVY+Ry+Zsv13twbXQC3i/mu+8XUf0frupoYjUyuOY=; b=I/oa3FgQVEBky6M2E03no4SY1w2Ri3o3+KUIiS3H9R3rK/UkyJRoIlUBeAZuxcQM6E uVGcb1SH8joX9wGG2mFOjjrDKulvTRV5QJP4gv+UQXfcjXoHMaC4oV3U9qW7lccFTImP 4ExwA1RAVqjWwI9BSRDqYP64QS385ndSZTjyVmJIVBl+r6Ux/DOlLJs7omO0/xwPGjt7 WscFahoX+eIy6E5jT3OGrKY0YBRnFin0iwPm+Wn7Vt44nf0uPzG/KSSNJ0E8YU2uhz4G HP0ak/nUznMtYcpqkWGVXPf1Kh1wGIrQ+68iHKeOixx24p6S/TTl31lFF4gqkoo+IquE KgZA==
X-Gm-Message-State: ABUngvfUtK+RpEK1wKmWr75YQ65mfocnDXrU8zZWfpXDI/10ymt6MREmtRulnt6Y46h5McDxBFNroVDx5lS8Ww==
X-Received: by with SMTP id q27mr11583250qtb.116.1478218065001; Thu, 03 Nov 2016 17:07:45 -0700 (PDT)
MIME-Version: 1.0
Received: by with HTTP; Thu, 3 Nov 2016 17:07:44 -0700 (PDT)
In-Reply-To: <>
References: <> <> <> <> <> <> <> <> <> <> <>
From: Martin Thomson <>
Date: Fri, 4 Nov 2016 11:07:44 +1100
Message-ID: <>
To: Patrick McManus <>
Cc: Jyrki Alakuijala <>, Vlad Krasnov <>, Matthew Kerwin <>, HTTP Working Group <>
Content-Type: text/plain; charset=UTF-8
Received-SPF: pass client-ip=;;
X-W3C-Hub-Spam-Status: No, score=-6.1
X-W3C-Hub-Spam-Report: AWL=0.097, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001, W3C_AA=-1, W3C_DB=-1, W3C_IRA=-1, W3C_WL=-1
X-W3C-Scan-Sig: 1c2S3H-0004eK-4l c76ccd27670e081fcdb57d9e644a545b
Subject: Re: New Version Notification for draft-vkrasnov-h2-compression-dictionaries-01.txt
Archived-At: <>
X-Mailing-List: <> archive/latest/32845
Precedence: list
List-Id: <>
List-Help: <>
List-Post: <>
List-Unsubscribe: <>

On 4 November 2016 at 01:45, Patrick McManus <> wrote:
> We should also be congnizant of the recent movement towards
> "content-encodings should be self describing" that came out of the encrypted
> object draft discussion - which sdch doesn't quite match (yet?). Perhaps a
> brotli with a uri for its custom dictionary combined with push of the dict
> gets us there (handwave).

I think that the main innovation in Vlad's proposal is that he doesn't
necessarily rely on a separate dictionary resource, he uses real
resources to prime the dictionary.  That means that you never spend
bytes on stuff that isn't immediately useful to you.  I'd be very
interested in seeing what effect that has on things like

I agree with you that the content encoding being self-descriptive is
valuable, but I'm not quite seeing how we can get both of these things
just yet.  Maybe URLs are the wrong answer and we simply need to
identify a shared context somehow.

If you take Jyrki's observation that you might want multiple
dictionaries, you can have a header that includes a list of
dictionaries you want to use, plus optionally the dictionary that you
want to append to with this response.

Spitballing here... would identifying the context with a hash of its
state work?  Using hashes means that you don't ever have a problem
with state synchronization.  Synchronization is very much a problem if
you move to something like QUIC where inter-stream ordering is loose,
and it acts as a sanity check that you aren't corrupting data.