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

Avoid using Public Reset where possible #289

Closed
martinthomson opened this issue Feb 10, 2017 · 3 comments
Closed

Avoid using Public Reset where possible #289

martinthomson opened this issue Feb 10, 2017 · 3 comments
Labels
-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

@martinthomson
Copy link
Member

martinthomson commented Feb 10, 2017

The draft currently says:

In this case, an endpoint SHOULD send a Public Reset packet to indicate the failure.

(This is in the context of discovering that the MTU is too small.)

Given that it doesn't take much to send an authenticated CONNECTION_CLOSE in a packet that won't risk breaking even the minimum IPv4 MTU, I think that this suggestion too much. I would change this to "treat this as a connection error of SOME_ERROR_CODE" either defining a new MTU_TOO_SMALL error code, or reusing an existing one.

@RyanTheOptimist
Copy link
Contributor

Completely agree. I think Public Reset should be used as sparingly as possible. Perhaps only the case when a server receives a packet for a connection ID it has no state for.

@mnot mnot added the design An issue that affects the design of the protocol; resolution requires consensus. label Feb 15, 2017
@mcmanus
Copy link
Contributor

mcmanus commented Feb 21, 2017

sorry about the dup - it seems I still have trouble mining the github issue system effectively.

While we're at it the language in 6.4 that allows an endpoint to send a public_reset at any time to abruptly terminate an active connection should be significantly tightened or removed.. we don't want this to become the mechanism to ending things.

@ianswett
Copy link
Contributor

Agreed, I think it's important to clarify when connection closes should be sent and when public resets are sent. I think there's a lot of agreement around this, but there's not much text clarifying it yet.

The rules on processing them could be clarified as well. ie: Should public resets before handshake completion be ignored, because there's no reason to ever send them?

@mnot mnot added the has-consensus An issue that the Chairs have determined has consensus, by canvassing the mailing list. label Apr 19, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-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

No branches or pull requests

5 participants