Subject: Re: [quicwg/base-drafts] Client MUST use 1-RTT packets if it reads 1-RTT packets (#2458)

From: Christian Huitema <[email-masked]>
Date: Tue, 07 May 2019 21:09:44 -0700

I think the only verifiable requirement is "must not ack 1RTT packet in 0RTT packet". The server can definitely detect that, and send a connection close with reason PROTOCOL VIOLATION when it happens. This would effectively force the client to switch to 1RTT soon.

-- 
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/2458#issuecomment-490339842

---

From: Mike Bishop <[email-masked]>
Date: Wed, 08 May 2019 16:38:24 +0000 (UTC)

@huitema, exceeding the initial flow control / max streams from the remembered TP's is also detectable.

-- 
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/2458#issuecomment-490559975

---

From: Christian Huitema <[email-masked]>
Date: Wed, 08 May 2019 12:27:25 -0700

@MikeBishop detection with flow control would require special case code in stream processing, as in "check against the current window but if 0-RTT check against the initial window". Could be done, but that would be another wart. Also, in many cases the 0-RTT data sent is well below the initial flow control window, so it will not be a very efficient test.

-- 
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/2458#issuecomment-490618472

---

From: Kazuho Oku <[email-masked]>
Date: Wed, 08 May 2019 16:42:27 -0700

@huitema 
> detection with flow control would require special case code in stream processing, as in "check against the current window but if 0-RTT check against the initial window". Could be done, but that would be another wart.

It's actually something that can be implemented in a clear and concise way. The only thing you need to have are objects representing limits for each type of packets. When processing 0-RTT packets, the logic would refer to the limits declared by TP of the previous connection. When processing 1-RTT packets, the logic would refer to the limits declared by current TP and the max 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/2458#issuecomment-490690456