target = "https://www.rfc-editor.org/rfc/rfc9000#section-8.2.2" # 8.2.2. Path Validation Responses # # On receiving a PATH_CHALLENGE frame, an endpoint MUST respond by # echoing the data contained in the PATH_CHALLENGE frame in a # PATH_RESPONSE frame. An endpoint MUST NOT delay transmission of a # packet containing a PATH_RESPONSE frame unless constrained by # congestion control. # # A PATH_RESPONSE frame MUST be sent on the network path where the # PATH_CHALLENGE frame was received. This ensures that path validation # by a peer only succeeds if the path is functional in both directions. # This requirement MUST NOT be enforced by the endpoint that initiates # path validation, as that would enable an attack on migration; see # Section 9.3.3. # # An endpoint MUST expand datagrams that contain a PATH_RESPONSE frame # to at least the smallest allowed maximum datagram size of 1200 bytes. # This verifies that the path is able to carry datagrams of this size # in both directions. However, an endpoint MUST NOT expand the # datagram containing the PATH_RESPONSE if the resulting data exceeds # the anti-amplification limit. This is expected to only occur if the # received PATH_CHALLENGE was not sent in an expanded datagram. # # An endpoint MUST NOT send more than one PATH_RESPONSE frame in # response to one PATH_CHALLENGE frame; see Section 13.3. The peer is # expected to send more PATH_CHALLENGE frames as necessary to evoke # additional PATH_RESPONSE frames. [[spec]] level = "MUST" quote = ''' On receiving a PATH_CHALLENGE frame, an endpoint MUST respond by echoing the data contained in the PATH_CHALLENGE frame in a PATH_RESPONSE frame. ''' [[spec]] level = "MUST" quote = ''' An endpoint MUST NOT delay transmission of a packet containing a PATH_RESPONSE frame unless constrained by congestion control. ''' [[spec]] level = "MUST" quote = ''' A PATH_RESPONSE frame MUST be sent on the network path where the PATH_CHALLENGE frame was received. ''' [[spec]] level = "MUST" quote = ''' This requirement MUST NOT be enforced by the endpoint that initiates path validation, as that would enable an attack on migration; see Section 9.3.3. ''' [[spec]] level = "MUST" quote = ''' An endpoint MUST expand datagrams that contain a PATH_RESPONSE frame to at least the smallest allowed maximum datagram size of 1200 bytes. ''' [[spec]] level = "MUST" quote = ''' However, an endpoint MUST NOT expand the datagram containing the PATH_RESPONSE if the resulting data exceeds the anti-amplification limit. ''' [[spec]] level = "MUST" quote = ''' An endpoint MUST NOT send more than one PATH_RESPONSE frame in response to one PATH_CHALLENGE frame; see Section 13.3. '''