Opened 4 years ago

Last modified 3 years ago

#20272 new defect

constraint broken in case 1 of consensus weight calculation

Reported by: pastly Owned by:
Priority: Medium Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: tor-dirauth weight-calculation
Cc: mikeperry Actual Points:
Parent ID: Points:
Reviewer: Sponsor:


dir-spec specifies the constraint Wmg == Wmd in case 1, but also that

Wmg = (weight_scale*(2*G-E-M))/(3*G)
Wmd = weight_scale/3

This constraint is impossible to satisfy unless it just happens that (2G-E-M)/G == 1.

Indeed, in my testing of networkstatus_compute_bw_weights_v10, I found that Wmg and Wmd were calculated as above, but the constraint was ignored.

The easy solution is to change the spec, but that would ignore the logic that went into having that constraint in the first place. I do not know the logic that went into designing the consensus weight calculations, so I do not know if this solution is appropriate.

Child Tickets

Change History (5)

comment:1 Changed 4 years ago by nickm

Cc: mikeperry added
Milestone: Tor: 0.3.0.x-final

comment:2 Changed 4 years ago by dgoulet

Keywords: triage-out-030-201612 added
Milestone: Tor: 0.3.0.x-finalTor: unspecified

Triaged out on December 2016 from 030 to Unspecified.

comment:3 Changed 4 years ago by cypherpunks

Hi pastly.

comment:4 Changed 3 years ago by nickm

Keywords: triage-out-030-201612 removed

comment:5 Changed 3 years ago by nickm

Keywords: tor-dirauth weight-calculation added
Note: See TracTickets for help on using tickets.