[tor-bugs] #23681 [Core Tor/Tor]: prop224: Clients mark intro circs as timed-out within seconds

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Sep 28 14:30:26 UTC 2017

#23681: prop224: Clients mark intro circs as timed-out within seconds
 Reporter:  asn              |          Owner:  (none)
     Type:  defect           |         Status:  new
 Priority:  Medium           |      Milestone:  Tor: 0.3.2.x-final
Component:  Core Tor/Tor     |        Version:
 Severity:  Normal           |     Resolution:
 Keywords:  prop224, tor-hs  |  Actual Points:
Parent ID:                   |         Points:
 Reviewer:                   |        Sponsor:

Comment (by dgoulet):

 Yah, the expire time of building HS circuits are different timings from
 the rest.

   /* Intro circs have an extra round trip (and are also 4 hops long) */
   SET_CUTOFF(c_intro_cutoff, get_circuit_build_timeout_ms() * (14/6.0) +

 Basically, the build timeout of what I've observed on a "normal service
 connection" is usually around 2s. This line in your logs will tell you the
 latest value:

 [info] circuit_build_times_set_timeout(): Set circuit build timeout to 2s
 (1500.000000ms, 60000.000000ms, Xm: 404, a: 2.882408, r: 0.031000) based
 on 1000 circuit times

 Thus taking that into consideration, the cutoff should be 5666msec or
 ~5.6sec but in your case it seems the build circuit timeout was way lower
 that is around 1sec or even below... Those were introduced in commit
 `3458d904f62b2d97` so Mike is probably the person to talk to about this.
 There is this #3733 ticket that touches this expire building function that
 I need to sit down with Mike and go over all those timeouts and try to
 make sure they work well, the conditions in that function are good for
 both v2 and v3.

 If you client becomes slower and slower at building circuit, the timeout
 should change gradually but if the first 1000 circuits were super fast and
 then you move to the airport shitty Wifi for instance, ramping up that
 timeout value will take your client a lot of failures...

 But all in all, this shouldn't break the state of the client? It seems
 your client never got the ACK from the introduction point so it is just
 looping on trying to get it with new circuits... :S

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

More information about the tor-bugs mailing list