Re: [quicwg/base-drafts] Clean up text on Maximum Table Size. (#2115)
Mike Bishop <notifications@github.com> Tue, 18 December 2018 22:50 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 A1608130F29 for <quic-issues@ietfa.amsl.com>; Tue, 18 Dec 2018 14:50:07 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.564
X-Spam-Level:
X-Spam-Status: No, score=-5.564 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.065, 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, URIBL_BLOCKED=0.001, URIBL_DBL_SPAM=2.5] 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 YOT0oHfN_5Iv for <quic-issues@ietfa.amsl.com>; Tue, 18 Dec 2018 14:50:05 -0800 (PST)
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 25A8812D7EA for <quic-issues@ietf.org>; Tue, 18 Dec 2018 14:50:05 -0800 (PST)
Date: Tue, 18 Dec 2018 14:50:04 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; s=pf2014; t=1545173404; bh=1zvIL5XzpDx+Nfu4V7AHn/NVNWMTgofyW4gj65HrWio=; h=Date:From:Reply-To:To:Cc:In-Reply-To:References:Subject:List-ID: List-Archive:List-Post:List-Unsubscribe:From; b=dcjuNaJ7D2xq6fpzOVRTXj03PMFsU/LgtxQmdw8uclxpVC451ihhM1hR3r4z6vjQk i913A2r0EaFGOyOE6CdLiVfkvHcf4/SEkUZSzXts46TMvEPMAE8bNckpkNgyf0MUB/ nv0DY6Tm6RT7zco2C4exycMoltIDPH0z4igMMTmM=
From: Mike Bishop <notifications@github.com>
Reply-To: quicwg/base-drafts <reply+0166e4ab8e57d3daaef1b3417e53b4c05b108be854fe897e92cf0000000118313b9c92a169ce173d8649@reply.github.com>
To: quicwg/base-drafts <base-drafts@noreply.github.com>
Cc: Subscribed <subscribed@noreply.github.com>
Message-ID: <quicwg/base-drafts/pull/2115/review/186314467@github.com>
In-Reply-To: <quicwg/base-drafts/pull/2115@github.com>
References: <quicwg/base-drafts/pull/2115@github.com>
Subject: Re: [quicwg/base-drafts] Clean up text on Maximum Table Size. (#2115)
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_5c19799c21cac_74ca3f86920d45b41203d6"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: MikeBishop
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/-Un6hNMS8Wu3L5ao7L5PTgKaUFg>
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 Dec 2018 22:50:07 -0000
MikeBishop requested changes on this pull request. I think this is a good improvement, but a few things need fixing before it merges. Also, if you want GitHub to give you credit for the commits, the `user.email` needs to be an e-mail that GitHub has associated with your user account (verified or not). > -The initial maximum size is determined by the corresponding setting when HTTP -requests or responses are first permitted to be sent. For clients using 0-RTT -data in HTTP/3, the table size is the remembered value of the setting, even if -the server later specifies a larger maximum in its SETTINGS frame. For HTTP/3 -servers and HTTP/3 clients when 0-RTT is not attempted or is rejected, the -initial maximum table size is the value of the setting in the peer's SETTINGS -frame. +The initial dynamic table capacity is the value of the maximum dynamic table +capacity when HTTP requests or responses are first permitted to be sent. For +HTTP/3 servers and HTTP/3 clients when 0-RTT is not attempted or is rejected, +the initial maximum table capacity is zero. For clients using 0-RTT data in Good catch! I like your proposed text, and this reflects the agreement we reached on #1530. > -requests or responses are first permitted to be sent. For clients using 0-RTT -data in HTTP/3, the table size is the remembered value of the setting, even if -the server later specifies a larger maximum in its SETTINGS frame. For HTTP/3 -servers and HTTP/3 clients when 0-RTT is not attempted or is rejected, the -initial maximum table size is the value of the setting in the peer's SETTINGS -frame. +The initial dynamic table capacity is the value of the maximum dynamic table +capacity when HTTP requests or responses are first permitted to be sent. For +HTTP/3 servers and HTTP/3 clients when 0-RTT is not attempted or is rejected, +the initial maximum table capacity is zero. For clients using 0-RTT data in +HTTP/3, the initial table capacity is the remembered value of the setting, even +if the server later specifies a different maximum dynamic table capacity in its +SETTINGS frame. It is not an error for the SETTINGS frame to contain a +SETTINGS_MAXIMUM_DYNAMIC_TABLE_CAPACITY value lower than the initial table +capacity on a 0-RTT connection; the maximum dynamic table capacity only limits +subsequent table capacity changes. However, if an endpoint receives a HTTP/3 in general bars reducing the value of a setting while accepting 0-RTT, so (1) would be more consistent. From 4.2.5.2 in H3: > If 0-RTT data is accepted by the server, its SETTINGS frame MUST NOT reduce any limits or alter any values that might be violated by the client with its 0-RTT data. > -The new maximum size MUST be lower than or equal to the limit determined by the -protocol using QPACK. A value that exceeds this limit MUST be treated as a -connection error of type `HTTP_QPACK_ENCODER_STREAM_ERROR`. In HTTP/3, this -limit is the value of the SETTINGS_HEADER_TABLE_SIZE parameter (see -{{configuration}}) received from the decoder. +The new capacity MUST be lower than or equal to the limit described in +{{maximum-dynamic-table-capacity}}. On 1-RTT HTTP/3 connections, this limit is True for all connections -- the setting has an initial value of (0 , previous) and then gets updated when the SETTINGS frame is received. > @@ -780,9 +781,7 @@ end of a stream, it generates a Stream Cancellation instruction on the decoder stream. Similarly, when an endpoint abandons reading of a stream it needs to signal this using the Stream Cancellation instruction. This signals to the encoder that all references to the dynamic table on that stream are no longer -outstanding. A decoder with a maximum dynamic table size equal to zero MAY omit -sending Stream Cancellations, because the encoder cannot have any dynamic table -references. ...and therefore, we still want this text. > @@ -1261,7 +1272,8 @@ Substantial editorial reorganization; no technical changes. - Largest Reference encoded modulo MaxEntries (#1763) - New Static Table (#1355) - Table Size Update with Insert Count=0 is a connection error (#1762) -- Stream Cancellations are optional when SETTINGS_HEADER_TABLE_SIZE=0 (#1761) +- Stream Cancellations are optional when + SETTINGS_MAXIMUM_DYNAMIC_TABLE_CAPACITY=0 (#1761) Rather than retconning the changelog, it's probably more appropriate to add a current changelog entry that SETTINGS_HEADER_TABLE_SIZE was renamed. -- 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/pull/2115#pullrequestreview-186314467
- [quicwg/base-drafts] Clean up text on Maximum Tab… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Martin Thomson
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Martin Thomson
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… Bence Béky
- Re: [quicwg/base-drafts] Clean up text on Maximum… afrind
- Re: [quicwg/base-drafts] Clean up text on Maximum… Mike Bishop
- Re: [quicwg/base-drafts] Clean up text on Maximum… Mike Bishop
- Re: [quicwg/base-drafts] Clean up text on Maximum… Martin Thomson
- Re: [quicwg/base-drafts] Introduce terms dynamic … Martin Thomson
- Re: [quicwg/base-drafts] Introduce terms dynamic … Kazuho Oku
- Re: [quicwg/base-drafts] Introduce terms dynamic … Mike Bishop
- Re: [quicwg/base-drafts] Introduce terms dynamic … afrind
- Re: [quicwg/base-drafts] Introduce terms dynamic … afrind
- Re: [quicwg/base-drafts] Introduce terms dynamic … afrind