Open mirjak opened 1 month ago
The closest I see is in 9.3, where this statement occurs:
Receiving a packet from a new peer address containing a non-probing frame indicates that the peer has migrated to that address.
If the recipient permits the migration, it MUST send subsequent packets to the new peer address and MUST initiate path validation....
RFC 9000 doesn't discuss what happens if the peer migrates and the recipient does not permit the migration, but I'd class that as refusal of a path. Presumably the recipient ignores the incoming packets and the connection eventually times out for both sides if the peer can no longer use the original path.
However, that doesn't match the text in multipath. On the contrary, "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."
So I interpret this as a two-step process:
Of course, you don't know whether it's a non-probing packet until you've started to process it, so this isn't 100% perfect either.
Okay, so I think we need to change the sentence above in any case. I actually propose to remove this whole small section and rather say that a path can be closed at any time using a path abandon, even if the path response was not sent.
PR #388 now clarifies that a PATH _ABANDON should be sent instead
We have section on "Refusing a New Path" and it says this:
However, I don't think RFC9000 talks about refusing a path anywhere. Or can someone point me at the right section?