commit 667ba776b1d91c8d1229319be88191008975d6eb Author: Nick Mathewson nickm@torproject.org Date: Mon Nov 7 09:38:49 2016 -0500
Adjust download schedules per teor's #20534 recommendataions --- changes/bug20534 | 6 ++++-- src/or/config.c | 4 ++-- src/or/directory.c | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/changes/bug20534 b/changes/bug20534 index 1ffa1f3..49db433 100644 --- a/changes/bug20534 +++ b/changes/bug20534 @@ -2,5 +2,7 @@ - Remove the maximum delay on exponential-backoff scheduling. Since we now allow an infinite number of failures (see ticket 20536), we must now allow the time to grow longer on each failure. - Fixes bug 20534; bugfix on 0.2.9.1-alpha. - + Fixes part of bug 20534; bugfix on 0.2.9.1-alpha. + - Use initial delays and decrements in download scheduling closer to + those from 0.2.8. Fixes another part of bug 20534; bugfix on + 0.2.9.1-alpha. diff --git a/src/or/config.c b/src/or/config.c index 08c576e..9ad5d63 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -501,7 +501,7 @@ static config_var_t option_vars_[] = { * When clients have authorities and fallbacks available, they use these * schedules: (we stagger the times to avoid thundering herds) */ V(ClientBootstrapConsensusAuthorityDownloadSchedule, CSV_INTERVAL, - "10, 11, 3600, 10800, 25200, 54000, 111600, 262800" /* 3 days + 1 hour */), + "6, 11, 3600, 10800, 25200, 54000, 111600, 262800" /* 3 days + 1 hour */), V(ClientBootstrapConsensusFallbackDownloadSchedule, CSV_INTERVAL, "0, 1, 4, 11, 3600, 10800, 25200, 54000, 111600, 262800"), /* When clients only have authorities available, they use this schedule: */ @@ -512,7 +512,7 @@ static config_var_t option_vars_[] = { * blackholed. Clients will try 3 directories simultaneously. * (Relays never use simultaneous connections.) */ V(ClientBootstrapConsensusMaxInProgressTries, UINT, "3"), - V(TestingBridgeDownloadSchedule, CSV_INTERVAL, "3600, 900, 900, 3600"), + V(TestingBridgeDownloadSchedule, CSV_INTERVAL, "1200, 900, 900, 3600"), V(TestingClientMaxIntervalWithoutRequest, INTERVAL, "10 minutes"), V(TestingDirConnectionMaxStall, INTERVAL, "5 minutes"), V(TestingConsensusMaxDownloadTries, UINT, "8"), diff --git a/src/or/directory.c b/src/or/directory.c index 5fc1572..02f1438 100644 --- a/src/or/directory.c +++ b/src/or/directory.c @@ -3798,7 +3798,7 @@ next_random_exponential_delay(int delay, int max_delay) int max_increment;
if (delay) - max_increment = delay; /* no more than double. */ + max_increment = delay * 4; /* no more than quintuple. */ else max_increment = 1; /* we're always willing to slow down a little. */