The Tor BSD Diversity Project (TDP)

BlogFrequently Asked QuestionsResourcesGitHub RepositoriesContactTDP Hidden Service

The TDP Projects:
Tor Browser for OpenBSDBSD Tor Relay GuidesBSD Firm RelaysPorting Targets for PETsQuick-and-Dirty Static Reports

Quick-and-Dirty Static Reports

This project aims at producing simple, relevant reports for making broad conclusions about the network diversity of the public Tor relay network. While primarily providing a glance at the Tor network’s current state, some may find it useful for presentations or static, broad snapshots of Tor.

TDP focuses primarily on operating system diversity, specifically as related to BSD Unix, but such diversity applies to more than just number of relays by operating system. Other considerations are important, such as average bandwidth per relay by operating system, geographical diversity, and so on.

Currently, the reports are generated by shell scripts after retrieving the CSV data from The shell scripts will be posted on our GitHub repository as soon as they are in an intelligible form. Additional reports are in development.

At some point, the “Quick-and-Dirty Static Reports” will migrate to SQLite, and the data source may move to the newer JSON-formatted data. The broad insights of this small project remain valid regardless.

Current Reports

Country Codes Ranked by Bandwidth

Ranking in Kbps of bandwidth provided by each country code, along with the percentage of bandwidth provided by each country code. The output shows a clear over-concentation of Tor bandwidth in France, Germany, the Netherlands and the US. Only some 14 country codes contribute more than 1% of the Tor network bandwidth. Well-wired countries such as Japan, Poland, Argentina, Brazil, Denmark, Italy, Spain, Estonia, and so on should have no problem breaking the 1% threshold.

Operating Systems Ranks by Bandwidth

Ranking in Kbps of bandwidth provided by each operating system, with the relevant percentage share. This script’s results are essentially what spawned TDP in the first place: the overwhelming role of Linux in providing bandwidth to the Tor network.

FreeBSD Tor relays place second in contributed bandwidth, contributing over 5% of the total. Increased OS diversity from the other BSDs could drastically increase this diversity measure, particularly OpenBSD. As BSDs such as DragonFly and BitRig mature, we look forward to their contributions.

Operating Systems Count

Count of relays by operating system or platform, along with the percentage of each on the Tor network. This is another report showing the lack of operating system diversity in Tor relay numbers by operating system. On the point of TDP’s central purpose of raising the number of *BSD Tor relays: while there are significantly more Windows relays than FreeBSD or OpenBSD relays, both BSD operating systems provide more bandwidth, indicating a much higher bandwidth average for those two BSDs’ relays in particular.

Note that many of the Windows relays are likely Tor Browser users who are contributing bandwidth to the Tor network, implied by the low percentage of bandwidth provided despite accounting for the second most popular relay operating system. Hats off to those users. Users that don’t just want to use Tor but also contribute are vital to the network’s health.

FreeBSD, OpenBSD and NetBSD relays provide an average bandwidth per host exceeding that of Windows and Darwin (OSX), implying that those hosts are dedicated relays colocated on commercial infrastructure. In such cases, increasing “RelayBandwidthRate” in the torrc file may be a simple step to take.

Number of Relays per Country Code

Number of relays by country code. This report shows another ugly diversity picture: an overwhelming concentration of relays in Germany and the US. For those in countries with fewer relays, or among the country codes of the list below, consider running a relay.

Only nine country codes provide triple-digit (>=100) numbers of relays, yet many of the country codes with double-digit relay numbers could easily extend to the triple-digit range with some attention.

Intersecting certain country codes and operating systems reveals some other interesting observations. Japan has some 65 public Tor relays, only two of which are BSDs, which demands some attention due to Japan maintaining a large BSD user-base not to mention hosting events such as AsiaBSDCon. Turkey is another country with a significant BSD user-base, yet there are under ten relays in total, none of which run BSDs.

Country Codes without Public Tor Relays

This was was the first report created, based on the dearth of relays in a number of countries such as Pakistan, and the low number of relays in Brazil, India and Mexico. These statistics indicate where further attention to Tor relay growth should be directed.

It is understood that in some of those country codes, it is dangerous to even use Tor as a client, much less run a relay, and significant censorship means that relays are ineffective. Yet in others, some advocacy and training could significantly impact the geographical diversity of the Tor network as a whole.

Exit Relays by Country Code

Significant attention approaches the issue of user access to the Tor network with tools such as bridges and the various pluggable transports. This is logical as Tor is as much a tool for circumventing filters for censored users today as a tool for anonymity and masking the Tor user’s location.

However, user traffic exiting the Tor network deserves increased focus.

Only three or four countries host around 100 or more exit relays, meaning the US, Germany, the Netherlands and France are main conduits for Tor exit traffic. A number of scenarios could reveal a weakness in this lack of exit node location diversity, such as an outright banning of Tor relays in one of those countries.

Many Tor relays operators are concerned about running exit relays, since administering an exit relay leaves one exposed to complaints from the Tor traffics’ destinations, regardless of intent. Such problems need to be addressed to increase exit relay diversity.

Copyright © 2016 by The Tor BSD Diversity Project (TDP). All Rights Reserved.

last updated: Tue Nov 1 18:19:22 2016 UTC