On Mon, Jun 01, 2015 at 11:02:53AM -0500, Tom Ritter wrote:
Hrm. So this gets into the inner workings of the bwauth system which is... complicated.[0] Honestly, I'm not actually sure how the individual data from the different bwauths is combined into a single value for the consensus.
The weight in the consensus is the median of the bwauth votes.
(That design aims to best resist manipulation of the weight by a small number of bwauths.)
I'm not sure what the answer is for your problem, but I'm beginning to wonder if the general approach to this problem is "There should be a bwauth debugging mechanism similar to https://consensus-health.torproject.org/ or (the unimplemented) proposal 164." I don't know if said mechanism would be a component of atlas/globe or an entirely separate site, but if the bwauths exported their hourly files, and this hypothetical tool aggregated that data, it may help figure these things out. It might give an answer like "moria spazzed out and undervoted me, let me wait until it scans me again."
Yes, I'd love to have something like this. Once upon a time I asked for us to export more of the bwauth internals: https://trac.torproject.org/projects/tor/ticket/2532 But at the time Mike decided that the intermediate bwauth numbers weren't useful enough to export.
Another ticket you might enjoy is: https://trac.torproject.org/projects/tor/ticket/2394
I think ultimately we need somebody to simplify the bwauth design as much as possible (but no more), and then we can start assessing its output to see how it compares to reality.
In parallel, or maybe instead, we might want more work on bandwidth estimation algorithms that are resilient to cheating. Right now the bwauth results can be gamed, and making them harder to game is an open research area. Some research groups have been working on it, and I look forward to some of their papers going public. But none of the papers that I've seen so far are perfect designs, so don't set your expectations too high. :)
But all of that said, just visualizing the various Measured= lines by each of the bwauths might be a great start, and this can be done with the published votes as-is: http://freehaven.net/~arma/moria1-v3-status-votes
--Roger