Opened 3 years ago

Last modified 3 years ago

#24935 new enhancement

Add (local) statistics to check accuracy of predicted circuit mechanism

Reported by: nickm Owned by:
Priority: High Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: 034-triage-20180328, 034-removed-20180328
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:


Tor clients build "preconstructed" circuits in anticipation of user requests, so that when the client request arrives, the circuit is ready for use, and Tor can handle the client request with less latency.

In recent work, we've started preconstructing circuits for onion service usage; and we've refactored that a bit for changing ideas of onion service paths (#23101). We've also caused and fixed a difficult-to-notice bug here in #18859, that lingered around for quite a while.

That last bug suggests that we don't have enough analysis to determine whether this feature is working well. There are two possible errors we could be making:

  • We could be preconstrucing circuits that are never used, thereby wasting resources.
  • We could be failing to preconstruct circuits that we will obviously need, thereby causing needless latency.

We should add a mechanism for a client to keep track of how many preconstructed circuits it has made, and how many it has thrown away unused. Additionally, we should track the hit/miss rate of looking up a preconstructed circuit when we need one.

Child Tickets

Change History (3)

comment:1 Changed 3 years ago by nickm

Keywords: 034-triage-20180328 added

comment:2 Changed 3 years ago by nickm

Keywords: 034-removed-20180328 added

Per our triage process, these tickets are pending removal from 0.3.4.

comment:3 Changed 3 years ago by nickm

Milestone: Tor: 0.3.4.x-finalTor: unspecified

These tickets, tagged with 034-removed-*, are no longer in-scope for 0.3.4. We can reconsider any of them, if time permits.

Note: See TracTickets for help on using tickets.