Subject: [quicwg/base-drafts] Anti-deadlock PTO is spuriously set during 1-RTT (#3502)

From: Benjamin Saunders <[email-masked]>
Date: Thu, 05 Mar 2020 20:11:05 -0800

The recovery draft [states](https://quicwg.org/base-drafts/draft-ietf-quic-recovery.html#section-5.3-4):

> the client MUST set the probe timer if the client has not received an acknowledgement for one of its Handshake or 1-RTT packets.

This is consistent with the pseudocode, in particular `PeerNotAwaitingAddressValidation`.

When the server receives the client's final handshake flight, it discards handshake keys and hence cannot acknowledge it. When the client receives the resulting `HANDSHAKE_DONE`, the handshake is confirmed, but no Handshake or 1-RTT acknowledgements have necessarily been received. This results in a PTO being set even though the client's address has certainly been verified and there are no ack-eliciting packets in flight. As written, the pseudocode would in fact set a PTO for the Initial space at a garbage time.

I think this could be corrected by appending "and has not discarded handshake keys" or "and has not confirmed the handshake" to the language, and adding the analogous clause to the conditions checked in the final statement of `PeerNotAwaitingAddressValidation`.

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

---

From: ianswett <[email-masked]>
Date: Fri, 06 Mar 2020 18:41:40 -0800

I thought that was implied, but implications are bad, so I agree it's best to explicitly state it.

-- 
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/3502#issuecomment-596037000

---

From: Jana Iyengar <[email-masked]>
Date: Tue, 10 Mar 2020 15:28:25 -0700

Closed #3502 via #3503.

-- 
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/3502#event-3116683504