Opened 2 months ago

Last modified 2 months ago

#28510 new defect

When relays reset bandwidth tests, the test waits until the next directory document is received

Reported by: teor Owned by:
Priority: Medium Milestone: Tor: unspecified
Component: Core Tor/Tor Version:
Severity: Normal Keywords: tor-bwauth, 035-backport, 034-backport-maybe, 033-backport-maybe, 029-backport-maybe-not
Cc: Actual Points:
Parent ID: #22453 Points:
Reviewer: Sponsor:

Description

When Tor is doing its first ORPort reachability test, it initiates one testing circuit after the first successful circuit, then one testing circuit per second until the ORPort is found reachable. Then it gives up after 20 minutes. (1200 circuits is too many.)

When tor receives any descriptor or consensus, it does another ORPort reachability test, and initiates a testing circuit.

When a testing circuit opens, and there aren't enough testing circuits to test bandwidth, then tor initiates another testing circuit.

But no testing circuits are opened after the bandwidth tests are reset.

So tor waits for the next directory document before doing a bandwidth test. We should just lunacy the tests straight away.

This is a bug on the original feature in commit 769f9201a68387c2cdf03e1efd28399c93bb2bdf in 0.1.2.2-alpha.

Child Tickets

Change History (3)

comment:1 Changed 2 months ago by teor

To fix this bug, we should call:

  • router_do_reachability_checks(1, 0) from reset_bandwidth_test()
  • router_do_reachability_checks(1, 1) from router_reset_reachability()

comment:2 Changed 2 months ago by teor

Here's a changes file:

    - Start relay bandwidth self-tests at the scheduled time, rather than
      waiting for the next directory document. Fixes bug 28510;
      bugfix on 0.1.2.2-alpha

comment:3 Changed 2 months ago by teor

Milestone: Tor: 0.4.0.x-finalTor: unspecified

We might remove the bandwidth tests after sbws is deployed.

Note: See TracTickets for help on using tickets.