Opened 5 years ago

Last modified 3 years ago

#16954 new enhancement

Refactor chutney networks: increase configurability, reduce code duplication

Reported by: teor Owned by:
Priority: Medium Milestone:
Component: Core Tor/Chutney Version:
Severity: Normal Keywords: testing
Cc: Actual Points:
Parent ID: #16949 Points:
Reviewer: Sponsor:


Refactor the existing chutney networks to increase configurability and reduce code duplication.
Make it easier to mix and match particular authority, middle relay, client (standard, bridge, IPv6 bridge) and endpoint (exit, hidden service) nodes.
Also make version mixing easier.
Have a replaceable minimal default?
3 authorities, 1 client, 1 bridge client, 1 bridge, 1 middle, 1 exit, 1 hs

  • each network includes 3 authorities, 1 client or bridge client, 1 exit or hs, and however many middles are required to do a fast bootstrap (assuming reachability)
  • work out a way to select between client / bridge client, and exit or hs endpoints
  • create a way to do a full bootstrap (no assuming reachability) by flipping one setting (change torrc options, add middle relays to some minimum of auth + exit + middle: 4? 5?)
  • work out a way to add IPv6 bridges, old tor versions, and other features I'm forgetting
  • work out a way to scale network size by multiplication, either of all nodes, or of particular node roles (start point, relay, end point), or of individual node configurations
  • work out what syntax Python needs to include one configuration in another

Maybe it could look like this:

  • core: authorities, non-exit relays?
  • client: client, bridge, IPv6 bridge (choose at least one)
  • endpoint: exit, hs (choose at least one)
  • bootstrap: fast or full (choose one)
  • version: built, system (choose at least one)

Then combined to give us all the networks that currently exist, without needing to cut and paste between network configurations.

Child Tickets

#17014enhancementnewchutney: automate discovery and use of different tor versions

Change History (3)

comment:1 Changed 4 years ago by nickm

Owner: nickm deleted
Status: newassigned

Remove myself as chutney ticket owner. Default owners are trouble.

comment:2 Changed 4 years ago by nickm

Status: assignednew

comment:3 Changed 3 years ago by teor

Severity: Normal

Set all open tickets without a severity to "Normal"

Note: See TracTickets for help on using tickets.