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

clarify that INITCWND caps amount of data sent to a server before address validation #2341

Conversation

kazuho
Copy link
Member

@kazuho kazuho commented Jan 17, 2019

Clarifies how we prohibit a server from sending too many packets to a client prior to validating the address.

Closes #2135.

Copy link
Member

@martinthomson martinthomson left a comment

Choose a reason for hiding this comment

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

I think that you have this backwards. The point here is that the client is limited by INITCWND. The server has to abide by the x3 rule.

@kazuho kazuho changed the title clarify that INITCWND caps amount of data sent to a client before address validation clarify that INITCWND caps amount of data sent to a server before address validation Jan 17, 2019
@kazuho
Copy link
Member Author

kazuho commented Jan 17, 2019

@martinthomson That's definitely true. Addressed in f7b0187.

@marten-seemann
Copy link
Contributor

I'm not sure if this is correct. If a packet is declared lost, it can be retransmitted, so in that case the amount of data sent is larger than initial cwnd.

@kazuho
Copy link
Member Author

kazuho commented Jan 17, 2019

@marten-seemann That's a good point. Does changing the text to refer to "congestion avoidance algorithm" instead of "initial congestion window" resolve the concern?

@martinthomson
Copy link
Member

This looks fine, but I have a new concern: this makes it appear as though the congestion window doesn't apply to the server. It does. Would this be better?

The amount that servers are permitted to send is also constrained by the limit set by the congestion avoidance algorithm. Clients are only constrained in what they can send prior to address validation by congestion control.

@kazuho
Copy link
Member Author

kazuho commented Jan 17, 2019

@martinthomson Thanks. Applied in 5522bd5.

@@ -1579,6 +1579,10 @@ the client during connection establishment with a Retry packet (see
{{validate-retry}}) or in a previous connection using the NEW_TOKEN frame (see
{{validate-future}}).

The amount that servers are permitted to send is also constrained by the limit
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggestion: "In addition to sending limits imposed prior to address validation, servers are also constrained in what they can send by the limits set by the congestion avoidance algorithm. Clients are only constrained by the congestion avoidance algorithm."

Copy link
Contributor

Choose a reason for hiding this comment

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

s/congestion avoidance algorithm/congestion controller.

Copy link
Member Author

Choose a reason for hiding this comment

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

@ianswett @janaiyengar Thank you! Applied the suggestions.

@martinthomson martinthomson merged commit 25749cc into quicwg:master Jan 21, 2019
@martinthomson
Copy link
Member

Thanks everyone. This looks nothing like what it did when it started, but it's much clearer as a result.

@martinthomson martinthomson added editorial An issue that does not affect the design of the protocol; does not require consensus. -transport labels Jan 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-transport editorial An issue that does not affect the design of the protocol; does not require consensus.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants