On 2 May 2018, at 22:39, teor teor2345@gmail.com wrote:
Tor accepts zero bandwidths, but they trigger bugs in older Tor implementations. Therefore, implementations SHOULD NOT produce zero bandwidths. Instead, they SHOULD use one as their minimum bandwidth.
And if there are zero bandwidths, the parser MAY ignore them.
Bandwidth files also need to respect MaxAdvertisedBandwidth and RelayBandwidthRate/Burst. We need to specify that the relay descriptor bandwidth rate and burst should limit the bandwidths in the file.
Torflow supports MaxAdvertisedBandwidth by putting relays in partitions that match their bandwidth. Maybe it also does some other adjustments.
sbws can probably just do a min() using the measured bandwidth: https://github.com/pastly/simple-bw-scanner/issues/155
For details, see: https://trac.torproject.org/projects/tor/ticket/8494#comment:5
T