diff --git a/draft-ietf-quic-transport.md b/draft-ietf-quic-transport.md index 104e711cc3..a001369083 100644 --- a/draft-ietf-quic-transport.md +++ b/draft-ietf-quic-transport.md @@ -1343,16 +1343,15 @@ MUST NOT be used outside of draft implementations. ## Using Reserved Versions For a server to use a new version in the future, clients need to correctly -handle unsupported versions. To help ensure this, a server SHOULD include a -version that is reserved for forcing version negotiation (0x?a?a?a?a as defined -in {{versions}}) when generating a Version Negotiation packet. - -The design of version negotiation permits a server to avoid maintaining state -for packets that it rejects in this fashion. - -A client MAY send a packet using a version that is reserved for forcing version -negotiation. This can be used to solicit a list of supported versions from a -server. +handle unsupported versions. Some version numbers (0x?a?a?a?a as defined in +{{versions}}) are reserved for inclusion in fields that contain version +numbers. + +Endpoints MAY add reserved versions to any field where unknown or unsupported +versions are ignored to test that a peer correctly ignores the value. For +instance, an endpoint could include a reserved version in a Version Negotiation +packet; see {{packet-version}}. Endpoints MAY send packets with a reserved +version to test that a peer correctly discards the packet. # Cryptographic and Transport Handshake {#handshake}