Expand description
Code for estimating good values for circuit timeouts.
We need good circuit timeouts for two reasons: first, they help user experience. If user wait too long for their circuits, or if they use exceptionally slow circuits, then Tor will feel really slow. Second, these timeouts are actually a security property.
Modules§
- estimator 🔒
- Declarations for a
TimeoutEstimator
type that can change implementation. - pareto 🔒
- Implement Tor’s sort-of-Pareto estimator for circuit build timeouts.
- readonly 🔒
- Implement a timeout estimator that just uses another process’s estimates.
Enums§
- Action
- A possible action for which we can try to estimate a timeout.
Traits§
- Timeout
Estimator 🔒 - An object that calculates circuit timeout thresholds from the history of circuit build times.
Functions§
- mul_
duration_ 🔒f64_ saturating - A safe variant of
Duration::mul_f64
that never panics.