From 961d2ad597134df0171dbbed2e035ae93e2215c6 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Mon, 2 Apr 2018 00:20:01 -0400 Subject: [PATCH] dir auths no longer vote Guard if they're not voting V2Dir Directory authorities no longer vote in favor of the Guard flag for relays that don't advertise directory support. Starting in Tor 0.3.0.1-alpha, Tor clients have been avoiding using such relays in the Guard position, leading to increasingly broken load balancing for the 5%-or-so of Guards that don't advertise directory support. Fixes bug 22310; bugfix on 0.3.0.6. --- changes/bug22310 | 8 ++++++++ src/or/dirserv.c | 1 + 2 files changed, 9 insertions(+) create mode 100644 changes/bug22310 diff --git a/changes/bug22310 b/changes/bug22310 new file mode 100644 index 000000000..c8017daff --- /dev/null +++ b/changes/bug22310 @@ -0,0 +1,8 @@ + o Major bugfixes (performance, load balancing): + - Directory authorities no longer vote in favor of the Guard flag + for relays that don't advertise directory support. Starting in Tor + 0.3.0.1-alpha, Tor clients have been avoiding using such relays in + the Guard position, leading to increasingly broken load balancing + for the 5%-or-so of Guards that don't advertise directory support. + Fixes bug 22310; bugfix on 0.3.0.6. + diff --git a/src/or/dirserv.c b/src/or/dirserv.c index 0f47a8398..f0333e288 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -2266,6 +2266,7 @@ set_routerstatus_from_routerinfo(routerstatus_t *rs, rs->is_valid = node->is_valid; if (node->is_fast && node->is_stable && + ri->supports_tunnelled_dir_requests && ((options->AuthDirGuardBWGuarantee && routerbw_kb >= options->AuthDirGuardBWGuarantee/1000) || routerbw_kb >= MIN(guard_bandwidth_including_exits_kb,