Package net.i2p.router.peermanager
The peer manager logs information about the history and quality of network peers.
Peer capacity, speed and other parameters are calculated to determine in what cases we should use each peer.
-
Class Summary Class Description CapacityCalculator Estimate how many of our tunnels the peer can join per hour.DBHistory History of NetDb related activities (lookups, replies, stores, etc)IntegrationCalculator Determine how well integrated the peer is - how likely they will be useful to us if we are trying to get further connected.InverseCapacityComparator Order profiles by their capacity, but backwards (highest capacity / value first).PeerManager Manage the current state of the statistics Also maintain Sets for each of the capabilities in TRACKED_CAPS.PeerManagerFacadeImpl Base implementation that has simple algorithms and periodically saves statePeerProfile Copied from http://www.i2p2.i2p/how_peerselection.html See also main() below for additional commentary by zzz.PeerSelectionCriteria Defines the criteria for selecting a set of peers for use when searching the PeerManager Only used by PeerTestJob, which may not have a point.PeerTestJob Grab some peers that we want to test and probe them briefly to get some more accurate and up to date performance data.ProfileManagerImpl Methods to update profiles.ProfileOrganizer Keep the peer profiles organized according to the tiered model.ProfilePersistenceHelper Write profiles to disk at shutdown, read at startup.SpeedCalculator Quantify how fast the peer is - how fast they respond to our requests, how fast they pass messages on, etc.SpeedComparator Order profiles by their speed (lowest first).TunnelHistory Tunnel related history information -
Enum Summary Enum Description ProfileOrganizer.Slice Replaces integer subTierMode argument, for clarity