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

Retransmit server initial upon second Initial #3080

Merged
merged 21 commits into from
Mar 13, 2020
Merged
Changes from 1 commit
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
2 changes: 1 addition & 1 deletion draft-ietf-quic-recovery.md
Original file line number Diff line number Diff line change
Expand Up @@ -511,7 +511,7 @@ Handshake or 1-RTT packets.
When a server receives duplicate CRYPTO data in an Initial packet after sending
its Initial flight, it can assume the client did not receive all Initial CRYPTO
data. To speed handshake completion, it SHOULD retransmit all unacknowledged
Initial data subject to the path validation limits. After doing so,
Initial CRYPTO data subject to the path validation limits. After doing so,
the PTO is re-armed.
Copy link
Member

Choose a reason for hiding this comment

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

The server can't arm the PTO prior to confirming that the path is valid.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The server can't send if it's limited by the amplification factor, but the PTO can be armed otherwise.

Copy link
Member

Choose a reason for hiding this comment

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

The way I read this, it says that you retransmit then you re-arm the PTO timer.

I think that you mean to say that when the path is validated, you can re-arm the PTO timer after retransmitting the CRYPTO data, but that's not what it says.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The PTO can be armed prior to path validation, but the text said it always was, which is wrong, so I reworded the paragraph.


Copy link
Contributor

Choose a reason for hiding this comment

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

Can we formulate duplicate crypto a bit more precise? Does it mean a valid crypto packet with the same packet number as seen before?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

By CRYPTO data, I meant data sent in CRYPTO frames, which is why I used uppercase for CRYPTO.

Copy link
Contributor

Choose a reason for hiding this comment

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

There should never be a duplicate packet number unless the network duplicates packets. That's not a signal of anything on the client. I think the intent here is to act if the server receives CRYPTO frames that restate one or more already-received bytes.

Prior to handshake completion, when few to none RTT samples have been
Expand Down