I found this in torflow.git/NetworkScanners/BwAuthority:
if n.idhex in prev_consensus: if prev_consensus[n.idhex].bandwidth != None: prev_consensus[n.idhex].measured = True tot_net_bw += n.new_bw if IGNORE_GUARDS \ and ("Guard" in prev_consensus[n.idhex].flags and not "Exit" in \ prev_consensus[n.idhex].flags): plog("INFO", "Skipping voting for guard "+n.nick) n.ignore = True elif "Authority" in prev_consensus[n.idhex].flags: plog("DEBUG", "Skipping voting for authority "+n.nick) n.ignore = True
I've been running this on moria1's bwauth and it seems to do what I want:
--- a/NetworkScanners/BwAuthority/aggregate.py+++ b/NetworkScanners/BwAuthority/aggregate.py@@ -752,9 +752,9 @@ def main(argv): prev_consensus[n.idhex].flags): plog("INFO", "Skipping voting for guard "+n.nick) n.ignore = True- elif "Authority" in prev_consensus[n.idhex].flags:- plog("DEBUG", "Skipping voting for authority "+n.nick)- n.ignore = True+# elif "Authority" in prev_consensus[n.idhex].flags:+# plog("DEBUG", "Skipping voting for authority "+n.nick)+# n.ignore = True # Go through the list and cap them to NODE_CAP for n in nodes.itervalues():
The downside is that moria1 can't lie so well using maxadvertisedbandwidth.
The component is torflow already -- it'll be a couple more days before I can merge any patches. Is there a reason why we skipped measuring the authorities before?
Is there a reason why we skipped measuring the authorities before?
git show d80be0c8 is our best hope (it offers no insights). Mike is the best person to answer.
It might have been so the MaxAdvertisedBandwidth hack could still work for authorities (so the bwauths don't discover that they're secretly very fast, and pump up traffic to them).
This is clearly not a blocker.
And we should either stop scanning authorities entirely (#20797 (moved)), or report correct results for them (#8684 (moved)).
Trac: Reviewer: N/AtoN/A Severity: N/Ato Normal Parent: N/Ato#20797 (moved) Sponsor: N/AtoN/A Priority: High to Medium