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

Why InitialWindow = 14600? #2491

Closed
martinduke opened this issue Feb 28, 2019 · 7 comments
Closed

Why InitialWindow = 14600? #2491

martinduke opened this issue Feb 28, 2019 · 7 comments
Labels
-recovery 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

@martinduke
Copy link
Contributor

In the Recovery Draft pseudocode section:

kInitialWindow: : Default limit on the initial amount of data in flight, in bytes. Taken from {{?RFC6928}}. The RECOMMENDED value is the minimum of 10 * kMaxDatagramSize and max(2* kMaxDatagramSize, 14600)).

Why 14600? This looks like 10 * MSS, but for UDP this should be 14720. It would lead to neat MSS multiples were that code ever executed.

@ianswett
Copy link
Contributor

This was taken from RFC6928: https://tools.ietf.org/html/rfc6928

@martinduke
Copy link
Contributor Author

Well, yes, but that is for TCP and I'm arguing that 14720 makes a lot more sense for QUIC.

@ianswett
Copy link
Contributor

ianswett commented Mar 1, 2019

That seems reasonable, I was only trying to add an explanation of how we ended up with 14600.

@ghedo
Copy link
Member

ghedo commented Mar 1, 2019

@martinduke Did you mean 14520? 1472 as MSS seems too big if you assume MTU of 1500.

@martinduke
Copy link
Contributor Author

@ghedo I was thinking IPv4. Perhaps we should make the value dependent on the IP version.

@ianswett ianswett added -recovery design An issue that affects the design of the protocol; resolution requires consensus. labels Mar 2, 2019
@ianswett
Copy link
Contributor

ianswett commented Mar 3, 2019

I believe the goal is no more than 10 1500 byte packets, so it could be IP version dependent.

But TCP doesn't bother making it IP version dependent, so I'm leaning towards specifying 14720 with the rationale that TCP has 20 bytes of overhead vs UDP's 8 bytes.

@ianswett
Copy link
Contributor

ianswett commented Mar 3, 2019

PR #2494 sent.

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

4 participants