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 In-flight #2200

Closed
wants to merge 3 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
9 changes: 6 additions & 3 deletions draft-ietf-quic-recovery.md
Expand Up @@ -102,7 +102,9 @@ In-flight:

: Packets are considered in-flight when they have been sent
and neither acknowledged nor declared lost, and they are not
ACK-only.
ACK-only. For example, packets containing STREAM frames are
Copy link
Member

Choose a reason for hiding this comment

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

I think that the "for example" is missing context. Perhaps:

: Packets are considered in-flight when they have been sent and neither acknowledged nor declared lost. ACK-only packets are not considered in-flight, though all other packets are, including packets that contain data that would not otherwise be sent again, such as a packet containing only STREAM frames for a reset stream.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

That works for me. @janaiyengar what do you think?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

After starting to add this in, I don't think it reads as clearly as I'd like, so I didn't. However, I did fix an error in the pseudocode below involving ACK-only packets not being considered in-flight.

still considered in-flight after the corresponding stream
is reset.

Ack-eliciting Frames:

Expand Down Expand Up @@ -659,10 +661,11 @@ Pseudocode for OnPacketSent follows:
sent_packets[packet_number].time_sent = now
sent_packets[packet_number].ack_eliciting = ack_eliciting
sent_packets[packet_number].in_flight = in_flight
if (ack_eliciting):
if (in_flight):
if (is_crypto_packet):
time_of_last_sent_crypto_packet = now
time_of_last_sent_ack_eliciting_packet = now
if (ack_eliciting):
time_of_last_sent_ack_eliciting_packet = now
OnPacketSentCC(sent_bytes)
sent_packets[packet_number].size = sent_bytes
SetLossDetectionTimer()
Expand Down