I’ve setup a bridge on a newly flashed Raspberry Pi 2 with raspbian lite following torrc configuration recommendations from this page:
And it seems like it’s working: https://i.imgur.com/xTGPAYL.jpg
But I have some questions:
- The flags will show up how long more or less after the node is running? Does it matter that currently it’s “none”?
- Seems like all the networking is done only on the single main thread: Tor: Threading in Tor so does this mean the bottleneck for this node will be the CPU rather than the bandwidth? The Pi2 has four 900mhz cores, but the connection with the isp is 1gbps.
- If the node transfer rate is severely limited, is it still worth running it? Maybe for the extra bridge IP it can provide?
“none” flags when you are running a bridge is normal, you won’t get any flags unlike the tor middle relays.
To give you my experience about Raspberry Pi, I tried to run a middle relay on a raspberry pi 3B and given the number of connections and the bandwidth to manage, it was very often overloaded. The CPU was blocking at 100% which was causing problems. I have set limits of 2 MB/s but even so, from time to time you can have spikes in connections that make you overload. It depends on the usage. Again, this is a different case from yours.
For a bridge, this requires far fewer connections and bandwidth since connections are made based on demand and distribution mode (which distribution mode are you using ?). For me, the raspberry pi 2 will work without any problem if you are careful to set a bandwidth limit to avoid CPU overload. The bottleneck will be the CPU rather than the bandwidth in this case.
Each bridge is very important and necessary for the proper functioning of the tor network, your new bridge will help many people to bypass the censorship. Since the bridge is not used as much as a relay, this is the best solution for a Raspberry Pi 2.
This is my thoughts on your question, I’ll let someone else add their experience on the subject if necessary.
Thanks for running a bridge for the Tor network
As a good programmer, I forget I could and should test the stuff I “develop”. Not really develop in this case, just set it up.
I connected the tor browser to my own bridge and fired up two youtube HD videos and they worked completely fine. Tor/obfs4 was using multiple cores, and with 3MB/s it seemed to be at 350% (80% on all cores). So this Pi2 bridge is staying on.
Thanks for your feedback.
Have you checked if your bridge is distributed in the BridgeDB ? In order to confirm that everything is working well and that other people can access your bridge.
As you have seen, with little bandwidth used, you will quickly reach 100% of the CPU, so you will have to check that it does not saturate and first set a bandwidth limit. This will improve user connections and avoid too much latency or loss.
Thanks for hosting a bridge for the tor network.