[quicwg/base-drafts] Initial header table size of QPACK (#1767)

Kazuho Oku <notifications@github.com> Tue, 18 September 2018 19:15 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 []) by ietfa.amsl.com (Postfix) with ESMTP id A1CAA130EC6 for <quic-issues@ietfa.amsl.com>; Tue, 18 Sep 2018 12:15:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -8.01
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 ([]) by localhost (ietfa.amsl.com []) (amavisd-new, port 10024) with ESMTP id 0tnCZFwPN-lQ for <quic-issues@ietfa.amsl.com>; Tue, 18 Sep 2018 12:15:09 -0700 (PDT)
Received: from out-3.smtp.github.com (out-3.smtp.github.com []) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 05882130EE3 for <quic-issues@ietf.org>; Tue, 18 Sep 2018 12:15:08 -0700 (PDT)
Date: Tue, 18 Sep 2018 12:15:07 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1537298107; bh=ME2vgjcFFOjz9ssvOiEX2c0zITdEheTXoyStzT2JILw=; h=Date:From:Reply-To:To:Cc:Subject:List-ID:List-Archive:List-Post: List-Unsubscribe:From; b=ue9a3De78NYaWWpqpR40dDNee0ctdSAg2Sn0eZCEFH8mGUSflMiV2W2I88LLGcnCX 3ix2GDxayVn3nKQ02S3wEFQjnoTDQHb5NM8kH9cUTMm6QmhbGmDM4tnVcuaX9tfZoP /PnweSo/NiQMsGhq9Y7kqB1EVxbeDt/FAVsibRzI=
From: Kazuho Oku <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab61047a812e347efe2f34e78aa1819870f0b452ff92cf0000000117b910bb92a169ce158b312f@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/issues/1767@github.com>
Subject: [quicwg/base-drafts] Initial header table size of QPACK (#1767)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5ba14ebbd2fe0_24be3fd5db2d45c4669bc"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: kazuho
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/37L-XXHJjlJvk5oY9yqVmgXVHoI>
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: Tue, 18 Sep 2018 19:15:11 -0000

Unlike HPACK (quoted below), QPACK does not require an encoder to emit Dynamic Table Size Update as its first instruction.

> This dynamic table size update MUST occur at the beginning of the first header block following the change to the dynamic table size. In HTTP/2, this follows a settings acknowledgment (see Section 6.5.3 of [HTTP2]).
> [RFC 7541; section 4.2](https://httpwg.org/specs/rfc7541.html#maximum.table.size)

This means that the peers might disagree on the table size, unless we require the encoder to set the table size to the value advertised by the peers SETTINGS frame. But I wouldn't assume that we would want to require that; for example some encoders might want to stick to 4KB even when the peer's SETTINGS frame says the table can be as large as 1MB.

Considering these aspects, I think that we should require the QPACK encoder to send Dynamic Table Size Update as its first instruction, at least when the SETTING frame advertises a non-default value.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub: