[tor-bugs] #12538 [Tor]: Make all relays automatically be dir caches

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Nov 10 22:26:27 UTC 2015


#12538: Make all relays automatically be dir caches
-------------------------------------------------+-------------------------
 Reporter:  cypherpunks                          |          Owner:
     Type:  task                                 |         Status:
 Priority:  High                                 |  needs_review
Component:  Tor                                  |      Milestone:  Tor:
 Severity:  Normal                               |  0.2.8.x-final
 Keywords:  tor-guard, tor-relay, prop237,       |        Version:  Tor:
  026-triaged-1, sebastian-review,               |  unspecified
  027-triaged-1-out, 028-triage, 028-triaged,    |     Resolution:
  mike-can, pre028-patch                         |  Actual Points:
Parent ID:                                       |         Points:
  Sponsor:                                       |  medium/large
-------------------------------------------------+-------------------------

Comment (by teor):

 Replying to [comment:75 nickm]:
 > Replying to [comment:74 teor]:
 > > I think if an operator sets DirCache 0, caching *and* serving should
 stop.
 > > This is analogous with setting DirPort 0, and obeys the "principle of
 least surprise".
 > > Otherwise, what can an operator do to stop serving directory documents
 right away?
 > > (For example, what if they are close to quota for the month?)
 >
 > Right, I agree that DirCache 0 should always mean "don't cache."
 >
 > The issue I was thinking about is another part of the definition of
 dir_server_mode:
 > {{{
 > int
 > dir_server_mode(const or_options_t *options)
 > {
 >   if (!options->DirCache)
 >     return 0;
 >   return (server_mode(options) || options->DirPort_set) &&
 >           router_should_be_directory_server(options, 0);
 > }
 > }}}
 >
 > This means that if `router_should_be_directory_server()` returns false,
 we'll stop serving directory information, even if DirCache was set to 1
 and/or we advertised a dir_port.
 >
 > And the `router_should_be_directory_server()` function looks not only at
 the configuration, but also at the current accounting state state, which
 is the part that makes me a little concerned.

 There's an existing Tor feature that disables the DirPort if a relay
 operator has bandwidth accounting limits enabled. This is intended to save
 upload bandwidth for (symmetrical) circuit traffic, rather than (upload-
 heavy) directory responses.

 Are you suggesting we remove this feature, and, if so, for relays using
 the new all-cache feature, or all directories?

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/12538#comment:76>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list