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

Exception for Retire Prior To #3643

Merged
merged 3 commits into from May 17, 2020
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
23 changes: 12 additions & 11 deletions draft-ietf-quic-transport.md
Expand Up @@ -1047,17 +1047,18 @@ connection ID issued by the server via the preferred_address transport
parameter.

An endpoint SHOULD ensure that its peer has a sufficient number of available and
unused connection IDs. Endpoints store received connection IDs for future use
and advertise the number of connection IDs they are willing to store with the
active_connection_id_limit transport parameter. An endpoint MUST NOT provide
more connection IDs than the peer's limit, with the exception that connection
IDs MAY be provided if sent in a NEW_CONNECTION_ID frame that also requests the
retirement of enough connection IDs that the number of active connection IDs
will stay within the limit. An endpoint that receives a NEW_CONNECTION_ID
frame that increases the number of active connection IDs - without a Retire
Prior To field that requests retirement of enough active connections to keep the
total number of active connection IDs within the value the endpoint advertised
in its active_connection_id_limit transport parameter - MUST close the
unused connection IDs. Endpoints advertise the number of active connection IDs
they are willing to maintain using the active_connection_id_limit transport
parameter. An endpoint MUST NOT provide more connection IDs than the peer's
limit. An endpoint MAY send connection IDs that temporarily exceed a peer's
limit if the NEW_CONNECTION_ID frame also requires the retirement of any excess,
by including a sufficiently large value in the Retire Prior To field.

A NEW_CONNECTION_ID frame might cause an endpoint to add some active connection
IDs and retire others based on the value of the Retire Prior To field. After
Comment on lines +1057 to +1058
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A NEW_CONNECTION_ID frame might cause an endpoint to add some active connection
IDs and retire others based on the value of the Retire Prior To field. After
A NEW_CONNECTION_ID frame might cause an endpoint to add an active connection
ID and retire others based on the value of the Retire Prior To field. After

processing a NEW_CONNECTION_ID frame and adding and retiring active connection
IDs, if the number of active connection IDs exceeds the value advertised in its
active_connection_id_limit transport parameter, an endpoint MUST close the
connection with an error of type CONNECTION_ID_LIMIT_ERROR.

An endpoint SHOULD supply a new connection ID when the peer retires a connection
Expand Down