aboutsummaryrefslogtreecommitdiff
path: root/doc/spec
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2007-08-24 06:30:34 +0000
committerRoger Dingledine <arma@torproject.org>2007-08-24 06:30:34 +0000
commitd39c7515d13cc7e2383008cf7eb004f645bdf84a (patch)
tree558f391bab312421bc24ccf728bde4e2639d9119 /doc/spec
parent8d524edb837a063e8d948603a117f1d4dd266174 (diff)
downloadtor-d39c7515d13cc7e2383008cf7eb004f645bdf84a.tar
tor-d39c7515d13cc7e2383008cf7eb004f645bdf84a.tar.gz
patch from mike perry to a) stop overloading guards as much, and
b) raise the max-believable-bandwidth to 10MB/s. svn:r11258
Diffstat (limited to 'doc/spec')
-rw-r--r--doc/spec/path-spec.txt10
1 files changed, 4 insertions, 6 deletions
diff --git a/doc/spec/path-spec.txt b/doc/spec/path-spec.txt
index 05d9e8dcb..caf283a4b 100644
--- a/doc/spec/path-spec.txt
+++ b/doc/spec/path-spec.txt
@@ -182,21 +182,19 @@ of their choices.
proportional to its advertised bandwidth [the smaller of the 'rate' and
'observed' arguments to the "bandwidth" element in its descriptor]. If a
router's advertised bandwidth is greater than MAX_BELIEVABLE_BANDWIDTH
- (1.5 MB/s), we clip to that value.
+ (10 MB/s), we clip to that value.
For non-exit positions on "fast" circuits, we pick routers as above, but
we weight the clipped advertised bandwidth of Exit-flagged nodes depending
on the fraction of bandwidth available from non-Exit nodes. Call the
total clipped advertised bandwidth for Exit nodes under consideration E,
- and the total clipped advertised bandwidth for non-Exit nodes under
and the total clipped advertised bandwidth for all nodes under
consideration T. If E<T/3, we do not consider Exit-flagged nodes.
- Otherwise, we weight their bandwidth with the factor 1-T/(3E). This
+ Otherwise, we weight their bandwidth with the factor (E-T/3)/E. This
ensures that bandwidth is evenly distributed over nodes in 3-hop paths.
- Otherwise, we weight their bandwidth with the factor (E-N/2)/(N+E-N/2) ==
- (2E - N)/(2E + N). This ensures that bandwidth is evenly distributed over
- nodes in 3-hop paths.
+ Similarly, guard nodes are weighted by the factor (G-T/3)/G, and not
+ considered for non-guard positions if this value is less than 0.
Additionally, we may be building circuits with one or more requests in
mind. Each kind of request puts certain constraints on paths: