Subject: [quicwg/base-drafts] Allow rate limiting of Version Negotiation (#1891)

From: Martin Thomson <[email-masked]>
Date: Thu, 18 Oct 2018 23:57:59 -0700

As discussed in #1758, we only need to allow rate limiting.

However, the particular example I draw on will become critical if we
adopt the proposed changes to version negotiation in #1755 (or something
like it), because the only packet a server can confidently respond to
with Version Negotiation in that case is the Initial.  If we adopt an
iteration of #1755, then this text would need to be expanded to explain
that also.

Closes #1758.

(I marked this editorial so that we can include it in -16.  I do that on the basis that a server can always feign packet loss, so this isn't really a testable requirement.  That's only slightly dishonest, I think.)
You can view, comment on, or merge this pull request online at:

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

-- Commit Summary --

  * Allow rate limiting of Version Negotiation

-- File Changes --

    M draft-ietf-quic-transport.md (5)

-- Patch Links --

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

---

From: Marten Seemann <[email-masked]>
Date: Fri, 19 Oct 2018 00:49:53 -0700

marten-seemann approved this pull request.

-- 
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/1891#pullrequestreview-166410964

---

From: Mike Bishop <[email-masked]>
Date: Fri, 19 Oct 2018 09:46:37 -0700

I think it's incorrect to mention specific packet types here, since a VN packet implies that the server doesn't speak this version (and therefore doesn't know what packet types exist).  Implying otherwise encourages bugs in which servers wait until they see the packet type which matches v1:Initial, which might not be used in vX.  #1758 caveats this risky text with "If the server has knowledge of the version," with at least acknowledges the problem.

I think a simple permission to rate-limit the number of VN packets sent in response to the same SCID:DCID tuple, or the same 5-tuple, should be sufficient and also less tempting to wrong assumptions.

-- 
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/1891#issuecomment-431426110

---

From: Mike Bishop <[email-masked]>
Date: Fri, 19 Oct 2018 16:52:16 +0000 (UTC)

The method in #1755 assumes a precondition, which is that the server can speak the proposed version (i.e. doesn't need to send VN), but found a mutually- supported preferable version it would like to switch to.  That's a different state than pure VN.

-- 
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/1891#issuecomment-431427598

---

From: Martin Thomson <[email-masked]>
Date: Sun, 21 Oct 2018 15:50:28 -0700

@martinthomson pushed 1 commit.

5cec317  Qualify

-- 
You are receiving this because you are subscribed to this thread.
View it on GitHub:
https://github.com/quicwg/base-drafts/pull/1891/files/533205904a29636f4526357deb1be5568f8290f7..5cec317e527e05810bad5e546c9dcc49dcab7544

---

From: Martin Thomson <[email-masked]>
Date: Sun, 21 Oct 2018 15:51:33 -0700

This is a for instance.  And I think that this will become crucial if we go with #1755.  In that case, a server that might read the Initial and change the version as a result cannot send Version Negotiation in response to 0-RTT packets.

-- 
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/1891#issuecomment-431711125

---

From: Mike Bishop <[email-masked]>
Date: Mon, 22 Oct 2018 15:59:30 +0000 (UTC)

MikeBishop approved this pull request.

Still easier to misunderstand than I'd really like, but I agree it's correct now.

-- 
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/1891#pullrequestreview-166985195

---

From: ianswett <[email-masked]>
Date: Mon, 22 Oct 2018 16:04:03 +0000 (UTC)

ianswett approved this pull request.

-- 
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/1891#pullrequestreview-166987228

---

From: Martin Thomson <[email-masked]>
Date: Mon, 22 Oct 2018 22:24:11 -0700

Merged #1891 into master.

-- 
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/1891#event-1919307534