[tor-bugs] #21378 [Metrics/CollecTor]: Archive bwauth bandwidth files
Tor Bug Tracker & Wiki
blackhole at torproject.org
Mon Nov 5 09:51:35 UTC 2018
#21378: Archive bwauth bandwidth files
------------------------------------+------------------------------
Reporter: tom | Owner: metrics-team
Type: enhancement | Status: new
Priority: Medium | Milestone:
Component: Metrics/CollecTor | Version:
Severity: Normal | Resolution:
Keywords: tor-bwauth tor-dirauth | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
------------------------------------+------------------------------
Changes (by karsten):
* cc: metrics-team (added)
* priority: Low => Medium
Old description:
> The raw bwauth votes (sample:
> https://bwauth.ritter.vg/bwauth/bwscan.V3BandwidthsFile) contain
> information such as last measured time, circuit failures and (eventually)
> scanner information. This can be used for debugging purposes.
>
> Blocked by #21377
New description:
The raw bwauth votes (sample:
https://bwauth.ritter.vg/bwauth/bwscan.V3BandwidthsFile) contain
information such as last measured time, circuit failures and (eventually)
scanner information. This can be used for debugging purposes.
Blocked by #21377, possible next steps in [#comment:14 comment 14].
--
Comment:
I just went through the long discussion above and tried to identify next
steps. irl's list of needed changes looks pretty good. I'll add some
thoughts to these steps below that we need to discuss when implementing
this.
Replying to [comment:10 irl]:
> It looks like the changes that are needed are:
> 1) Teach RelayDescriptorDownloader to download the new URL (in the
[https://gitweb.torproject.org/collector.git/tree/src/main/java/org/torproject/collector/relaydescs/RelayDescriptorDownloader.java#n685
downloadDescriptors] function)
- We can either attempt to fetch this file from each authority every
time, or we can have a config option which authorities should have them.
In the future, we can switch to fetching only those files that are
referenced from votes, unless for some reason we want to have non-
referenced files, too.
- The relaydescs module runs twice per hour, so it's going to download
the file twice every hour. Again, if we only fetch referenced files, we
wouldn't download the same file more than once. But it sounds like the
initial version will be rather simple in this regard. Which is fine.
- I assume there are no plans that authorities serve bandwidth files of
other authorities? That's different for votes which are cached by other
authorities. Should be fine, but something to consider for the future.
> 2) Teach
[https://gitweb.torproject.org/collector.git/tree/src/main/java/org/torproject/collector/relaydescs/RelayDescriptorParser.java
RelayDescriptorParser] to recognise the file
- While we're waiting for #21377, can we have a sample file to start
writing some parsing code?
> 3) Teach
[https://gitweb.torproject.org/collector.git/tree/src/main/java/org/torproject/collector/relaydescs/ArchiveWriter.java
ArchiveWriter] where it should put the files in CollecTor's hierachy
- Let's discuss what should go into the file name. Timestamp,
fingerprint, and digest? Maybe something similar to the vote file name
format (with some parts shortened): `2018-11-05-09-00-00-vote-
EFCBE720[...]-0D97EDB6[...]`?
- As part of this step, we might have to teach metrics-lib to recognize
the new descriptor type. I believe that CollecTor will store it anyway,
but it's going to complain loudly. Just in case it acts up, we can teach
metrics-lib to just recognize the descriptor type without providing
getters for descriptor contents.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/21378#comment:14>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list