Package org.torproject.descriptor
Interface BandwidthFile
- 
- All Superinterfaces:
- Descriptor,- java.io.Serializable
 
 public interface BandwidthFile extends Descriptor A bandwidth file contains information on relays' bandwidth capacities and is produced by bandwidth generators, previously known as bandwidth scanners.- Since:
- 2.6.0
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Interface Description static interfaceBandwidthFile.RelayLine
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.Optional<java.lang.String[]>destinationsCountries()Country, as in political geolocation, or countries where the destination web server(s) are located.java.lang.StringdigestSha256Base64()Return the SHA-256 bandwidth file digest, encoded as 43 base64 characters without padding characters, that is used to reference this bandwidth file from a vote.java.util.Optional<java.lang.String>dirauthNickname()The dirauth's nickname which publishes this V3BandwidthsFile.java.util.Optional<java.time.LocalDateTime>earliestBandwidth()Timestamp in UTC time zone when the first relay bandwidth was obtained.java.util.Optional<java.time.LocalDateTime>fileCreated()Timestamp in UTC time zone when the file was created.java.util.Optional<java.time.LocalDateTime>generatorStarted()Timestamp in UTC time zone when the generator was started.java.util.Optional<java.time.LocalDateTime>latestBandwidth()Timestamp in UTC time zone of the most recent generator bandwidth result.java.util.Optional<java.lang.Integer>minimumNumberEligibleRelays()Minimum number of relays that should be included in the bandwidth file.java.util.Optional<java.lang.Integer>minimumPercentEligibleRelays()Percentage of relays in the consensus that should be included in every generated bandwidth file.java.util.Optional<java.lang.Integer>mu()The network stream bandwidth average calculated as explained in the bandwidth file specification.java.util.Optional<java.lang.Integer>muf()The network stream bandwidth average filtered calculated as explained in the bandwidth file specification.java.util.Optional<java.lang.Integer>numberConsensusRelays()Number of relays in the consensus.java.util.Optional<java.lang.Integer>numberEligibleRelays()Number of relays that have enough measurements to be included in the bandwidth file.java.util.Optional<java.lang.Integer>percentEligibleRelays()The number of eligible relays, as a percentage of the number of relays in the consensus.java.util.Optional<java.lang.Integer>recentConsensusCount()Number of the different consensuses seen in the last data period.java.util.Optional<java.lang.Integer>recentMeasurementAttemptCount()Number of times that any relay has been queued to be measured in the last data period.java.util.Optional<java.lang.Integer>recentMeasurementFailureCount()Number of times that the scanner attempted to measure a relay in the last data period, but the relay has not been measured because of system, network or implementation issues.java.util.Optional<java.lang.Integer>recentMeasurementsExcludedErrorCount()Number of relays that have no successful measurements in the last data period.java.util.Optional<java.lang.Integer>recentMeasurementsExcludedFewCount()Number of relays that don't have enough recent successful measurements.java.util.Optional<java.lang.Integer>recentMeasurementsExcludedNearCount()Number of relays that have some successful measurements in the last data period, but all those measurements were performed in a period of time that was too short.java.util.Optional<java.lang.Integer>recentMeasurementsExcludedOldCount()Number of relays that have some successful measurements, but all those measurements are too old.java.util.Optional<java.lang.Integer>recentPriorityListCount()Number of times that a list with a subset of relays prioritized to be measured has been created in the last data period.java.util.Optional<java.lang.Integer>recentPriorityRelayCount()Number of relays that has been in in the list of relays prioritized to be measured in the last data period.java.util.List<BandwidthFile.RelayLine>relayLines()List of zero or moreBandwidthFile.RelayLines containing relay identities and bandwidths in the order as they are contained in the bandwidth file.java.util.Optional<java.lang.String>scannerCountry()Country, as in political geolocation, where the generator is run.java.lang.Stringsoftware()Name of the software that created the document.java.util.Optional<java.lang.String>softwareVersion()Version of the software that created the document.java.time.LocalDateTimetimestamp()Time of the most recent generator bandwidth result.java.util.Optional<java.time.Duration>timeToReportHalfNetwork()Time that it would take to report measurements about half of the network, given the number of eligible relays and the time it took in the last days.java.util.Optional<java.lang.String>torVersion()The Tor version of the Tor process controlled by the generator.java.lang.Stringversion()Document format version.- 
Methods inherited from interface org.torproject.descriptor.DescriptorgetAnnotations, getDescriptorFile, getRawDescriptorBytes, getRawDescriptorLength, getUnrecognizedLines
 
- 
 
- 
- 
- 
Method Detail- 
digestSha256Base64java.lang.String digestSha256Base64() Return the SHA-256 bandwidth file digest, encoded as 43 base64 characters without padding characters, that is used to reference this bandwidth file from a vote.- Since:
- 2.11.0
 
 - 
timestampjava.time.LocalDateTime timestamp() Time of the most recent generator bandwidth result.- Since:
- 2.6.0
 
 - 
versionjava.lang.String version() Document format version.- Since:
- 2.6.0
 
 - 
softwarejava.lang.String software() Name of the software that created the document.- Since:
- 2.6.0
 
 - 
softwareVersionjava.util.Optional<java.lang.String> softwareVersion() Version of the software that created the document.- Since:
- 2.6.0
 
 - 
torVersionjava.util.Optional<java.lang.String> torVersion() The Tor version of the Tor process controlled by the generator.- Since:
- 2.20.0
 
 - 
fileCreatedjava.util.Optional<java.time.LocalDateTime> fileCreated() Timestamp in UTC time zone when the file was created.- Since:
- 2.6.0
 
 - 
generatorStartedjava.util.Optional<java.time.LocalDateTime> generatorStarted() Timestamp in UTC time zone when the generator was started.- Since:
- 2.6.0
 
 - 
earliestBandwidthjava.util.Optional<java.time.LocalDateTime> earliestBandwidth() Timestamp in UTC time zone when the first relay bandwidth was obtained.- Since:
- 2.6.0
 
 - 
latestBandwidthjava.util.Optional<java.time.LocalDateTime> latestBandwidth() Timestamp in UTC time zone of the most recent generator bandwidth result.- Since:
- 2.6.0
 
 - 
numberEligibleRelaysjava.util.Optional<java.lang.Integer> numberEligibleRelays() Number of relays that have enough measurements to be included in the bandwidth file.- Since:
- 2.6.0
 
 - 
minimumPercentEligibleRelaysjava.util.Optional<java.lang.Integer> minimumPercentEligibleRelays() Percentage of relays in the consensus that should be included in every generated bandwidth file.- Since:
- 2.6.0
 
 - 
numberConsensusRelaysjava.util.Optional<java.lang.Integer> numberConsensusRelays() Number of relays in the consensus.- Since:
- 2.6.0
 
 - 
percentEligibleRelaysjava.util.Optional<java.lang.Integer> percentEligibleRelays() The number of eligible relays, as a percentage of the number of relays in the consensus.- Since:
- 2.6.0
 
 - 
minimumNumberEligibleRelaysjava.util.Optional<java.lang.Integer> minimumNumberEligibleRelays() Minimum number of relays that should be included in the bandwidth file.- Since:
- 2.6.0
 
 - 
scannerCountryjava.util.Optional<java.lang.String> scannerCountry() Country, as in political geolocation, where the generator is run.- Since:
- 2.6.0
 
 - 
destinationsCountriesjava.util.Optional<java.lang.String[]> destinationsCountries() Country, as in political geolocation, or countries where the destination web server(s) are located.- Since:
- 2.6.0
 
 - 
recentConsensusCountjava.util.Optional<java.lang.Integer> recentConsensusCount() Number of the different consensuses seen in the last data period.- Since:
- 2.6.0
 
 - 
recentPriorityListCountjava.util.Optional<java.lang.Integer> recentPriorityListCount() Number of times that a list with a subset of relays prioritized to be measured has been created in the last data period.- Since:
- 2.6.0
 
 - 
recentPriorityRelayCountjava.util.Optional<java.lang.Integer> recentPriorityRelayCount() Number of relays that has been in in the list of relays prioritized to be measured in the last data period.- Since:
- 2.6.0
 
 - 
recentMeasurementAttemptCountjava.util.Optional<java.lang.Integer> recentMeasurementAttemptCount() Number of times that any relay has been queued to be measured in the last data period.- Since:
- 2.6.0
 
 - 
recentMeasurementFailureCountjava.util.Optional<java.lang.Integer> recentMeasurementFailureCount() Number of times that the scanner attempted to measure a relay in the last data period, but the relay has not been measured because of system, network or implementation issues.- Since:
- 2.6.0
 
 - 
recentMeasurementsExcludedErrorCountjava.util.Optional<java.lang.Integer> recentMeasurementsExcludedErrorCount() Number of relays that have no successful measurements in the last data period.- Since:
- 2.6.0
 
 - 
recentMeasurementsExcludedNearCountjava.util.Optional<java.lang.Integer> recentMeasurementsExcludedNearCount() Number of relays that have some successful measurements in the last data period, but all those measurements were performed in a period of time that was too short.- Since:
- 2.6.0
 
 - 
recentMeasurementsExcludedOldCountjava.util.Optional<java.lang.Integer> recentMeasurementsExcludedOldCount() Number of relays that have some successful measurements, but all those measurements are too old.- Since:
- 2.6.0
 
 - 
recentMeasurementsExcludedFewCountjava.util.Optional<java.lang.Integer> recentMeasurementsExcludedFewCount() Number of relays that don't have enough recent successful measurements.- Since:
- 2.6.0
 
 - 
timeToReportHalfNetworkjava.util.Optional<java.time.Duration> timeToReportHalfNetwork() Time that it would take to report measurements about half of the network, given the number of eligible relays and the time it took in the last days.- Since:
- 2.6.0
 
 - 
mujava.util.Optional<java.lang.Integer> mu() The network stream bandwidth average calculated as explained in the bandwidth file specification. This Line was added in version 1.7.0 of the bandwidth file specification.- Since:
- 2.22.0
 
 - 
mufjava.util.Optional<java.lang.Integer> muf() The network stream bandwidth average filtered calculated as explained in the bandwidth file specification. This Line was added in version 1.7.0 of the bandwidth file specification.- Since:
- 2.22.0
 
 - 
dirauthNicknamejava.util.Optional<java.lang.String> dirauthNickname() The dirauth's nickname which publishes this V3BandwidthsFile. This Line was added in version 1.8.0 of this specification.- Since:
- 2.24.0
 
 - 
relayLinesjava.util.List<BandwidthFile.RelayLine> relayLines() List of zero or moreBandwidthFile.RelayLines containing relay identities and bandwidths in the order as they are contained in the bandwidth file.- Since:
- 2.6.0
 
 
- 
 
-