Opened 6 years ago

Closed 22 months ago

#8684 closed defect (wontfix)

bwauth files don't include opinions about Authorities

Reported by: arma Owned by:
Priority: Medium Milestone:
Component: Core Tor/Torflow Version:
Severity: Normal Keywords: tor-dirauth
Cc: mikeperry, aagbsn Actual Points:
Parent ID: #20797 Points:
Reviewer: Sponsor:

Description

It appears that moria1's bwauth doesn't provide an opinion about moria1, or any authority for that matter.

And no authorities provide Measured lines for turtles.

I suspect there's code in the bwauth to skip measuring authorities.

That's going to be bad now that we've turned on #8435.

The right fix might be to change the bwauths. But for now I'm filing as a Tor bug until we figure out where to fix it.

Child Tickets

Change History (23)

comment:1 Changed 6 years ago by arma

Cc: mikeperry aagbsn added

comment:2 Changed 6 years ago by nickm

Keywords: tor-auth added

What would we like here for a Tor fix, assuming we do this in tor?

comment:3 Changed 6 years ago by arma

If we fix this in tor, i believe the fix is to give authorities a free pass, i.e. count them as measured and believe their claimed bandwidth.

comment:4 Changed 6 years ago by nickm

Status: newneeds_review

Sketch of a fix in branch "bug8684"

comment:5 Changed 6 years ago by arma

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

Might be a quite easy fix on the bwauth side.

comment:6 Changed 6 years ago by nickm

If it's really measuring but not voting there, then yeah, that does sound easy. Then again, the in-tor fix isn't hard either.

comment:7 in reply to:  6 ; Changed 6 years ago by arma

Replying to nickm:

If it's really measuring but not voting there, then yeah, that does sound easy. Then again, the in-tor fix isn't hard either.

I commented out those last three lines, and reran aggregate, and it produced a line about moria1.

That said, it didn't produce a line about turtles or tor26. I admit that I do not know why.

comment:8 in reply to:  7 Changed 6 years ago by arma

Replying to arma:

That said, it didn't produce a line about turtles or tor26. I admit that I do not know why.

Oh! I bet it's because neither of them have the Fast flag. #8688.

comment:9 Changed 6 years ago by nickm

Component: TorTorflow

comment:10 Changed 6 years ago by arma

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.

comment:11 Changed 6 years ago by nickm

If the plan is to fix this on the bwauth side, can we just turn this into a bwauth ticket?

comment:12 Changed 6 years ago by aagbsn

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?

comment:13 Changed 6 years ago by nickm

Owner: set to aagbsn
Status: needs_reviewassigned

comment:14 in reply to:  12 Changed 6 years ago by arma

Replying to aagbsn:

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).

comment:15 Changed 6 years ago by nickm

Milestone: Tor: 0.2.4.x-final

Calling this a torflow issue.

comment:16 Changed 2 years ago by dgoulet

Keywords: tor-dirauth added; tor-auth removed

Turns out that tor-auth is for directory authority so make it clearer with tor-dirauth

comment:17 Changed 23 months ago by teor

Parent ID: #20797
Priority: HighMedium
Severity: Normal

This is clearly not a blocker.
And we should either stop scanning authorities entirely (#20797), or report correct results for them (#8684).

comment:18 Changed 23 months ago by teor

Priorities and Severities in torflow are meaningless, setting them all to Medium/Normal.

comment:19 Changed 23 months ago by teor

Owner: aagbsn deleted

aagbsn was the default owner, unassigning

comment:20 Changed 22 months ago by arma

Dear past arma,

Why is it that doing #8435 meant that this ticket needed to be done?

Right now, once enough dir auths run bwauths, the dir auths will basically lose all of their consensus flags that have to do with speed -- Fast, Guard, etc.

But, is that a problem?

comment:21 Changed 22 months ago by Sebastian

I think that's a feature

comment:22 Changed 22 months ago by arma

Agreed.

I think bwauths should skip over authorities, causing them to get little to no attention from clients.

comment:23 Changed 22 months ago by teor

Resolution: wontfix
Status: assignedclosed

See #20797 for the "stop scanning authorities" fix.

Note: See TracTickets for help on using tickets.