Hi Roger,
(There are some edge cases where I failed to reach the relay as the first hop, for example because it has gone down, or it's in the new consensus but my Tor client doesn't have the descriptor for it yet. I've omitted those edge cases from the ratio calculation, since they're not failures and they're not successes so they just muddy the analysis.)
Just to check I understand correctly - The attempt is
considered a failure if (and only if) you can connect to the
test relay correctly, but can't extend from the test relay to
your own relay?
As many of these relays have weights, presumably they can
successfully extend to at least some relays in order to have
their bandwidth measured. I wonder how the probabilities would
look if you tested with a some other (highly weighted) relays in
the 2nd-hop position?
I'm simply making two-hop paths from my client through every relay to my destination relay. Here's a snapshot of some relays that fail most/all of the extend attempts.
Would you be comfortable sharing the unfiltered dataset? It would
be interesting to approximate the probability a client circuit is
impacted by this kind of failure.
I wrote a little python script (attached) which uses your output
and Onionoo's provided probabilities:
python3 weights.py
Loaded 180 relay extension failure probabilities from Roger's dataset
Loaded 7103 relay circuit probabilities from Onionoo
Over-estimate of probability circuit is impacted by connectivity issue 6.0070908572010426e-05
Best,
Dennis