[tor-commits] [torspec/master] Add consensus method 27, which adds IPv6 addresses to the micro consensus

nickm at torproject.org nickm at torproject.org
Mon Dec 4 16:48:48 UTC 2017


commit fdc8f3e8c627cbd35c501f77cf81ebcaea70a3a6
Author: teor <teor2345 at gmail.com>
Date:   Tue Oct 17 22:32:31 2017 -0400

    Add consensus method 27, which adds IPv6 addresses to the micro consensus
    
    Documents #23826.
---
 dir-spec.txt | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/dir-spec.txt b/dir-spec.txt
index 846f7a9..7b636c4 100644
--- a/dir-spec.txt
+++ b/dir-spec.txt
@@ -2386,8 +2386,10 @@
        * the router advertises at least one IPv6 ORPort, and
        * AuthDirHasIPv6Connectivity 1 is set on the authority.
    A minority of voting authorities that set AuthDirHasIPv6Connectivity will
-   drop unreachable IPv6 addresses from the full consensus. But they can not
-   drop IPv6 addresses from microdescriptors.
+   drop unreachable IPv6 ORPorts from the full consensus. But they can not
+   drop IPv6 ORPorts from microdescriptors. Consensus method 27 in 0.3.3.x
+   puts IPv6 ORPorts in the microdesc consensus, so that authorities can
+   drop unreachable IPv6 ORPorts from all consensus flavours.
 
    "Stable" -- A router is 'Stable' if it is active, and either its Weighted
    MTBF is at least the median for known active routers or its Weighted MTBF
@@ -2712,6 +2714,9 @@
           bandwith weights to 1 in our calculations, to avoid
           division-by-zero errors on unusual networks.
 
+        * If consensus method 27 or later is used, the microdesc consensus
+          may include an "a" line for each router, listing an IPv6 OR port.
+
      The signatures at the end of a consensus document are sorted in
      ascending order by identity digest.
 
@@ -2793,6 +2798,7 @@
      "24" -- No longer lists routers that are not Valid in the consensus.
      "25" -- Vote on recommended-protocols and required-protocols.
      "26" -- Initialize bandwidth weights to 1 to avoid division-by-zero.
+     "27" -- Adds support for "a" lines in microdescriptor consensues.
 
    Before generating a consensus, an authority must decide which consensus
    method to use.  To do this, it looks for the highest version number
@@ -3083,10 +3089,11 @@
 
         [Any number]
 
-        IPv6 ORPorts are contained in microdescriptors and therefore omitted
-        in the microdescriptor consensus.
+        Identical to the "r" lines in section 3.4.1.
 
-        Not currently generated.
+        (Only included when the vote is generated with consensus-method 14
+        or later, and the consensus is generated with consensus-method 27 or
+        later.)
 
     "p" ... NL
 





More information about the tor-commits mailing list