[tor-bugs] #15482 [Tor]: Don't surprise users with new circuits in the middle of browsing

Tor Bug Tracker & Wiki blackhole at torproject.org
Mon Apr 20 17:16:24 UTC 2015


#15482: Don't surprise users with new circuits in the middle of browsing
-------------------------+-------------------------------------------------
     Reporter:           |      Owner:  mikeperry
  mikeperry              |     Status:  needs_information
         Type:           |  Milestone:  Tor: 0.2.7.x-final
  enhancement            |    Version:
     Priority:  normal   |   Keywords:  tbb-usability, tbb-4.5-alpha,
    Component:  Tor      |  MikePerry201503, tbb-wants,
   Resolution:           |  TorBrowserTeam201504
Actual Points:           |  Parent ID:
       Points:           |
-------------------------+-------------------------------------------------
Changes (by mikeperry):

 * status:  needs_review => needs_information


Comment:

 After running this through the weekend, I am in agreement. This branch
 hasn't seemed to cause any additional problems yet, but the circuit
 selection code is still making churn-heavy choices in places I can't track
 down, and it seems I only improved a very small number of cases of churn
 over the 1500 stream requests that happened in my browsers over the
 weekend.

 Most frustratingly, the fixed circuit_is_better() in this branch was
 involved in roughly 15 stream requests out of 1500, and it turns out it
 never made a decision that the buggy circuit_is_better wouldn't have also
 made, and it somehow was *not* called during at least one case where two
 open circuits were available for a site with the same SOCKS auth. Tor was
 somehow deciding between them elsewhere (and still annoying the shit out
 of me by causing me to suddenly get banned while in the middle of
 something).

 The changes in circuit_is_acceptable() reduced circuit churn 4 times out
 of 1500, and circuit_detach_stream() made circuits live longer 6 times out
 of 1500, perhaps due to me also running #4100. The changes in
 circuit_detach_stream() make the distinguisher worse if everyone doesn't
 run them, though, so I don't think they are worth it.

 So I am OK with the patch in 4.5a5 for 4.5-stable. I also produced a
 slightly longer but tunable version of it, such as
 https://gitweb.torproject.org/mikeperry/tor.git/commit/?h=bug15482-tbb-
 longer, but I could be talked out of that, too.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/15482#comment:14>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list