Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
Trac
Trac
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Create a new issue
  • Issue Boards

GitLab is used only for code review, issue tracking and project management. Canonical locations for source code are still https://gitweb.torproject.org/ https://git.torproject.org/ and git-rw.torproject.org.

  • Legacy
  • TracTrac
  • Issues
  • #26155

Closed (moved)
Open
Opened May 21, 2018 by teor@teor

Bandwidth file Timestamp is the latest scanner result, not the file creation time

The bandwidth file timestamp should be the last time a relay was scanned. But we say it's the file creation time, which is wrong.

in torflow, the timestamp is actually the oldest of the most recent timestamps for all scanners: https://gitweb.torproject.org/torflow.git/tree/NetworkScanners/BwAuthority/aggregate.py#n409 (This is buggy in small networks, because the unmeasured node scanner may end up in a state where is never has any nodes to scan. But we are not fixing torflow bugs.)

Here's how I suggest we fix the spec issue:

Replace the initial Timestamp with:

  Timestamp NL

    [At start, exactly once.]

    The Unix Epoch time in seconds of the most recent scanner result.

    If there are multiple scanners which can fail independently, implementations
    SHOULD take the most recent timestamp from each scanner and use the
    oldest value. This ensures all the scanners continue running.

    If there are scanners that do not run continuously, they SHOULD be excluded
    from the timestamp calculation,

    It does not follow the KeyValue format for backwards
    compatibility with version 1.0.0.

Add a file creation date:

  "file_created=" DateTime NL

    [Zero or one time.]

    The date and time timestamp in ISO 8601 format and UTC time zone
    when the file was created.

    This Line has been added in version 1.1.0 of this specification.

Add a latest bandwidth in human-readable format:

  "latest_bandwidth=" DateTime NL

    [Zero or one time.]

    The date and time timestamp in ISO 8601 format and UTC time zone
    of the most recent scanner result.

    This time MUST be identical to the initial Timestamp line.

    This duplicate value is included to make the format easier for people
    to read.

    This Line has been added in version 1.1.0 of this specification.
To upload designs, you'll need to enable LFS and have admin enable hashed storage. More information
Assignee
Assign to
Tor: 0.3.5.x-final
Milestone
Tor: 0.3.5.x-final
Assign milestone
Time tracking
None
Due date
None
Reference: legacy/trac#26155