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

Is CONNECTION_CLOSE ACK-eliciting? #3097

Closed
kazuho opened this issue Oct 16, 2019 · 4 comments · Fixed by #3098
Closed

Is CONNECTION_CLOSE ACK-eliciting? #3097

kazuho opened this issue Oct 16, 2019 · 4 comments · Fixed by #3098
Labels
-recovery -transport design An issue that affects the design of the protocol; resolution requires consensus. has-consensus An issue that the Chairs have determined has consensus, by canvassing the mailing list.

Comments

@kazuho
Copy link
Member

kazuho commented Oct 16, 2019

At the moment, we state that a QUIC packet that contains frames other than ACK and PADDING (section 1.2), but I wonder if that is true for CONNECTION_CLOSE frame.

A CONNECTION_CLOSE frame never elicits an acknowledgment. IIUC, it is not meant to be governed by the congestion controller.

Considering the aspects, I think we should add CONNECTION_CLOSE to the list of *non-*ACK-eliciting frames.

@ianswett
Copy link
Contributor

That also ensures the congestion controller never inadvertently blocks sending a CONNECTION_CLOSE, which is consistent with the intent.

If we make this change, I believe APPLICATION_CLOSE needs to be on the list as well.

Now that we discuss ack-eliciting in transport, I think we'd need to change both transport and recovery and mark this design.

So I think this would be a slight improvement, but I an also imagine people claiming that CONNECITON_CLOSE is already special, so there's no need for a change.

@martinthomson
Copy link
Member

APPLICATION_CLOSE is no more. This seems like a fine change.

@janaiyengar
Copy link
Contributor

This seems sensible.

@mnot mnot added design An issue that affects the design of the protocol; resolution requires consensus. proposal-ready An issue which has a proposal that is believed to be ready for a consensus call. labels Oct 16, 2019
@larseggert
Copy link
Member

Discussed in Cupertino. Obvious correction.

@mnot mnot added has-consensus An issue that the Chairs have determined has consensus, by canvassing the mailing list. and removed proposal-ready An issue which has a proposal that is believed to be ready for a consensus call. labels Oct 31, 2019
martinthomson added a commit that referenced this issue Oct 14, 2020
Somehow, I continue to forget this (see #3097), so the table has been
wrong since the special annotations were added.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-recovery -transport design An issue that affects the design of the protocol; resolution requires consensus. has-consensus An issue that the Chairs have determined has consensus, by canvassing the mailing list.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants