[tor-commits] [torspec/master] Specify how Guard Fraction voting should occur.

nickm at torproject.org nickm at torproject.org
Mon Sep 1 20:19:45 UTC 2014


commit 7647f6d4de98acae6b71782648b0a646f11b146a
Author: George Kadianakis <desnacked at riseup.net>
Date:   Sun Aug 31 16:27:35 2014 +0300

    Specify how Guard Fraction voting should occur.
---
 proposals/236-single-guard-node.txt |   26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

diff --git a/proposals/236-single-guard-node.txt b/proposals/236-single-guard-node.txt
index d7c03d3..32327db 100644
--- a/proposals/236-single-guard-node.txt
+++ b/proposals/236-single-guard-node.txt
@@ -110,12 +110,14 @@ Status: Open
    To do so, everytime an authority needs to vote for a guard, it
    reads a set of consensus documents spanning the past NNN months,
    where NNN is the number of months in the guard rotation period (10
-   months if this proposal is adopted in full) and calculates the
-   visibility of the guard; that is, in how many consensuses it has
-   had the guard flag.
+   months if this proposal is adopted in full) and calculates in how
+   many consensuses it has had the guard flag for.
 
-   The authorities include the age of each guard by appending
-   '[SP "GV=" INT]' in the guard's "w" line.
+   Then, in their votes, the authorities include the Guard Fraction of
+   each guard by appending '[SP "GuardFraction=" INT]' in the guard's
+   "w" line. Its value is an integer between 0 and 100, with 0 meaning
+   that it's a brand new guard, and 100 that it has been present in
+   all the inspected consensuses.
 
    A guard N that has been visible for V out of NNN*30*24 consensuses
    has had the opportunity to be chosen as a guard by approximately
@@ -142,6 +144,20 @@ Status: Open
    D' = D + F*B, if N has the exit flag
    E' = E + (1-F)*B, if N has the exit flag
 
+1.3.1. Guard Fraction voting
+
+  To pass that information to clients, we introduce consensus method
+  19, where if 3 or more authorities provided GuardFraction values in
+  their votes, the authorities produce a consensus containing a
+  GuardFraction keyword equal to the low-median of the GuardFraction
+  votes.
+
+  The GuardFraction keyword is appended in the 'w' line of each router
+  in the consensus, after the optional 'Unmeasured' keyword. Example:
+    w Bandwidth=20 Unmeasured=1 GuardFraction=66
+  or
+    w Bandwidth=53600 GuardFraction=99
+
 1.4. Raise the bandwidth threshold for being a guard
 
    From dir-spec.txt:



More information about the tor-commits mailing list