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

Are ECN counts per pn_space or unified across pn_spaces? #2957

Closed
YuanshanZ opened this issue Aug 8, 2019 · 1 comment · Fixed by #2964
Closed

Are ECN counts per pn_space or unified across pn_spaces? #2957

YuanshanZ opened this issue Aug 8, 2019 · 1 comment · Fixed by #2964
Labels
-recovery -transport editorial An issue that does not affect the design of the protocol; does not require consensus.

Comments

@YuanshanZ
Copy link
Contributor

Are ECN counts in ACK frames per pn_space or unified across pn_spaces? I've observed different behaviors of public servers regarding that.

[13.3.1. ECN Counts] seems to suggest they are per pn_space:

Each packet number space maintains separate acknowledgement state and separate ECN counts. For example, if one each of an Initial, 0-RTT, Handshake, and 1-RTT QUIC packet are coalesced, the corresponding counts for the Initial and Handshake packet number space will be incremented by one and the counts for the 1-RTT packet number space will be increased by two.

However, [19.3.2. ECN Counts] says:

The three ECN Counts are:
ECT(0) Count:
A variable-length integer representing the total number of packets received with the ECT(0) codepoint.
ECT(1) Count:
A variable-length integer representing the total number of packets received with the ECT(1) codepoint.
CE Count:
A variable-length integer representing the total number of packets received with the CE codepoint. 

Pseudocode in the recovery draft (Appendix B. Congestion Control Pseudocode) also has a global ecn_ce_counter.

@martinthomson martinthomson added -recovery -transport editorial An issue that does not affect the design of the protocol; does not require consensus. labels Aug 8, 2019
@janaiyengar
Copy link
Contributor

Thanks for the issue, @YuanshanZ, PR looks good.

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

Successfully merging a pull request may close this issue.

3 participants