On Thu, Oct 10, 2013 at 9:57 AM, Philipp Winter <identity.function@gmail.com
wrote:
On Thu, Oct 10, 2013 at 07:23:11AM +0000, Aaron wrote:
I have been working on adding a "Tor Network Test Template" to
ooni-probe;
the basic concept is to extend the Tor controller library we use
(txtorcon)
to be able to build and attach circuits to specific streams, and iterate
over
the exits in the consensus. That is, we'll provide primitives that will
allow
you to specify a network interference test and tell ooni to run that test against every exit we know about (or a subset, a specific exit, or what
have
you).
I have a very similar goal. However, instead of extending my controller (I use stem), I spawn parallel Tor processes out of a process pool (based on Python's 'concurrent' module). I assume, your scanning would be sequential?
ooni is built with Twisted (http://twistedmatrix.com/), which is a python based asynchronous event-driven framework, similar in concept to libevent. Our scheduler caps the number of 'in flight' measurements to whatever you specify in the ooniprobe.conf 'concurrency' options.
ooni-probe features a concurrency-based scheduler, so as to limit the
impact
on the network, and we've designed it to support plug-in rate limiting
hooks
if you want to do something fancier.
Rate limiting certainly sounds fancier than what I had in mind :)
We don't do anything that fancy yet, just left the stubs in place for future use as we thought they might come in handy.
Cheers, Philipp _______________________________________________ tor-dev mailing list tor-dev@lists.torproject.org https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev