[tor-bugs] #6341 [Tor Relay]: connection_or_flush_from_first_active_circuit() does wrong thing when ewma_enabled

Tor Bug Tracker & Wiki torproject-admin at torproject.org
Mon Sep 3 03:05:19 UTC 2012


#6341: connection_or_flush_from_first_active_circuit() does wrong thing when
ewma_enabled
-----------------------+----------------------------------------------------
 Reporter:  arma       |          Owner:                    
     Type:  defect     |         Status:  needs_review      
 Priority:  normal     |      Milestone:  Tor: 0.2.3.x-final
Component:  Tor Relay  |        Version:                    
 Keywords:             |         Parent:                    
   Points:             |   Actualpoints:                    
-----------------------+----------------------------------------------------

Comment(by robgjansen):

 I've been looking into the SOCKS connection problems. The distribution of
 the number of SOCKS connection errors over a recent set of 24 experiments
 is:
 [1, 3, 5, 7, 7, 7, 9, 12, 16, 17, 17, 18, 18, 25, 25, 26, 27, 39, 57, 109,
 110, 120, 143, 580]

 From what I can tell, it seems to mostly be happening when the client has
 yet to 'bootstrap' to 100% (usually stuck at 50%: "Loading relay
 descriptors"). In this state clients seem to be getting several HTTP 404
 errors because the directory mirrors they selected to contact do not yet
 have the requested info. Circuits can't be built without an acceptable
 fraction of descriptors (75% of all descriptors and 50% of exit
 descriptors). The SOCKS connect then fails after the 2 minute
 SocksTimeout.

 To increase confidence in my suspicion, I ran a small test that resulted
 in 254 total SOCKS connection errors and 1833 total HTTP 404s. The same
 exact test after reducing FRAC_USABLE_NEEDED from .75 to .4 and
 FRAC_EXIT_USABLE_NEEDED from .5 to .2 resulted in 3 total SOCKS connection
 errors and 138 total HTTP 404s.

 So is it really a problem with the distribution of descriptor information
 to the directory mirrors? I wonder: are there any options I should be
 setting to improve bootstrapping in testing Tor networks (other than
 TestingTorNetwork of course)?

 Is there a way to force everyone in the network to always contact the
 directory authority for directory information and descriptors instead of
 directory mirrors? Then, it would also be useful if I can make my
 directory authority only serve that information and not participate as
 circuit relays, just to ensure it is as stable as possible for
 bootstrapping. Does this make sense and is there a way to do this? (It
 wasn't obviously possible with the current options listed in the Tor
 manual.)

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


More information about the tor-bugs mailing list