[tor-bugs] #19009 [Core Tor/Tor]: bandwidth testing circuits should be allowed to use our guards
Tor Bug Tracker & Wiki
blackhole at torproject.org
Mon May 9 23:28:32 UTC 2016
#19009: bandwidth testing circuits should be allowed to use our guards
------------------------------+--------------------------
Reporter: arma | Owner:
Type: defect | Status: new
Priority: Medium | Milestone: Tor: 0.2.???
Component: Core Tor/Tor | Version:
Severity: Normal | Keywords:
Actual Points: | Parent ID:
Points: | Reviewer:
Sponsor: |
------------------------------+--------------------------
In git commit 267e61d0, we fixed bug #654, where relays were putting all
their bandwidth testing circuits over the same small set of guards, thus
having an accidental bottleneck, meaning we got an inaccurate bandwidth
estimate.
But we fixed it by having them *never* use a guard for their first hop of
a testing circuit, which in turn produced surprising behavior in tiny test
networks, because relays can't make testing circuits if all the available
relays are in their guard list.
teor fixed that in commit 22a1e9cac by making us not avoid our guards if
testingtornetwork, and not avoid our guards if all the nodes in the
consensus are on our guard list. It turns out that latter check isn't
quite good enough, because we're picking two hops, so having at least one
relay in the network that isn't in our guard list isn't enough to complete
a circuit.
The underlying problem is that when UseEntryGuards is true, the rest of
choose_good_entry_server() is entirely about picking a new entry guard.
Except we reuse it for some edge cases where we want to just pick some
entry point and not use our guard list. Some refactoring or something
seems wise.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/19009>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list