summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2018-04-02 00:20:01 -0400
committerRoger Dingledine <arma@torproject.org>2018-04-02 00:20:01 -0400
commit961d2ad597134df0171dbbed2e035ae93e2215c6 (patch)
tree1dcc7de112d97bbd14583f3af1e6e994a3e7f8c1
parent6aaafb0672ec7d2f454720ea0bed41fb91d9744e (diff)
downloadtor-961d2ad597134df0171dbbed2e035ae93e2215c6.tar.gz
tor-961d2ad597134df0171dbbed2e035ae93e2215c6.zip
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.
-rw-r--r--changes/bug223108
-rw-r--r--src/or/dirserv.c1
2 files changed, 9 insertions, 0 deletions
diff --git a/changes/bug22310 b/changes/bug22310
new file mode 100644
index 0000000000..c8017daffe
--- /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 0f47a83986..f0333e288f 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,