[or-cvs] clean 0.0.7 items from todo list, add distributed/decentral...

Roger Dingledine arma at seul.org
Mon Jun 14 23:34:32 UTC 2004


Update of /home/or/cvsroot/doc
In directory moria.mit.edu:/home2/arma/work/onion/cvs/doc

Modified Files:
	TODO 
Log Message:
clean 0.0.7 items from todo list, add distributed/decentralized-tor items


Index: TODO
===================================================================
RCS file: /home/or/cvsroot/doc/TODO,v
retrieving revision 1.118
retrieving revision 1.119
diff -u -d -r1.118 -r1.119
--- TODO	2 Jun 2004 20:06:25 -0000	1.118
+++ TODO	14 Jun 2004 23:34:29 -0000	1.119
@@ -11,32 +11,64 @@
         D Deferred
         X Abandoned
 
-For 0.0.7:
-        o allow multiple log files
-        o *bindaddress
-          o include the port
-          o allow multiple of them
-          o have an allow/deny series for socks
-        o break exitpolicy into multiple config lines
-        o have the OP forget routers it hasn't heard about in 24 hours
-        D try to break apart the main clump of functions better.
-        o rend_services_introduce should check if it's failed a lot
-          recently, and not try for a while if so
-        o check tor version as soon as you get the recommended-versions
-          string, regardless of whether parsing the directory succeeded.
-NICK    o Check directory signature based on signer ID, not on who
-          we got it from
-ARMA    o Increase all the scalability constants
-
 For scalability:
         - Slightly smarter bandwidth management: use link capacity
           intelligently.
         - Handle full buffers without totally borking
 
-For 0.0.8:
-NICK    . rename/rearrange functions for what file they're in
-ARMA    - make all ORs serve the directory too.
+For dtor:
+        . rename/rearrange functions for what file they're in
+        - make all ORs serve the directory too.
+          - servers publish opt dircacheport
+          - make clients read that and use it.
+          - make clients able to read a normal dirport from non-trusted OR too
+          - "AuthoritativeDir 1" for dirservers
+          - make ORs parse-and-keep the directory they pull down
+          - authoritativedirservers should pull down directories from
+            other authdirservers, to merge descriptors.
+        - users can set their bandwidth, or we auto-detect it:
+          - advertised bandwidth defaults to 10KB
+          - advertised bandwidth is the min of max seen in each direction
+            in the past N seconds.
+          - not counting "local" connections
+          - round detected bandwidth up to nearest 10KB
+        - client software not upload descriptor until:
+          - you've been running for an hour
+          - it's sufficiently satisfied with its bandwidth
+          - it decides it is reachable
+          - start counting again if your IP ever changes.
+          - never regenerate identity keys, for now.
+          - you can set a bit for not-being-an-OR.
+        - clients choose nodes proportional to advertised bandwidth
+        - authdirserver includes descriptor and lists as running iff:
+          - he can connect to you
+          - he has successfully extended to you
+          - he has sufficient mean-time-between-failures
+        - Have clients and dirservers preserve reputation info over
+          reboots.
+        - nickname defaults to first piece of hostname
+        - running-routers list refers to nickname if verified, else
+          hash-base64'ed.
+        - allow dirservers to server running-router list separately.
+          - "get /running-routers" will fetch just this.
+        - tor remembers descriptor-lists across reboots.
+        - Packages define datadir as /var/lib/tor/. If no datadir is defined,
+          then choose, make, and secure ~/.tor as datadir.
+        - refer to things by key:
+          - extend cells need ip:port:identitykeyhash.
+          - also use this in intro points and rendezvous points, and
+            hidserv descs.
+          - figure out what to do about ip:port:differentkey
+        - ORs connect on demand. attach circuits to new connections, keep
+          create cells around somewhere, send destroy if fail.
+        - add new "RelayOnly 1" config variable?
+          - if torrc not found, exitpolicy reject *:*
         - Contact info, pgp fingerprint, comments in router desc.
+          - Add a ContactInfo line to torrc, which gets published in
+            descriptor (as opt)
+        - write tor version at the top of each log file
+        - generalize our transport: add transport.c in preparation for
+          http, airhook, etc transport.
 
 For September:
 NICK    . Windows port
@@ -51,17 +83,17 @@
 
         - Docs
           - FAQ
-          - overview of tor. how does it work, what's it do, pros and
+          o overview of tor. how does it work, what's it do, pros and
             cons of using it, why should I use it, etc.
           - a howto tutorial with examples
-          - tutorial: how to set up your own tor network
+          o tutorial: how to set up your own tor network
             - (need to not hardcode dirservers file in config.c)
           . correct, update, polish spec
           - document the exposed function api?
           - document what we mean by socks.
 
-NICK    - packages
-          - rpm
+NICK    . packages
+          . rpm
           - find a long-term rpm maintainer
 
         - code
@@ -103,7 +135,7 @@
         . Scrubbing proxies
                 - Find an smtp proxy?
                 . Get socks4a support into Mozilla
-        - Extend by nickname/hostname/something, not by IP.
+        X Extend by nickname/hostname/something, not by IP.
         - Need a relay teardown cell, separate from one-way ends.
         - Make it harder to circumvent bandwidth caps: look at number of bytes
           sent across sockets, not number sent inside TLS stream.
@@ -151,7 +183,7 @@
   Let dissidents get to Tor servers via Tor users. ("Backbone model")
 
 Anonymity improvements:
-  Is abandonding the circuit the only option when an extend fails, or
+  Is abandoning the circuit the only option when an extend fails, or
     can we do something without impacting anonymity too much?
   Is exiting from the middle of the circuit always a bad idea?
   Helper nodes. Decide how to use them to improve safety.



More information about the tor-commits mailing list