[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: Ideas on increasing the significance of tor



Coming back to the matter of speed: what do we need to increase the
performance of the tor network? More tor (exit) nodes, right? (please
correct me if I'm wrong)

More nodes is not the answer. You could add one million dialup speed
nodes, and not improve the speed of Tor.

More bandwidth is part of the answer. One exit node with 21 gigawatts,
err, enough bandwidth might improve (possibly doubling) the speed of
Tor -- IF it has enough CPU power to run things.

I've seen circuits with only high-speed nodes (over 900 KB/s, as
reported by Vidallia) operate slowly (and the web server is fast as
soon as I switch Tor off). So bandwidth isn't the limit either.

The best I can conclude, from limited observations, is that CPU
overhead is critical. More connections are made to high bandwidth
nodes than they can handle (there is no "I'm full, I'm rejecting your
connection request" message in the Tor protocol that I know of).

The second limit is node speed. There's no way to say "Only use nodes
with at least <N> speed in my connections". As soon as I get a node
with less than 150 KB/s in my paths, my speed will be lower with Tor,
because that's my download speed.

The third limit is number of active connections. If I'm downloading a
file, I don't mind 20 KB/s paths *IF* I can use multiple paths. My
download manager is happy to work with 10 parts at once.

So, my suspicions:

1. An easy way to toggle between "At least speed X" (for
single-threaded web browsing) and "Any speed, many connections" (for
downloads).
2. A way to keep nodes from being CPU starved from the encryption
processing (high bandwidth nodes)
3. A way to keep nodes from being bandwidth starved (the main limit on
middle-speed nodes).