Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add two more specific error codes for path abandon frame #466

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 19 additions & 1 deletion draft-ietf-quic-multipath.md
Original file line number Diff line number Diff line change
Expand Up @@ -1155,7 +1155,7 @@ Path Identifier:
Error Code:
: A variable-length integer that indicates the reason for abandoning
this path. NO_ERROR(0x0) indicates that the path is being abandoned
without any error being encountered.
without any error being encountered. Other error codes can be found in {{error-codes}}.

PATH_ABANDON frames are ack-eliciting. If a packet containing
a PATH_ABANDON frame is considered lost, the peer SHOULD repeat it.
Expand Down Expand Up @@ -1399,6 +1399,22 @@ it cannot allocate sufficient resources to maintain it. This is due to
limitations in the transport layer's capacity. This error indicates that
resource constraints prevent the continuation of the path.

UNSTABLE_INTERFACE (TBD-11): The endpoint is abandoning the path because
of unstable interfaces. This error is used when endpoints find that
Yanmei-Liu marked this conversation as resolved.
Show resolved Hide resolved
the network interfaces are unstable due to weak signal or other possible situations.
Endpoints could also choose to use this error when detecting a black hole on the specific path.
Yanmei-Liu marked this conversation as resolved.
Show resolved Hide resolved
Yanmei-Liu marked this conversation as resolved.
Show resolved Hide resolved

NO_CID_AVAILABLE (TBD-12): The endpoint is abandoning the path due to
the lack of an available connection ID for this path.
This may occur when the endpoint initiates a new path
but have not transmited a corresponding new connection ID for the path ID
(or the packet containing new connection IDs is inflight),
then the peer could choose to abandon the path with this error code.
Note that if endpoints send PATH_NEW_CONNECTION_ID and PATH_CHALLENDGE
within a very short time period, and the packets arrived out of order, the peer
could choose to hold path validation frames for a while or send PATH_ABANDON immediately for the path.
Yanmei-Liu marked this conversation as resolved.
Show resolved Hide resolved


# IANA Considerations

This document defines a new transport parameter for the negotiation of
Expand Down Expand Up @@ -1439,6 +1455,8 @@ Value | Code | Description
----------------------------|-----------------------|-------------------------------|-------------------
TBD-09 (experiments use 0x004150504142414e) | APPLICATION_ABANDON | Path abandoned at the application's request | {{error-codes}}
TBD-10 (experiments use 0x0052534c494d4954) | RESOURCE_LIMIT_REACHED | Path abandoned due to resource limitations in the transport | {{error-codes}}
TBD-11 (experiments use 0x00554e5f494e5446) | UNSTABLE_INTERFACE | Path abandoned due to unstable interfaces | {{error-codes}}
TBD-12 (experiments use 0x004e4f5f4349445f) | NO_CID_AVAILABLE | Path abandoned due to no available connection IDs for the path | {{error-codes}}
{: #tab-error-code title="Error Codes for Multipath QUIC"}


Expand Down
Loading