Subject: [quicwg/base-drafts] Mandate allowing peer to create enough unidirectional streams for HTTP and QPACK (#2762)

From: Alessandro Ghedini <[email-masked]>
Date: Fri, 31 May 2019 11:14:32 -0700

As per https://github.com/quicwg/base-drafts/issues/2100#issuecomment-495233158 HTTP MUST allow enough uni streams credits for mandatory streams (control, QPACK encoder/decoder, other mandatory extensions) but is not required to grant additional credits if the peer wastes them.

---

This is the companion PR to #2529 updating the requirements in the HTTP draft, and together they fix #2100. I created a separate PR since it touches -http instead of -qpack, so it doesn't get bloacked by the QPACK refactoring.
You can view, comment on, or merge this pull request online at:

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

-- Commit Summary --

  * Mandate allowing peer to create enough unidirectional streams for HTTP and QPACK

-- File Changes --

    M draft-ietf-quic-http.md (18)

-- Patch Links --

https://github.com/quicwg/base-drafts/pull/2762.patch
https://github.com/quicwg/base-drafts/pull/2762.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/2762

---

From: afrind <[email-masked]>
Date: Fri, 31 May 2019 12:03:06 -0700

afrind approved this pull request.

> @@ -912,10 +912,20 @@ Endpoints that set low values for the QUIC transport parameters
 chance that the remote peer reaches the limit early and becomes blocked. In
 particular, the value chosen for `initial_max_uni_streams` should consider that
 remote peers may wish to exercise reserved stream behaviour ({{stream-grease}}).
-To reduce the likelihood of blocking, both clients and servers SHOULD send a
-value of three or greater for the QUIC transport parameter
-`initial_max_uni_streams`, and a value of 1,024 or greater for the QUIC
-transport parameter `initial_max_stream_data_uni`.
+To reduce the likelihood of blocking, both clients and servers MUST allow
+the peer to create one unidirectional stream for the HTTP control stream plus
+the number of unidictional streams required by mandatory extensions (such as
+QPACK), by setting an appropriate value for the QUIC transport parameter
+`initial_max_uni_streams` (three being the minimum value required for the base
+HTTP/3 protocol and QPACK), and SHOULD use a value of 1,024 or greater for the
+QUIC transport parameter `initial_max_stream_data_uni`.
+
+Note that an endpoint is not required to grant additional credits to create more
+unidirectional streams if its peer consumes all the initial credits before
+creating the key unidirectional streams. Endpoints SHOULD create the HTTP

maybe 'critical' instead of 'key'?

-- 
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/2762#pullrequestreview-244472076

---

From: Lucas Pardue <[email-masked]>
Date: Fri, 31 May 2019 12:15:25 -0700

LPardue commented on this pull request.

```suggestion
the number of unidirectional streams required by mandatory extensions (such as
```

-- 
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/2762#pullrequestreview-244476691

---

From: Alessandro Ghedini <[email-masked]>
Date: Fri, 31 May 2019 13:21:51 -0700

@ghedo pushed 1 commit.

bb7e09e3e1b5325ac167b6f3f19e6e10b0c23734  Add review fixes

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/2762/files/0c86640251d2c9726db7a9e5b486b57ade141dd9..bb7e09e3e1b5325ac167b6f3f19e6e10b0c23734

---

From: Alessandro Ghedini <[email-masked]>
Date: Fri, 31 May 2019 20:22:11 +0000 (UTC)

ghedo commented on this pull request.

Yes, that's better, fixed.

-- 
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/2762#discussion_r289538353

---

From: Alessandro Ghedini <[email-masked]>
Date: Fri, 31 May 2019 13:22:26 -0700

Oooops, fixed, thanks.

-- 
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/2762#discussion_r289538429