Re: [quicwg/base-drafts] QPACK could use some examples (#1454)
afrind <notifications@github.com> Fri, 14 September 2018 23:27 UTC
Return-Path: <noreply@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AE734130DC3 for <quic-issues@ietfa.amsl.com>; Fri, 14 Sep 2018 16:27:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.01
X-Spam-Level:
X-Spam-Status: No, score=-8.01 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_DKIMWL_WL_HIGH=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.com
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 RL-arK2OOAMp for <quic-issues@ietfa.amsl.com>; Fri, 14 Sep 2018 16:27:25 -0700 (PDT)
Received: from out-1.smtp.github.com (out-1.smtp.github.com [192.30.252.192]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B8D3E12426A for <quic-issues@ietf.org>; Fri, 14 Sep 2018 16:27:25 -0700 (PDT)
Date: Fri, 14 Sep 2018 16:27:24 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1536967644; bh=HArC95LoPaSkRVK01Vrnr4P4rGnoGdsru5R8J39EwFY=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=WK8hqAi05Lycc1c3seugxSWG+NxVeZIhsdIBmgW03TDa2bQGuDPR62ik4t3r7K70x 1xjJvr9HH2fq3dhxLejoIveW0f0FzjtlcSJQaRaqxYaJxx1h4TkjqMQXtf6MvYvCCh M8bwUvaUh1UNyC0DlAmsG01tIln5knWMGePgfADg=
From: afrind <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab4d0c23e9c2f86ad3b7923ceaf1a3207da6089f8692cf0000000117b405dc92a169ce13d80c39@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1454/421509364@github.com>
In-Reply-To: <quicwg/base-drafts/issues/1454@github.com>
References: <quicwg/base-drafts/issues/1454@github.com>
Subject: Re: [quicwg/base-drafts] QPACK could use some examples (#1454)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5b9c43dcd914a_50093f9f312d45b44974d"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: afrind
X-GitHub-Recipient: quic-issues
X-GitHub-Reason: subscribed
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address: quic-issues@ietf.org
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/aT1mBXZBPmy1GYnAxr_GNerJEVQ>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.29
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 14 Sep 2018 23:27:28 -0000
For reference, there is now this repo: https://github.com/qpackers/qifs, which contains example encodings. We could brush this up and have some semi-canonical encodings there. That said, I kind of liked having a few concrete examples in the HPACK specification that you can refer back to. Just reviewing HPACK's examples, it has: 3 Integer encoding examples An example encoding of each instruction A sequence of three requests and one with three responses, each encoded both with and without Huffman For each of the request/response examples it has a block that shows the decoding process - which octets produce which decoder actions (insert, evict, emit, etc). I'm not sure how much of this ground we need to retread in QPACK. Since we use the same integer and Huffman encoding, we could probably skip those. So maybe we should have 1. One String literal example 2. One Example of each instruction (4 encoder, 3 decoder, 5 request) 3. An encoding that does not use the dynamic table/control stream at all 4. An encoding that uses the control stream 5. An encoding that uses the control stream and post-base instructions 6. An encoding that makes a duplicate on the control stream and references it I think 1 and 2 are more to be consistent with what HPACK did and shouldn't really be required. Even so, this might be a long section. I'd like to avoid anything that involves decoder->encoder feedback since it can get hairy pretty quickly. I'm less inclined to include the decoding process diagrams since decoding is pretty simple - it only emits. -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/quicwg/base-drafts/issues/1454#issuecomment-421509364
- Re: [quicwg/base-drafts] QPACK could use some exa… Lucas Pardue
- Re: [quicwg/base-drafts] QPACK could use some exa… Lars Eggert
- Re: [quicwg/base-drafts] QPACK could use some exa… afrind
- Re: [quicwg/base-drafts] QPACK could use some exa… Lucas Pardue
- [quicwg/base-drafts] QPACK could use some example… afrind
- Re: [quicwg/base-drafts] QPACK could use some exa… afrind
- Re: [quicwg/base-drafts] QPACK could use some exa… Mike Bishop
- Re: [quicwg/base-drafts] QPACK could use some exa… afrind