mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Tweak values for when to discard all of our history.
This seems to be happening to me a lot on a garbage DSL line. We may need to come up with 2 threshholds: a high short onehop count and a lower longer count.
This commit is contained in:
@@ -753,10 +753,8 @@ circuit_build_times_network_timeout(circuit_build_times_t *cbt,
|
||||
if (cbt->liveness.network_last_live <= start_time &&
|
||||
start_time <= (now - cbt->timeout_ms/1000.0)) {
|
||||
cbt->liveness.nonlive_timeouts++;
|
||||
}
|
||||
|
||||
/* Check for one-hop timeout */
|
||||
if (did_onehop) {
|
||||
} else if (did_onehop) {
|
||||
/* Count a one-hop timeout */
|
||||
cbt->liveness.timeouts_after_firsthop[cbt->liveness.after_firsthop_idx]=1;
|
||||
cbt->liveness.after_firsthop_idx++;
|
||||
cbt->liveness.after_firsthop_idx %= RECENT_CIRCUITS;
|
||||
@@ -823,7 +821,7 @@ circuit_build_times_network_check_changed(circuit_build_times_t *cbt)
|
||||
timeout_count += cbt->liveness.timeouts_after_firsthop[i];
|
||||
}
|
||||
|
||||
/* If 75% of our recent circuits are timing out after the first hop,
|
||||
/* If 80% of our recent circuits are timing out after the first hop,
|
||||
* we need to re-estimate a new initial alpha and timeout. */
|
||||
if (timeout_count < MAX_RECENT_TIMEOUT_COUNT) {
|
||||
return 0;
|
||||
|
||||
+1
-1
@@ -2927,7 +2927,7 @@ typedef uint32_t build_time_t;
|
||||
* This tells us to abandon timeout history and set
|
||||
* the timeout back to BUILD_TIMEOUT_INITIAL_VALUE.
|
||||
*/
|
||||
#define MAX_RECENT_TIMEOUT_COUNT (lround(RECENT_CIRCUITS*0.75))
|
||||
#define MAX_RECENT_TIMEOUT_COUNT (lround(RECENT_CIRCUITS*0.8))
|
||||
|
||||
/** Information about the state of our local network connection */
|
||||
typedef struct {
|
||||
|
||||
Reference in New Issue
Block a user