Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

receivers cannot enforce datagram padding (though they may drop) #4254

Merged

Conversation

kazuho
Copy link
Member

@kazuho kazuho commented Oct 20, 2020

Closes #4253, by adding generic "MUST NOT close, MAY discard packets" rule.

@marten-seemann
Copy link
Contributor

#4253?

@@ -4085,6 +4085,13 @@ UDP datagrams MUST NOT be fragmented at the IP layer. In IPv4
({{!IPv4=RFC0791}}), the DF bit MUST be set if possible, to prevent
fragmentation on the path.

Even though datagrams with certain properties are required to be padded, the
size of the datagram is not authenticated, and endpoints might send coalesced
packets after the handshake is confirmed (see {{packet-coalesce}}). Therefore,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once the handshake is confirmed, Handshake keys are dropped. From that point on, it's not possible to send coalesced packets any more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once the handshake is confirmed, Handshake keys are dropped. From that point on, it's not possible to send coalesced packets any more.

That's not true. Use of handshake packets is explicitly allowed post-handshake; see
https://quicwg.org/base-drafts/draft-ietf-quic-transport.html#name-pmtu-probes-containing-sour.

The reason the reference currently points to packet-coalesce is because it's more generic (and also contains reference to post-handshake PMTUD), but the reference can be specific if that's others' preference.

Copy link
Member

@martinthomson martinthomson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems sensible.

draft-ietf-quic-transport.md Outdated Show resolved Hide resolved
draft-ietf-quic-transport.md Outdated Show resolved Hide resolved
draft-ietf-quic-transport.md Outdated Show resolved Hide resolved
draft-ietf-quic-transport.md Outdated Show resolved Hide resolved
kazuho and others added 4 commits October 20, 2020 17:09
Co-authored-by: Martin Thomson <mt@lowentropy.net>
Co-authored-by: Martin Thomson <mt@lowentropy.net>
Co-authored-by: Martin Thomson <mt@lowentropy.net>
draft-ietf-quic-transport.md Outdated Show resolved Hide resolved
Co-authored-by: ianswett <ianswett@users.noreply.github.com>
@janaiyengar janaiyengar merged commit 8a665eb into quicwg:master Oct 20, 2020
@janaiyengar
Copy link
Contributor

@larseggert @LPardue: Merging this, since the plan is to do consensus as part of LC.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Endpoints cannot verify padding
5 participants