Opened 6 months ago

Last modified 6 months ago

#33266 new enhancement

Prop 313: 7.2. Show IPv6 Relay Counts on Consensus Health

Reported by: teor Owned by: tom
Priority: Medium Milestone:
Component: Metrics/Consensus Health Version:
Severity: Normal Keywords: prop313, ipv6
Cc: metrics-team Actual Points:
Parent ID: #33051 Points:
Reviewer: Sponsor: Sponsor55-can


Hi Tom,

Do you have some time to add some IPv6 relay counts to ?

This change is an optional part of proposal 313, which adds some IPv6 statistics to tor. There's no hurry, any time in the next few months would be great.

Before you make these changes, we need to implement a bunch of IPv6 relay changes in tor, and add an IPv6 Relay subprotocol version to tor in #33226.

Then consensus health can add an IPv6 section, which counts relays in the consensus that:

  • have an IPv6 ORPort, and
  • support IPv6 reachability checks.

We'd like to see the number of relays, and the consensus weight fraction.

The definitions of these statistics are in proposal 313, section 3:

These changes can be tested using the script in ticket #33262.

We hope that this change will:

  • help tor developers improve IPv6 support on the tor network,
  • help diagnose issues with IPv6 on the tor network, and
  • drive IPv6 adoption on tor relays.

This consensus health change is described in proposal 313, section 7.2:

Child Tickets

Change History (3)

comment:1 Changed 6 months ago by teor

Parent ID: #33052#33051

comment:2 Changed 6 months ago by tom

Yeah, this should be not-very-hard assuming the info is in the consensus. The IPv6 ORPort is easy, I know that will be there. What's the indicator in the consensus if it supports IPv6 reachability checks?

comment:3 Changed 6 months ago by teor

Tor subprotocol version Relay=3, which we haven't implemented yet:

Subprotocol versions look like this in the consensus:
pr ... Link=1-5 LinkAuth=1,3 ... Padding=2

pr lines are listed in the full (ns) consensus:

Based on proto lines in descriptors:

And parsed to RouterStatusEntryV3.protocols by Stem:

Note: See TracTickets for help on using tickets.