From 27ff97756f68c02568320726c69948bfe439e828 Mon Sep 17 00:00:00 2001 From: Kazuho Oku Date: Fri, 9 Oct 2020 12:20:34 +0900 Subject: [PATCH] Drop "unless the client address is validated", merging the requirements. As @marten-seeman points out, a server might have a validated path with MTU less than 1200 bytes when it uses Retry. --- draft-ietf-quic-transport.md | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/draft-ietf-quic-transport.md b/draft-ietf-quic-transport.md index 3ef1e92a28..8d003122bc 100644 --- a/draft-ietf-quic-transport.md +++ b/draft-ietf-quic-transport.md @@ -1920,10 +1920,12 @@ that are uniquely attributed to a single connection. This includes datagrams that contain packets that are successfully processed and datagrams that contain packets that are all discarded. -Clients MUST ensure that UDP datagrams containing Initial packets have UDP -payloads of at least 1200 bytes, adding PADDING frames as necessary. -A client that sends padded datagrams allows the server to -send more data prior to completing address validation. +Clients MUST and servers SHOULD ensure that UDP datagrams containing Initial +packets have UDP payloads of at least 1200 bytes, adding PADDING frames as +necessary. A client that sends padded datagrams allows the server to send more +data prior to completing address validation. Endpoints using UDP datagrams of +at least 1200 bytes ensures that the handshake progresses only if the path is +capable of handling QUIC traffic; see {{packet-size}}. Loss of an Initial or Handshake packet from the server can cause a deadlock if the client does not send additional Initial or Handshake packets. A deadlock @@ -1943,11 +1945,6 @@ the client during connection establishment with a Retry packet (see {{validate-retry}}) or in a previous connection using the NEW_TOKEN frame (see {{validate-future}}). -Until the client address is validated, servers SHOULD ensure that UDP datagrams -containing Initial packets have UDP payloads of at least 1200 bytes. Doing so -ensures that the handshake progresses only if the path is capable of handling -QUIC traffic; see {{packet-size}}. - In addition to sending limits imposed prior to address validation, servers are also constrained in what they can send by the limits set by the congestion controller. Clients are only constrained by the congestion controller.