Browse Source

r16134@catbus: nickm | 2007-10-24 23:34:59 -0400
Merge 122 into dir-spec.txt; mark it closed.


svn:r12175

Nick Mathewson 17 years ago
parent
commit
766c41c820
4 changed files with 37 additions and 22 deletions
  1. 2 2
      doc/TODO
  2. 32 17
      doc/spec/dir-spec.txt
  3. 2 2
      doc/spec/proposals/000-index.txt
  4. 1 1
      doc/spec/proposals/122-unnamed-flag.txt

+ 2 - 2
doc/TODO

@@ -79,8 +79,8 @@ Things we'd like to do in 0.2.0.x:
     - 105: Version negotiation for the Tor protocol
     - 105: Version negotiation for the Tor protocol
     . 111: Prioritize local traffic over relayed.
     . 111: Prioritize local traffic over relayed.
       - Merge into tor-spec.txt.
       - Merge into tor-spec.txt.
-    . 122: Network status entries need an Unnamed flag
+    o 122: Network status entries need an Unnamed flag
-      - Merge into dir-spec.txt
+      o Merge into dir-spec.txt
       o Implement voting side
       o Implement voting side
         o Set Named and Unnamed sensibly
         o Set Named and Unnamed sensibly
         o Don't reject Unnamed routers.
         o Don't reject Unnamed routers.

+ 32 - 17
doc/spec/dir-spec.txt

@@ -965,6 +965,10 @@ $Id$
    binds X to some other Y'.)  A router is called 'Named' if the router
    binds X to some other Y'.)  A router is called 'Named' if the router
    believes the given name should be bound to the given key.
    believes the given name should be bound to the given key.
 
 
+   "Unnamed" -- Directory authorities that support naming should vote for a
+   router to be 'Unnamed' if its given nickname is mapped a different
+   identity.
+
    "Running" -- A router is 'Running' if the authority managed to connect to
    "Running" -- A router is 'Running' if the authority managed to connect to
    it successfully within the last 30 minutes.
    it successfully within the last 30 minutes.
 
 
@@ -1061,6 +1065,17 @@ $Id$
           _any_ authority, and if all authorities that list it list the same
           _any_ authority, and if all authorities that list it list the same
           nickname.
           nickname.
 
 
+          - If consensus-method 2 or later is in use, it is also a
+            requirement to be Named that no authority calls the router's
+            identity and nickname pair "Unnamed".
+
+        * If consenuss-method 2 or later is in use, the Unnamed flag is
+          set for a routerstatus if any authorities have voted for a different
+          identities to be Named with that nickname, or if any authority
+          lists that nickname/ID pair as Unnamed.
+
+          (With consenus-method 1, Unnamed is set like any other flag.)
+
         * The version is given as whichever version is listed by the most
         * The version is given as whichever version is listed by the most
           voters, with ties decided in favor of more recent versions.
           voters, with ties decided in favor of more recent versions.
 
 
@@ -1077,9 +1092,10 @@ $Id$
    half) generate and sign the same signed consensus.
    half) generate and sign the same signed consensus.
 
 
    To achieve this, authorities list in their votes their supported methods
    To achieve this, authorities list in their votes their supported methods
-   for generating consensuses from votes.  The method described above and
+   for generating consensuses from votes.  Later methods will be assigned
-   implemented in Tor 0.2.0.x is "1".  Later methods will be assigned higher
+   higher numbers.  Currently recognized methods:
-   numbers.
+     "1" -- The first implemented version.
+     "2" -- Added support for the Unnamed flag.
 
 
    Before generating a consensus, an authority must decide which consensus
    Before generating a consensus, an authority must decide which consensus
    method to use.  To do this, it looks for the highest version number
    method to use.  To do this, it looks for the highest version number
@@ -1488,26 +1504,25 @@ $Id$
 
 
 6.2. Managing naming
 6.2. Managing naming
 
 
-   [XXXX rewrite for v3]
-
    In order to provide human-memorable names for individual server
    In order to provide human-memorable names for individual server
    identities, some directory servers bind names to IDs.  Clients handle
    identities, some directory servers bind names to IDs.  Clients handle
    names in two ways:
    names in two ways:
 
 
    When a client encounters a name it has not mapped before:
    When a client encounters a name it has not mapped before:
 
 
-      If all the live "Naming" network-status documents the client has
+      If the consensus lists any router with that name as "Named", or if
-      claim that the name binds to some identity ID, and the client has at
+      consensus-method 2 or later is in use and the consensus lists any
-      least three live network-status documents, the client maps the name to
+      router with that name as having the "Unnamed" flag, then the name is
-      ID.
+      bound.  (It's bound to the ID listed in the entry with the Named,
-
+      or to an unknown ID if no name is found.)
-   When a user tries to refer to a router with a name that does not have a
+
-   mapping under the above rules, the implementation SHOULD warn the user.
+   When the user refers to a bound name, the implementation SHOULD provide
-   After giving the warning, the implementation MAY use a router that at
+   only the router with ID bound to that name, and no other router, even
-   least one Naming authority maps the name to, so long as no other naming
+   if the router with the right ID can't be found.
-   authority maps that name to a different router.  If no Naming authority
+
-   maps the name to a router, the implementation MAY use any router that
+   When a user tries to refer to a non-bound name, the implementation SHOULD
-   advertises the name.
+   warn the user. After warning the use, the implementation MAY use any
+   router that advertises the name.
 
 
    Not every router needs a nickname.  When a router doesn't configure a
    Not every router needs a nickname.  When a router doesn't configure a
    nickname, it publishes with the default nickname "Unnamed".  Authorities
    nickname, it publishes with the default nickname "Unnamed".  Authorities

+ 2 - 2
doc/spec/proposals/000-index.txt

@@ -44,7 +44,7 @@ Proposals by number:
 119  New PROTOCOLINFO command for controllers [CLOSED]
 119  New PROTOCOLINFO command for controllers [CLOSED]
 120  Suicide descriptors when Tor servers stop [OPEN]
 120  Suicide descriptors when Tor servers stop [OPEN]
 121  Hidden Service Authentication [OPEN]
 121  Hidden Service Authentication [OPEN]
-122  Network status entries need a new Unnamed flag [OPEN]
+122  Network status entries need a new Unnamed flag [CLOSED]
 123  Naming authorities automatically create bindings [OPEN]
 123  Naming authorities automatically create bindings [OPEN]
 
 
 
 
@@ -61,7 +61,6 @@ Proposals by status:
    117  IPv6 exits
    117  IPv6 exits
    120  Suicide descriptors when Tor servers stop
    120  Suicide descriptors when Tor servers stop
    121  Hidden Service Authentication
    121  Hidden Service Authentication
-   122  Network status entries need a new Unnamed flag
    123  Naming authorities automatically create bindings
    123  Naming authorities automatically create bindings
  ACCEPTED:
  ACCEPTED:
    101  Voting on the Tor Directory System
    101  Voting on the Tor Directory System
@@ -81,6 +80,7 @@ Proposals by status:
    108  Base "Stable" Flag on Mean Time Between Failures
    108  Base "Stable" Flag on Mean Time Between Failures
    109  No more than one server per IP address
    109  No more than one server per IP address
    119  New PROTOCOLINFO command for controllers
    119  New PROTOCOLINFO command for controllers
+   122  Network status entries need a new Unnamed flag
  SUPERSEDED:
  SUPERSEDED:
    112  Bring Back Pathlen Coin Weight
    112  Bring Back Pathlen Coin Weight
  DEAD:
  DEAD:

+ 1 - 1
doc/spec/proposals/122-unnamed-flag.txt

@@ -4,7 +4,7 @@ Version: $Revision$
 Last-Modified: $Date$
 Last-Modified: $Date$
 Author: Roger Dingledine
 Author: Roger Dingledine
 Created: 04-Oct-2007
 Created: 04-Oct-2007
-Status: Accepted
+Status: Closed
 
 
 1. Overview:
 1. Overview: