From 1fc3c3e52b7f56e169c64edb0fa338f2a529866e Mon Sep 17 00:00:00 2001 From: Martin Thomson Date: Mon, 7 Jan 2019 12:11:17 +1100 Subject: [PATCH] One Retry/VN per UDP datagram This keeps things simple. Closes #2259. --- draft-ietf-quic-transport.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/draft-ietf-quic-transport.md b/draft-ietf-quic-transport.md index fceb18be5c..1232e09d4c 100644 --- a/draft-ietf-quic-transport.md +++ b/draft-ietf-quic-transport.md @@ -3630,6 +3630,9 @@ The Version Negotiation packet does not include the Packet Number and Length fields present in other packets that use the long header form. Consequently, a Version Negotiation packet consumes an entire UDP datagram. +A server MUST NOT send more than one Version Negotiation packet in response to a +single UDP datagram. + See {{version-negotiation}} for a description of the version negotiation process. @@ -3872,7 +3875,9 @@ Destination Connection ID of subsequent packets that it sends. A server MAY send Retry packets in response to Initial and 0-RTT packets. A server can either discard or buffer 0-RTT packets that it receives. A server -can send multiple Retry packets as it receives Initial or 0-RTT packets. +can send multiple Retry packets as it receives Initial or 0-RTT packets. A +server MUST NOT send more than one Retry packet in response to a single UDP +datagram. A client MUST accept and process at most one Retry packet for each connection attempt. After the client has received and processed an Initial or Retry packet