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

zerortt test counts 1-RTT traffic from first connection #398

Open
Ralith opened this issue Jul 23, 2024 · 2 comments
Open

zerortt test counts 1-RTT traffic from first connection #398

Ralith opened this issue Jul 23, 2024 · 2 comments

Comments

@Ralith
Copy link
Contributor

Ralith commented Jul 23, 2024

In the criteria used to judge whether a sufficiently large proportion of traffic is 0-RTT, the 1-RTT traffic used purely to get 0-RTT secrets is included by tr.get_1rtt(Direction.FROM_CLIENT) and counted against the ratio of 0-RTT. In the presence of PLPMTUD probes, this can cause spurious failures.

zeroRTTSize = self._payload_size(tr.get_0rtt())
oneRTTSize = self._payload_size(tr.get_1rtt(Direction.FROM_CLIENT))
logging.debug("0-RTT size: %d", zeroRTTSize)
logging.debug("1-RTT size: %d", oneRTTSize)
if zeroRTTSize == 0:
logging.info("Client didn't send any 0-RTT data.")
return TestResult.FAILED
if oneRTTSize > 0.5 * self.FILENAMELEN * self.NUM_FILES:
logging.info("Client sent too much data in 1-RTT packets.")
return TestResult.FAILED

@Ralith Ralith changed the title zerortt test counts 1-RTT traffic from first connection attempt zerortt test counts 1-RTT traffic from first connection Jul 23, 2024
Ralith added a commit to quinn-rs/quinn-interop that referenced this issue Jul 23, 2024
Saves a few packets, and avoids a spurious failure in the zerortt test
case due to
quic-interop/quic-interop-runner#398.
Ralith added a commit to quinn-rs/quinn-interop that referenced this issue Jul 23, 2024
Saves a few packets, and avoids a spurious failure in the zerortt test
case due to
quic-interop/quic-interop-runner#398.
Ralith added a commit to quinn-rs/quinn-interop that referenced this issue Jul 23, 2024
Saves a few packets, and avoids a spurious failure in the zerortt test
case due to
quic-interop/quic-interop-runner#398.
@marten-seemann
Copy link
Collaborator

Want to send a PR to fix this logic?

@marten-seemann
Copy link
Collaborator

You don't need to go by CID to associate 1-RTT packets to a connection. You can count packets sent after the (beginning of the) second handshake as belonging to the second connection.

Ralith added a commit to quinn-rs/quinn-interop that referenced this issue Jul 24, 2024
Saves a few packets, and avoids a spurious failure in the zerortt test
case due to
quic-interop/quic-interop-runner#398.
Ralith added a commit to quinn-rs/quinn-interop that referenced this issue Jul 24, 2024
Saves a few packets, and avoids a spurious failure in the zerortt test
case due to
quic-interop/quic-interop-runner#398.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants