Subject: [quicwg/base-drafts] Push Stream Header duplication (#1099)

From: Lucas Pardue <[email-masked]>
Date: Tue, 06 Feb 2018 03:31:12 -0800

I've been reading HTTP/QUIC section 3.4 on Server Push again. 

>    Each Push ID MUST only be used once in a push stream header.  If a
>    push stream header includes a Push ID that was used in another push
>    stream header, the client MUST treat this as a connection error of
>    type HTTP_DUPLICATE_PUSH.  The same Push ID can be used in multiple
>    PUSH_PROMISE frames (see Section 4.2.6).

I'd like to clarify if "another push stream header" means:

1) A STREAM frame received on a different stream ID to the original stream ID.
2) A duplicate STREAM frame received on the same original stream ID.

I think it's option 1. If its option 2 then I can see issues with receiving duplicate STREAM frames

-- 
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/issues/1099

---

From: Mike Bishop <[email-masked]>
Date: Tue, 06 Feb 2018 17:29:51 +0000 (UTC)

(1), but I would hesitate to use that language.  The HTTP layer has no visibility into QUIC STREAM frames -- it just sees an ordered bytestream of data.  The push header is the first bytes read off of each unidirectional stream, so for a Push ID to be in two push stream headers, it would have to be on two different streams.

-- 
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/issues/1099#issuecomment-363500211

---

From: Lucas Pardue <[email-masked]>
Date: Tue, 06 Feb 2018 09:37:11 -0800

Ahh ok so where I'm confusing myself is around that abstraction/API.

Duplication of STREAM frames would be resolved by the QUIC transport, all the HTTP layer would see is the singular occurrence of the stream header as part of the byte stream. 

Is that right?

-- 
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/issues/1099#issuecomment-363502557

---

From: Mike Bishop <[email-masked]>
Date: Tue, 06 Feb 2018 10:12:54 -0800

Yep.  Do you think that needs text, or is this just personal clarification?

-- 
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/issues/1099#issuecomment-363513868

---

From: Lucas Pardue <[email-masked]>
Date: Tue, 06 Feb 2018 10:49:31 -0800

Definitely no text in the push section. I think section 3 does well at
capturing the bytestream description. It doesn't mentioned STREAM frame
duplication but meh.

Perhaps where it says "exposing the data contained within as a reliable
byte stream to the application" could be tightened to say this application
mapping for HTTP/QUIC unframing. Or something to that effect.

On 6 Feb 2018 18:12, "Mike Bishop" <[email-masked]> wrote:

-- 
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/issues/1099#issuecomment-363525049

---

From: Lucas Pardue <[email-masked]>
Date: Thu, 08 Feb 2018 15:14:45 -0800

Closed #1099.

-- 
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/issues/1099#event-1465682829

---

From: Lucas Pardue <[email-masked]>
Date: Thu, 08 Feb 2018 23:14:45 +0000 (UTC)

Lets close this because I don't think there is any real issue.

-- 
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/issues/1099#issuecomment-364281381