Subject: [quicwg/base-drafts] Limit what Version Negotiation can be sent for (#570)

From: Martin Thomson <[email-masked]>
Date: Sat, 03 Jun 2017 18:52:43 -0700

In #568, I noted that Version Negotiation doesn't really need to be sent in response to anything other than a client initial packet.  Those currently have two properties that we could hook into if we wanted to fix those properties across all QUIC versions: the packet type octet, and the size.  Either or both of those could be used as a way to filter non-QUIC noise from QUIC so that servers don't generate Version Negotiation unnecessarily.

I don't think that doing this represents a particularly big commitment, but we should be careful.  The minimum size seems like it might be a constant across versions.  The packet type might be a little rough, particularly in light of techniques like that suggested in #311.

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

---

From: MikkelFJ <[email-masked]>
Date: Sat, 03 Jun 2017 23:35:25 -0700

Initially it does seem advantageous to reject small packets serverside. However, forcing a minimum initial packet size across all versions could be problematic - especially for non-linear special purpose versions. For example, resource constrainted battery powered networks.

If a reasonable checksum is added to all clear text, this would serve the same purpose. Constrained devices with special versions may reject large packets and packets with invalid checksums. Ordinary servers that require large initial packets may reject on small packets and on invalid checksums.

-- 
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/570#issuecomment-306021667

---

From: Ryan Hamilton <[email-masked]>
Date: Sun, 04 Jun 2017 07:19:04 -0700

On Sat, Jun 3, 2017 at 11:35 PM, MikkelFJ <[email-masked]> wrote:

> Initially it does seem advantageous to reject small packets serverside.
> However, forcing a minimum initial packet size across all versions could be
> problematic - especially for non-linear special purpose versions. For
> example, resource constrainted battery powered networks.
>
> If a reasonable checksum is added to all clear text, this would serve the
> same purpose.
>
​Of course, that requires the checksum to be version independent, right?​

> Constrained devices with special versions may reject large packets and
> packets with invalid checksums. Ordinary servers that require large initial
> packets may reject on small packets and on invalid checksums.
>
> —
> Reply to this email directly, view it on GitHub
> <https://github.com/quicwg/base-drafts/issues/570#issuecomment-306021667>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ASp6ypPSy-fczP-lJeah5vhRCXnGRukQks5sAlAtgaJpZM4NvP_m>
> .
>

-- 
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/570#issuecomment-306042817

---

From: MikkelFJ <[email-masked]>
Date: Sun, 04 Jun 2017 07:32:40 -0700

> ​Of course, that requires the checksum to be version independent, right?​

I probably is convenient to have it version independent, but since the initial packet has a version listed, it only requires that the server knows enough of the version to accept the checksum, or alternatively for the server to test a few known algorithms as long as the cost of doing so is not prohibitive.

-- 
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/570#issuecomment-306043618