|
@@ -62,11 +62,30 @@ Must-have items for 0.1.2.x:
|
|
|
R - Server usability
|
|
|
N - Better hidden service performance, with possible redesign.
|
|
|
- Asynchronous DNS
|
|
|
+ - What to use? C-ares? Libdns? AGL's patch?
|
|
|
- Better estimates in the directory of whether servers have good uptime
|
|
|
(high expected time to failure) or good guard qualities (high
|
|
|
fractional uptime).
|
|
|
- - memory usage on dir servers.
|
|
|
- copy less!
|
|
|
+N . memory usage on dir servers. copy less!
|
|
|
+ o Remember offset and location of each descriptor in the cache/journal
|
|
|
+ - When sending a big pile of descs to a client, don't shove them all on
|
|
|
+ the buffer at once.
|
|
|
+ X This may require routerinfo_t or signed_descriptor_t to get slightly
|
|
|
+ refcounted. (Only slightly; we'd only need to know whether it's on
|
|
|
+ the routerlist->routers or routerlist->old_routers, and how many
|
|
|
+ directory conns are returning it.)
|
|
|
+ - Possibly, we could just to keep a list of the descriptor digests for
|
|
|
+ the descriptors we still want to send. We might end up truncating
|
|
|
+ some replies by returning fewer descriptors than were requested (if
|
|
|
+ somebody requests a desc that we throw away before we deliver it),
|
|
|
+ but this happens only when somebody wants an obsolete desc, and
|
|
|
+ clients can already handle truncated replies.
|
|
|
+ - But what do we do about compression? That's the part that makes
|
|
|
+ stuff hard.
|
|
|
+
|
|
|
+ - Make sure offset is correct in the presence of windows FS insanity.
|
|
|
+ - Consider whether it's smart to mmap cache files where possible.
|
|
|
+ - Consider whether it's smart to lazy-load routerdescs on non-directories.
|
|
|
N - oprofile including kernel time on multiple platforms
|
|
|
|
|
|
Items for 0.1.2:
|