-
Notifications
You must be signed in to change notification settings - Fork 204
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
Probing packet #1253
Probing packet #1253
Conversation
draft-ietf-quic-transport.md
Outdated
is a "probing packet", and a packet containing any other frame is a "non-probing | ||
packet". | ||
|
||
An endpoint MUST NOT send non-probing frames to a peer address until it receives |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this statement true? What about NAT rebinds?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this statement is strictly followed, no one ever migrates because they're waiting for the other side to do so. (At which the other side has violated a MUST, and you really ought to kill the connection to that naughty endpoint!)
For both client and server migration, this actually points in the same direction, so let's accept the non-generic here: "A server MUST NOT send non-probing packets to a client address until it receives a non-probing packet from that address."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(mistaken empty review which I can't delete)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good on the targeted fix, but let's get a drive-by fix to the adjacent text while we're here.
draft-ietf-quic-transport.md
Outdated
is a "probing packet", and a packet containing any other frame is a "non-probing | ||
packet". | ||
|
||
An endpoint MUST NOT send non-probing frames to a peer address until it receives |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this statement is strictly followed, no one ever migrates because they're waiting for the other side to do so. (At which the other side has violated a MUST, and you really ought to kill the connection to that naughty endpoint!)
For both client and server migration, this actually points in the same direction, so let's accept the non-generic here: "A server MUST NOT send non-probing packets to a client address until it receives a non-probing packet from that address."
This paragraph: > A server MUST NOT send non-probing frames to a client's address until the server > receives a non-probing packet from that address. Is true only with the restriction of migration to client addresses. It complicates the server migration story if we ever want to do that (as we already have with the proposal for preferred addresses).
This paragraph: > A server MUST NOT send non-probing frames to a client's address until the server > receives a non-probing packet from that address. Is true only with the restriction of migration to client addresses. It complicates the server migration story if we ever want to do that (as we already have with the proposal for preferred addresses).
Remove unnecessary text from #1253
Define probing/non-probing packet and frames.