Subject: [quicwg/base-drafts] Initial table size is the maximum permitted when table is first usable (#1642)

From: Mike Bishop <[email-masked]>
Date: Wed, 08 Aug 2018 16:23:44 -0700

Fixes #1530.

Makes the initial size the applicable limit when the encoder is first usable.  For 0-RTT on clients, that's the remembered value regardless of later SETTINGS frames (and per #1641, that value can't be reduced but might be increased later).  For 1-RTT clients and servers always, that's just the value in the SETTINGS frame.

Text feels rather ugly; wordsmithing suggestions gratefully accepted.

Note that this is one more reason the server can't do anything until it has seen the client's SETTINGS frame, but that's a prohibition we already have.
You can view, comment on, or merge this pull request online at:

  https://github.com/quicwg/base-drafts/pull/1642

-- Commit Summary --

  * Initial table size is the maximum permitted when table is first usable

-- File Changes --

    M draft-ietf-quic-qpack.md (10)

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/1642.patch
https://github.com/quicwg/base-drafts/pull/1642.diff

-- 
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/1642

---

From: Martin Thomson <[email-masked]>
Date: Wed, 08 Aug 2018 16:44:50 -0700

martinthomson approved this pull request.

> @@ -127,6 +127,16 @@ The dynamic table consists of a list of header fields maintained in first-in,
 first-out order.  The dynamic table is initially empty.  Entries are added by
 instructions on the encoder stream (see {{encoder-stream}}).
 
+The maximum size of the dynamic table can be modified by the encoder, subject to
+a decoder-controlled limit (see {{configuration}} and {{size-update}}).  The
+initial maximum size is the applicable value of this limit when HTTP requests or
+responses are first permitted to be sent. For clients using 0-RTT data in
+HTTP/QUIC, this means that the table size is the remembered value of
+`SETTINGS_HEADER_TABLE_SIZE`, even if the server later specifies a larger
+maximum in its SETTINGS frame.  For HTTP/QUIC servers and HTTP/QUIC clients not
+using 0-RTT data, this means that the initial maximum table size is the value of

Rather than using here, you might want to say something like "when 0-RTT is not attempted, or it is rejected".

> @@ -127,6 +127,16 @@ The dynamic table consists of a list of header fields maintained in first-in,
 first-out order.  The dynamic table is initially empty.  Entries are added by
 instructions on the encoder stream (see {{encoder-stream}}).
 
+The maximum size of the dynamic table can be modified by the encoder, subject to
+a decoder-controlled limit (see {{configuration}} and {{size-update}}).  The
+initial maximum size is the applicable value of this limit when HTTP requests or
+responses are first permitted to be sent. For clients using 0-RTT data in

It might be enough to say that "the initial maximum is determined by the corresponding setting".

-- 
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/1642#pullrequestreview-144648159

---

From: Mike Bishop <[email-masked]>
Date: Wed, 08 Aug 2018 17:34:21 -0700

@MikeBishop pushed 1 commit.

43eb60a  Some Martin tweaks

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1642/files/4eecca164f62b3a6060958d18d60947517803ad3..43eb60a1c152b90cd14c5a068ce691a038fa0c7d

---

From: Dmitri Tikhonov <[email-masked]>
Date: Thu, 09 Aug 2018 06:30:26 -0700

dtikhonov approved this pull request.

-- 
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/1642#pullrequestreview-144836005

---

From: afrind <[email-masked]>
Date: Tue, 21 Aug 2018 11:48:21 -0700

afrind commented on this pull request.

+The maximum size of the dynamic table can be modified by the encoder, subject to
+a decoder-controlled limit (see {{configuration}} and {{size-update}}).  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/QUIC, this means that the table size is the remembered value of the

s/this means that//

+The maximum size of the dynamic table can be modified by the encoder, subject to
+a decoder-controlled limit (see {{configuration}} and {{size-update}}).  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/QUIC, this means that 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/QUIC servers and HTTP/QUIC clients when 0-RTT is not attempted
+or is rejected, this means that the initial maximum table size is the value of

and here

-- 
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/1642#pullrequestreview-148198969

---

From: Mike Bishop <[email-masked]>
Date: Wed, 22 Aug 2018 07:57:17 -0700

7a13745  this means that you remove words

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1642/files/43eb60a1c152b90cd14c5a068ce691a038fa0c7d..7a13745d2c7d96c121da8bbf7a9a69fb5ffea2c0

---

From: afrind <[email-masked]>
Date: Wed, 22 Aug 2018 08:42:02 -0700

Merged #1642 into master.

-- 
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/1642#event-1803007635