summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2005-08-25 20:33:17 +0000
committerNick Mathewson <nickm@torproject.org>2005-08-25 20:33:17 +0000
commit54a6a8f0ef2695423ce5e3e1583c97786a2449a5 (patch)
treed3b822efd1e52fc171cbc8d11a13b31e20339c31 /doc
parentf0893ddc8c6372b67200dad5ff4cc16fbe2ecc69 (diff)
downloadtor-54a6a8f0ef2695423ce5e3e1583c97786a2449a5.tar.gz
tor-54a6a8f0ef2695423ce5e3e1583c97786a2449a5.zip
Start implementing the server side of the new directory protocol.
Probably very buggy, since I can't actually run an authdir. Features - Generate and publish new network-status format - Code to cache and re-serve network-status objects generated by others. - Publish individual descriptors (by fingerprint, by "all", and by "tell me yours.") [Still needs compression logic] - Publish client and server recommended versions seprately. - Add digest of descriptor to routerinfo_t, so we can track them better, and length, so we can server them more easily. Cleanups - Unify code to sign directory-like things - Make resolve_my_address() able to tell you which name it wound up resolving. - Unify code to store and serve directory-like things so it all uses cached_dir_t. - Unify code to set the value of cached_dir_t objects. svn:r4835
Diffstat (limited to 'doc')
-rw-r--r--doc/TODO21
1 files changed, 16 insertions, 5 deletions
diff --git a/doc/TODO b/doc/TODO
index 0b47cf2299..bc47fc8914 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -125,17 +125,28 @@ R - check reachability as soon as you hear about a new server
- have new people be in limbo and need to demonstrate usefulness
before we approve them
- other?
- - dirservers publish router-status with all these flags.
+N . Authoritative dirservers publish very compressed network-status objects.
+ o Generate format
+ o Publish it
+N . Everyone downloads network-status objects
+ - From all directories, round-robin
+ - Cache them, reload on restart
+ o Serve cached directories
+ - If DirPort, act as a cache.
+N - Directories expose individual descriptors
+ o By server ID
+ o By 'all'
+ - By 'if-newer-than' (Does the spec require this??)
+ - Support compression.
+ o Expose "own most recent descriptor".
+N - Alice acts on network-status objects, downloading descriptors as needed.
o Servers publish new descriptors when:
o options change
o when 12-24 hours have passed
o when uptime is reset
o When bandwidth changes a lot.
- - alices fetch many router-statuses and update descriptors as needed.
- - add if-newer-than fetch options
- - dirservers allow people to lookup by N descriptors, or to fetch all.
- alices avoid duplicate class C nodes.
- - everybody with a dirport will give you his descriptor.
+ o everybody with a dirport will give you his descriptor.
- config option, on by default, to cache all descriptors.
- Compress router desc sets before transmitting them
M Analyze how bad the partitioning is or isn't.