[tor-dev] Memory usage of Tor daemon

Yawning Angel yawning at schwanenlied.me
Fri May 20 15:59:03 UTC 2016

On Fri, 20 May 2016 12:03:35 +0200
Rob van der Hoeven <robvanderhoeven at ziggo.nl> wrote:
> This worries me. If in the future the router list grows, my router
> (and many other routers running Tor) can run out of memory. For me,
> it looks a little bit strange to have an in-memory database of the
> router list. Is there a reason for having this data in memory? And,
> can something be done about it?

What's strange about it.  The client does the path selection.  To build
a circuit, the client must know the public keys/ip/port for the entire
path and the exit policy.

A few things could be done:

 * Figure out the necessary crytographic trickery to allow client
   driven path selection without the full microdescriptor list a
   la TvdW's recent-ish blog post.

 * Work off the microdescriptors saved to non-volatile storage.

   Intuitively this seems like a bad idea due to:

    * This is a lot of code, for a niche use-case.

    * Similar concerns apply to "the absolute minimum amount of flash
      that the manufacturer thinks they can get away with" being too
      small to hold the microdescriptor list.

    * Most embedded devices probably don't want to be writing out the
      microdescriptor list to non-volatile storage either, because
      flash is garbage.

 * Carry on keeping the working set in RAM under the assumption that
   manufacturers will ship more RAM in their routers as time goes on.


Yawning Angel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.torproject.org/pipermail/tor-dev/attachments/20160520/6e2b81ad/attachment.sig>

More information about the tor-dev mailing list