## Package net.i2p.router.peermanager

Class Summary
Calculator: Provide a means of quantifying a profiles fitness in some particular aspect, as well as to coordinate via statics the four known aspects.
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 All the capabilities methods appear to be almost unused - TunnelPeerSelector just looks for unreachables, and that's it? If so, a lot of this can go away, including the array of 26 ArrayLists, and a lot of synchronization on _capabilitiesByPeer.
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.
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
ProfileOrganizer: Keep the peer profiles organized according to the tiered model.
ProfilePersistenceHelper
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