tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 4444f5f4ed968f08d26735a2531f03a6c4369226
parent 08c3ee8eca4bf60f3218daeb65acf97da554e80f
Author: Mike Perry <mikeperry-git@torproject.org>
Date:   Sun, 31 Jul 2022 15:09:35 +0000

Use EWMA instead of bare rtt for min rtt.

This allows us to average out minimums due to lulls in activity a bit more.

Diffstat:
Msrc/core/or/congestion_control_common.c | 6++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/core/or/congestion_control_common.c b/src/core/or/congestion_control_common.c @@ -857,8 +857,10 @@ congestion_control_update_circuit_rtt(congestion_control_t *cc, cc->max_rtt_usec = rtt; } - if (cc->min_rtt_usec == 0 || rtt < cc->min_rtt_usec) { - cc->min_rtt_usec = rtt; + if (cc->min_rtt_usec == 0 || cc->ewma_rtt_usec < cc->min_rtt_usec) { + // Using the EWMA for min instead of current RTT helps average out + // effects from other conns + cc->min_rtt_usec = cc->ewma_rtt_usec; } return rtt;