Subject: [quicwg/base-drafts] Placeholders for PRIORITY (#1422)

From: Mike Bishop <[email-masked]>
Date: Wed, 06 Jun 2018 20:18:43 +0000 (UTC)

**DO NOT MERGE**:  Dependent on #1398.  Fixes #441, fixes #1421.

Primarily for illustrative purposes, this is what I envision the addition of placeholders to the PRIORITY scheme would look like.  Key points:

- Flags for Stream ID vs. Push ID are now a two-bit type field
- Filled in the fourth value as "root of the tree," fixing #1421, since Stream 0 is now a valid request stream
- Server has a setting to declare how many placeholders you get
- Client can use placeholders 0..N-1
- Server can prune closed streams aggressively (after 2 RTT to ensure client knows they're closed)
You can view, comment on, or merge this pull request online at:

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

-- Commit Summary --

  * Placeholder, first pass
  * Clean up types
  * 0 is a stream now

-- File Changes --

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

-- Patch Links --

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

---

From: Mike Bishop <[email-masked]>
Date: Wed, 06 Jun 2018 13:38:40 -0700

@MikeBishop pushed 1 commit.

8169543  Word order

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1422/files/c236d1b2fcbc34df59a46a077ec5c5f40fe5eeb9..816954348632ec64e91946351af3512da2ce498e

---

From: Martin Thomson <[email-masked]>
Date: Fri, 08 Jun 2018 06:39:25 -0700

martinthomson commented on this pull request.

This looks broadly OK, but I wonder if we can't exploit the properties of stream identifiers to our advantage here.

Stream ID modulo 4 of a request stream will always be 0.  That leaves 3/4 of the entire space of identifiers available to us.  Maybe we could drop the dependency and priority types and encode the type in the last octets of the "stream ID":

* 00 is a request stream (it happens to also match the stream ID)
* 11 is a push stream, identified by push ID shifted left by 2 (this might result in the push ID matching the push stream ID, which might be confusing, so we might choose not to use this)
* 01 is a placeholder
* 10 is the root (and we would reserve/prohibit values other than 0 for the remaining bits of the identifier)

Then the only bit remaining in the flags is the Exclusive bit.

You could also use a flag for the root and omit the dependency identifier in that case, leaving the odd single-valued encoding untouched.  It seems like we'd have plenty of space in the flags if that was what was wanted.

-- 
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/1422#pullrequestreview-127164641

---

From: Mike Bishop <[email-masked]>
Date: Mon, 11 Jun 2018 10:50:55 -0700

I'd prefer not to do that because HTTP/QUIC doesn't currently have a hard dependency on QUICv1, and the properties of the Stream ID space could easily change across versions.

-- 
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/1422#issuecomment-396328595

---

From: Mike Bishop <[email-masked]>
Date: Mon, 11 Jun 2018 14:21:17 -0700

06fcf4d  Multiple settings

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1422/files/816954348632ec64e91946351af3512da2ce498e..06fcf4d56fa0fc6ba613e95cc5438c0b73a31a70

---

From: Martin Thomson <[email-masked]>
Date: Tue, 26 Jun 2018 17:09:08 -0700

@MikeBishop, if you want to get this in for -13, you have a little bit of time left.

-- 
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/1422#issuecomment-400500953

---

From: Mike Bishop <[email-masked]>
Date: Tue, 26 Jun 2018 21:21:53 -0700

Since I'd been asked to present about the issue in Montreal, I was planning to hold it for that discussion.  I don't expect it to change, though, so... why not?

-- 
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/1422#issuecomment-400538272

---

From: Mike Bishop <[email-masked]>
Date: Tue, 26 Jun 2018 21:22:06 -0700

Merged #1422.

-- 
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/1422#event-1702952628