Skip to content

Commit

Permalink
Add persistent congestion TODO.
Browse files Browse the repository at this point in the history
Summary:
There's a lot of discussion about this in the WG. See:

quicwg/base-drafts#3937

quicwg/base-drafts#3939

quicwg/base-drafts#3875

Our approach is very conservative, which may mean we are declaring persistent congestion mor frequently than we need to. This seems to work okay, but put a TODO to remind us to experiment with this in the future.

Reviewed By: yangchi

Differential Revision: D22699664

fbshipit-source-id: c0b73fc48a9f3dd141cada95eeb8493d17322702
  • Loading branch information
mjoras authored and facebook-github-bot committed Jul 24, 2020
1 parent a33f851 commit 8008c4b
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions quic/state/AckHandlers.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,11 @@ void processAckFrame(
(ack.largestAckedPacket.has_value() || lossEvent)) {
if (lossEvent) {
CHECK(lossEvent->largestLostSentTime && lossEvent->smallestLostSentTime);
// TODO it's not clear that we should be using the smallest and largest
// lost times here. It may perhaps be better to only consider the latest
// contiguous lost block and determine if that block is larger than the
// congestion period. Alternatively we could consider every lost block
// and check if any of them constitute persistent congestion.
lossEvent->persistentCongestion = isPersistentCongestion(
conn,
*lossEvent->smallestLostSentTime,
Expand Down

0 comments on commit 8008c4b

Please sign in to comment.