Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • S sbws
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 7
    • Issues 7
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • The Tor Project
  • Network Health
  • sbws
  • Issues
  • #40081

Closed
Open
Created Mar 22, 2021 by juga@jugaMaintainer

Scale using the tor's last descriptor, not the measurent's one

For every new consensus, Torflow store the descriptors' values in a the database and use them when aggregating/scaling, so it's scaling with last obtained descriptors.

Instead, sbws write those values to the results files at the time the relay is measured and use them when scaling. Therefore, the relays might have updated their descriptors since they were measured.

Since the final weight depends mostly on the relay observed bandwidth, not the measured one, it's penalizing new relays that would have low or 0 observed bandwidth at the time of the measurement, but higher in one day and sbws won't see that in ~4 days.

This would also fix #2550 (moved). A different question would be #28985 (moved).

This can be implemented reading the cached descriptors, to don't have to connect to the control port, because that's done in the scaling part, which is separated from the scanning one.

Thanks @arma for raising this in #tor-dev.

Assignee
Assign to
Time tracking