aboutsummaryrefslogtreecommitdiff
path: root/spec/path-spec-intro.md
diff options
context:
space:
mode:
Diffstat (limited to 'spec/path-spec-intro.md')
-rw-r--r--spec/path-spec-intro.md53
1 files changed, 5 insertions, 48 deletions
diff --git a/spec/path-spec-intro.md b/spec/path-spec-intro.md
index db16f60..107d640 100644
--- a/spec/path-spec-intro.md
+++ b/spec/path-spec-intro.md
@@ -1,4 +1,4 @@
-Tor Path Specification
+# Tor Path Specification
```text
Roger Dingledine
@@ -15,51 +15,8 @@ of their choices.
THIS SPEC ISN'T DONE YET.
-```text
- The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
- NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
- "OPTIONAL" in this document are to be interpreted as described in
- RFC 2119.
-
-Tables of Contents
+The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
+NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
+"OPTIONAL" in this document are to be interpreted as described in
+RFC 2119.
- 1. General operation
- 1.1. Terminology
- 1.2. A relay's bandwidth
- 2. Building circuits
- 2.1. When we build
- 2.1.0. We don't build circuits until we have enough directory info
- 2.1.1. Clients build circuits preemptively
- 2.1.2. Clients build circuits on demand
- 2.1.3. Relays build circuits for testing reachability and bandwidth
- 2.1.4. Hidden-service circuits
- 2.1.5. Rate limiting of failed circuits
- 2.1.6. When to tear down circuits
- 2.2. Path selection and constraints
- 2.2.1. Choosing an exit
- 2.2.2. User configuration
- 2.3. Cannibalizing circuits
- 2.4. Learning when to give up ("timeout") on circuit construction
- 2.4.1 Distribution choice and parameter estimation
- 2.4.2. How much data to record
- 2.4.3. How to record timeouts
- 2.4.4. Detecting Changing Network Conditions
- 2.4.5. Consensus parameters governing behavior
- 2.4.6. Consensus parameters governing behavior
- 2.5. Handling failure
- 3. Attaching streams to circuits
- 4. Hidden-service related circuits
- 5. Guard nodes
- 5.1. How consensus bandwidth weights factor into entry guard selection
- 6. Server descriptor purposes
- 7. Detecting route manipulation by Guard nodes (Path Bias)
- 7.1. Measuring path construction success rates
- 7.2. Measuring path usage success rates
- 7.3. Scaling success counts
- 7.4. Parametrization
- 7.5. Known barriers to enforcement
- X. Old notes
- X.1. Do we actually do this?
- X.2. A thing we could do to deal with reachability.
- X.3. Some stuff that worries me about entry guards. 2006 Jun, Nickm.
-```