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 Summary
Nested Classes Modifier and Type Interface Description static interface
BandwidthFile.RelayLine
-
Method Summary
All 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.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.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.RelayLine
s 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.String
software()
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.LocalDateTime
timestamp()
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.String
version()
Document format version.-
Methods inherited from interface org.torproject.descriptor.Descriptor
getAnnotations, getDescriptorFile, getRawDescriptorBytes, getRawDescriptorLength, getUnrecognizedLines
-
-
-
-
Method Detail
-
digestSha256Base64
java.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
-
timestamp
java.time.LocalDateTime timestamp()
Time of the most recent generator bandwidth result.- Since:
- 2.6.0
-
version
java.lang.String version()
Document format version.- Since:
- 2.6.0
-
software
java.lang.String software()
Name of the software that created the document.- Since:
- 2.6.0
-
softwareVersion
java.util.Optional<java.lang.String> softwareVersion()
Version of the software that created the document.- Since:
- 2.6.0
-
torVersion
java.util.Optional<java.lang.String> torVersion()
The Tor version of the Tor process controlled by the generator.- Since:
- 2.20.0
-
fileCreated
java.util.Optional<java.time.LocalDateTime> fileCreated()
Timestamp in UTC time zone when the file was created.- Since:
- 2.6.0
-
generatorStarted
java.util.Optional<java.time.LocalDateTime> generatorStarted()
Timestamp in UTC time zone when the generator was started.- Since:
- 2.6.0
-
earliestBandwidth
java.util.Optional<java.time.LocalDateTime> earliestBandwidth()
Timestamp in UTC time zone when the first relay bandwidth was obtained.- Since:
- 2.6.0
-
latestBandwidth
java.util.Optional<java.time.LocalDateTime> latestBandwidth()
Timestamp in UTC time zone of the most recent generator bandwidth result.- Since:
- 2.6.0
-
numberEligibleRelays
java.util.Optional<java.lang.Integer> numberEligibleRelays()
Number of relays that have enough measurements to be included in the bandwidth file.- Since:
- 2.6.0
-
minimumPercentEligibleRelays
java.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
-
numberConsensusRelays
java.util.Optional<java.lang.Integer> numberConsensusRelays()
Number of relays in the consensus.- Since:
- 2.6.0
-
percentEligibleRelays
java.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
-
minimumNumberEligibleRelays
java.util.Optional<java.lang.Integer> minimumNumberEligibleRelays()
Minimum number of relays that should be included in the bandwidth file.- Since:
- 2.6.0
-
scannerCountry
java.util.Optional<java.lang.String> scannerCountry()
Country, as in political geolocation, where the generator is run.- Since:
- 2.6.0
-
destinationsCountries
java.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
-
recentConsensusCount
java.util.Optional<java.lang.Integer> recentConsensusCount()
Number of the different consensuses seen in the last data period.- Since:
- 2.6.0
-
recentPriorityListCount
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.- Since:
- 2.6.0
-
recentPriorityRelayCount
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.- Since:
- 2.6.0
-
recentMeasurementAttemptCount
java.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
-
recentMeasurementFailureCount
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.- Since:
- 2.6.0
-
recentMeasurementsExcludedErrorCount
java.util.Optional<java.lang.Integer> recentMeasurementsExcludedErrorCount()
Number of relays that have no successful measurements in the last data period.- Since:
- 2.6.0
-
recentMeasurementsExcludedNearCount
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.- Since:
- 2.6.0
-
recentMeasurementsExcludedOldCount
java.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
-
recentMeasurementsExcludedFewCount
java.util.Optional<java.lang.Integer> recentMeasurementsExcludedFewCount()
Number of relays that don't have enough recent successful measurements.- Since:
- 2.6.0
-
timeToReportHalfNetwork
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.- Since:
- 2.6.0
-
mu
java.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
-
muf
java.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
-
dirauthNickname
java.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
-
relayLines
java.util.List<BandwidthFile.RelayLine> relayLines()
List of zero or moreBandwidthFile.RelayLine
s containing relay identities and bandwidths in the order as they are contained in the bandwidth file.- Since:
- 2.6.0
-
-