[tor-bugs] #1912 [Tor Client]: Choosing bridges by bw is problematic

Tor Bug Tracker & Wiki torproject-admin at torproject.org
Tue Sep 7 22:55:13 UTC 2010


#1912: Choosing bridges by bw is problematic
------------------------+---------------------------------------------------
 Reporter:  Sebastian   |       Owner:  nickm             
     Type:  defect      |      Status:  needs_review      
 Priority:  normal      |   Milestone:  Tor: 0.2.2.x-final
Component:  Tor Client  |     Version:                    
 Keywords:              |      Parent:                    
------------------------+---------------------------------------------------

Comment(by arma):

 How often is it the case that bridge descriptors advertise a bandwidth of
 0? bridges should do twice-daily bandwidth tests just like relays do if
 their bandwidth is under 50KB:

 {{{
       } else if (time_to_recheck_bandwidth < now) {
         /* If we haven't checked for 12 hours and our bandwidth estimate
 is
          * low, do another bandwidth test. This is especially important
 for
          * bridges, since they might go long periods without much use. */
         routerinfo_t *me = router_get_my_routerinfo();
         if (time_to_recheck_bandwidth && me &&
             me->bandwidthcapacity < me->bandwidthrate &&
             me->bandwidthcapacity < 51200) {
           reset_bandwidth_test();
         }
 #define BANDWIDTH_RECHECK_INTERVAL (12*60*60)
         time_to_recheck_bandwidth = now + BANDWIDTH_RECHECK_INTERVAL;
       }
 }}}

 As for Nick's comment about using any other bandwidth source besides the
 authority's view being futile, the reason we load balance across our
 bridges by bandwidth is for the case where you have a fast bridge and a
 bridge that rate limits to 10KB both rate and burst -- you want to use the
 fast one more often, or your Tor experience will suck, especially if
 somebody else is trying to use that bridge too.

 It looks like clients fetch new bridge descriptors every hour, so there's
 really quite quick feedback here.

 So it would be good in any case to make it more rare for a bridge to
 provide a descriptor that says it has zero bandwidth. When exactly does
 this happen? If you set up a bridge, then set your client to use it before
 the bridge has finished its bandwidth test? When else?

 Another fix would be to mark bridges down if they're not reachable, so we
 fall back on the remaining ones. If we're not doing that, we might want to
 start anyway, to improve our odds of establishing circuits in the case
 where the user has 80 bridge entries and only 2 are up.

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


More information about the tor-bugs mailing list