Subject: [quicwg/base-drafts] Handshake failure with Retry and multiple Initial packets (#1085)

From: Martin Thomson <[email-masked]>
Date: Mon, 29 Jan 2018 23:50:21 +0000 (UTC)

Initial 1 is sent twice.  The server generates a Retry for the first, then a Handshake for the second (after forgetting the first).  The client processes the Retry, then gets really confused about the Handshake packet and dumps the connection.

What, if anything, do we want to do about that?

This assumes that the connection ID the server uses is the same for both, but all that takes is the server echoing the connection ID chosen by the client.

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

---

From: Mike Bishop <[email-masked]>
Date: Mon, 29 Jan 2018 15:53:10 -0800

Inclined to do nothing -- if the server decided the Initial wasn't acceptable, it should remain unacceptable.  The server changing its mind doesn't seem like a common enough or valid enough case to require much protocol effort.

-- 
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/1085#issuecomment-361427808

---

From: Martin Thomson <[email-masked]>
Date: Mon, 29 Jan 2018 23:55:24 +0000 (UTC)

It's definitely valid.  Though doing nothing might be OK.

-- 
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/1085#issuecomment-361428222

---

From: Mike Bishop <[email-masked]>
Date: Mon, 29 Jan 2018 16:19:55 -0800

What's the case for it being valid?  Given that the two ClientHellos can't be different, I would expect the reason for wanting to Retry would be that the address validation token is stale/doesn't match your address, which is something that cannot improve with time.

-- 
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/1085#issuecomment-361432958

---

From: Martin Thomson <[email-masked]>
Date: Tue, 30 Jan 2018 00:48:33 +0000 (UTC)

A server might have a budget for accepting unvalidated ClientHellos.  As long as it doesn't send a massive ServerHello flight, it can do that and avoid the round trip.  But you want to limit the number of those that you accept for load reasons or for denial of service reasons.

-- 
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/1085#issuecomment-361438310