[tor-bugs] #16599 [Onionoo]: Onionoo feature
Tor Bug Tracker & Wiki
blackhole at torproject.org
Wed Jul 15 14:14:56 UTC 2015
#16599: Onionoo feature
----------------------------+---------------------
Reporter: virgilgriffith | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone:
Component: Onionoo | Version:
Keywords: | Actual Points:
Parent ID: | Points:
----------------------------+---------------------
Whereas each relay is uniquely identified (by its fingerprint), families
do not have unique identifiers. We want to change that. As it is currently
unclear whether family ids will be implemented (prop 242), we (Virgil
Griffith and Sean Saito) propose the stopgap solution that, at least
within Onionoo, each family is assigned a unique positive integer (UUID)
derived from the "first_seen" field of the oldest relay within its
"effective_family" (symmetric family). If two families have exactly the
same oldest "first_seen" field, the families are assigned UUIDs based on
asciibetical order of the oldest relay's fingerprint.
'''How it works'''
To compute the UUIDs, Onionoo would iterate over all effective families
and record the earliest "first_seen" value within each effective family.
The effective families are then sorted by their first_seen value (ties
broken by asciibetical order), and assigned an index (UUID) starting from
1. This UUID number will be invariant under relays leaving / being added
to the family. When a new effective_family is discovered it is assigned
the next UUID.
'''Effective families'''
Relays of an effective family are defined as a set of relays where every
relay has a
symmetric connection to every other relay, or, in other words, every relay
points to every other relay. Work is currently being done (ticket #16276)
to resolve asymmetric connections between relays (where one relay points
to a relay but that relay does not point back).
Finally, upon receiving a request with a specific relay's fingerprint,
Onionoo would return:
1. The symmetric family, a.k.a. the "effective family" of that relay. If
there is none returns an empty list.
1. The UUID (a positive integer) of that effective family.
'''References'''
* Proposition 242
https://gitweb.torproject.org/torspec.git/tree/proposals/242-better-
families.txt
* Ticket #16276 https://trac.torproject.org/projects/tor/ticket/16276
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/16599>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list