-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
Nick Mathewson:
Circuit creation happens within the Tor protocol. How many circuit creation requests you get at once is a function of how much bandwidth you appear to have. How many you can handle is a function of how fast your CPU is, and how fast your crypto implementation is.
Slow and slow, for the Raspberry Pi. I have started gathering student hand-optimized crypto routines from around the net that are written from ARMv6, but that's a looooong ways away.
You can decrease how much bandwidth you appear to have with "MaxAdvertisedBandwidth", but you already knew that.
Yep. I just don't understand why it's so spiky.
One thing that you should try is seeing whether the latest 0.2.4.x release does any better for you. In particular, I'd recommend trying the just-released 0.2.4.16-rc, with openssl 1.0.1e, and make sure that openssl 1.0.1e was built with the -enable-ec_nistp_64_gcc_128 option if possible. (I see you're already using 1.0.1e, but it doesn't appear to have been built with that option.)
Yeah, I just noticed this morning that because I'd installed the Pi a few months ago before I upgraded to 0.2.4.x everywhere (figured I might as well when I upgraded my bridges to obfs3), it's still on 0.2.3.x.
Using 0.2.4.x should let Tor use a faster circuit extension handshake to clients that support it. It will also have Tor use an improved algorithm for deciding how long is too long for a circuit queue. Instead of limiting the queue to a fixed number, it limits the size of the queue based on the expected time to clear it.
I'll try it in the next day or two.
(Another thing to look at would be the output of ./src/test/bench in the 0.2.4.x package.)
And I'll try that and post it.
- -Gordon