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 state
    PeerProfile
    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