[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #28807 [Core Tor/DirAuth]: Ask authority operators to set `MaxAdvertisedBandwidth 0` in their torrcs (was: Use of Directory Authorities in usual circuits may need an option to be disabled)
#28807: Ask authority operators to set `MaxAdvertisedBandwidth 0` in their torrcs
-------------------------------------------------+------------------------
Reporter: wagon | Owner: (none)
Type: enhancement | Status: new
Priority: Medium | Milestone:
Component: Core Tor/DirAuth | Version:
Severity: Normal | Resolution:
Keywords: tor-client, tor-dirauth, tor-bwauth | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
-------------------------------------------------+------------------------
Changes (by teor):
* keywords: tor-client, tor-dirauth, tor-bwauth, tor-doc, tor-spec => tor-
client, tor-dirauth, tor-bwauth
* version: Tor: 0.3.4.9 =>
* component: Core Tor/Tor => Core Tor/DirAuth
Comment:
Replying to [ticket:28807 wagon]:
> Currently, it seems that Tor clients don't use DA nodes for construction
of circuits because all DA's bandwidth is set to 20, which is a very low
value.
That's not strictly true, and the details are important.
20 is the maximum consensus weight for an unmeasured relay, set by tor
authorities.
Most unmeasured relays have weights of:
* 0 (self-reported 0 bandwidth) or
* 20 (self-reported a bandwidth of 20 or higher):
https://github.com/torproject/tor/blob/1eb3719a62074baef97ec1aa5c144096706fb97f/src/feature/dirauth/dirvote.c#L1498
Secondly, the total consensus weight right now is 58103330:
{{{
$ cat path/to/cached-microdesc-consensus | grep "^w " | cut -d= -f2 | cut
-d" " -f1 | paste -s -d+ - | bc
58103330
}}}
There are 10 authorities with a consensus weight of 20:
https://metrics.torproject.org/rs.html#search/flag:Authority
There are approximately 2 million Tor clients:
https://metrics.torproject.org/userstats-relay-country.html
Therefore, each time every client makes a circuit, this many clients will
choose an authority:
{{{
20*10*2000000/58103330 = 6.9
}}}
(Authorities are only chosen as middle nodes, because they don't have any
other relevant flags.)
So I'm not sure this is a big problem. It probably doesn't deserve much
effort from us.
A. Here's one way we could fix it:
1. Introduce a new consensus method that supports the bwweightscale and
maxunmeasuredbw consensus parameters properly (#19011)
2. Convince directory authority operators to set maxunmeasuredbw to:
* 1 (0.34 clients choosing an authority each time every client builds 1
circuit), or
* 0 (no clients choosing authorities for circuits)
But this change affects all unmeasured relays, not just authorities.
B. Here's another way we could fix it:
1. Convince directory authority operators to set `MaxAdvertisedBandwidth
0` in their torrcs
Since authorities are unmeasured, tor will use min(self-reported
bandwidth, MaxAdvertisedBandwidth, 20) as their bandwidth. sbws and
Torflow never produce results for authorities, so they will always be
unmeasured. (sbws 1.0.3 and later will also apply the
MaxAdvertisedBandwidth limit if authorities are ever measured. See #28598,
#28588.)
It seems like B is the easiest option, so I'm putting this ticket in the
DirAuth component.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28807#comment:1>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs