Opened 10 years ago

Closed 9 years ago

Last modified 7 years ago

#1294 closed defect (fixed)

Bandwidth weights absent when D=0

Reported by: mikeperry Owned by: mikeperry
Priority: Low Milestone:
Component: Core Tor/Tor Version: 0.2.1.22
Severity: Keywords:
Cc: mikeperry, nickm, ilter Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description (last modified by mikeperry)

When the directory authorites vote that there are insufficient Exit nodes for them to be labled as both Exit and
Guard, the authorities fail to add a bandwidth-weights line in consensus method 9. This has two problems:

  1. We could actually create weights in may cases when this does happen.
  1. This decision is made on the individual consensus *votes*, not the final consensus. There have been several

situations so far when the authorites voted not to have Guard+Exit even though there was sufficient exit bandwidth
in the consensus, and vice-versa.

The problem is that this check probably is a good idea to perform, because of the large numbers of existing clients that
we want to avoid using Exits-as-Guards with until they update to the new weighting system.

The correct solution should be to tweak the Guard flag such that it produces a fixed amount of Guard-flagged nodes in
the actual consensus. We should allow the weights themselves to handle what to do with Guard+Exit nodes.

However, because this is a mostly harmless result that just causes clients to revert to the old weights when it
happens, and because a bit of work and thought is needed to decide how to properly allocate the Guard flag, we're
not going to just do a quick fix and allow weights for the D=0 situation. We should fix this issue once we feel
that enough clients have upgraded to 0.2.2.x for it to make sense to fix it properly.

[Automatically added by flyspray2trac: Operating System: All]

Child Tickets

Change History (5)

comment:1 Changed 9 years ago by mikeperry

Description: modified (diff)

See also bugs #1206, #1115, and #1117, which suggest that maybe we should just fix the WFU+MTBF code to always give us enough guards, and let the balancing algorithms decide what to do with Exit flagged guards.

The reason this decision should be done in the consensus is that the consensus weights are based on the actual final consensus. The decision to not vote for Exits as Guards is currently being done with incomplete information in the individual authority votes.

comment:2 Changed 9 years ago by mikeperry

Err, bugs #1206, #1116 and #1117

comment:3 Changed 9 years ago by ilter

Cc: ilter added

comment:4 Changed 9 years ago by mikeperry

Resolution: Nonefixed
Status: newclosed

This was fixed by ensuring we always vote on Exit+Guard flags for nodes. Fixed in 0.2.2.15-alpha

comment:5 Changed 7 years ago by nickm

Component: Tor RelayTor
Note: See TracTickets for help on using tickets.