"I2P is an anonymous network, exposing a simple layer that applications can use
to anonymously and securely send messages to each other. The network itself is strictly message based (ala IP ), but there is a library available to allow reliable streaming communication on top of it (ala TCP ). All communication is end to end encrypted (in total there are four layers of encryption used when sending a message), and even the end points ("destinations") are cryptographic identifiers (essentially a pair of public keys).
To anonymize the messages sent, each client application has their I2P "router" build a few inbound and outbound " tunnels " - a sequence of peers that pass messages in one direction (to and from the client, respectively). In turn, when a client wants to send a message to another client, the client passes that message out one of their outbound tunnels targeting one of the other client's inbound tunnels, eventually reaching the destination. Every participant in the network chooses the length of these tunnels, and in doing so, makes a tradeoff between anonymity, latency, and throughput according to their own needs. The result is that the number of peers relaying each end to end message is the absolute minimum necessary to meet both the sender's and the receiver's threat model.
The first time a client wants to contact another client, they make a query against the fully distributed " network database " - a custom structured DHT based off the Kademlia algorithm. This is done to find the other client's inbound tunnels efficiently, but subsequent messages between them usually includes that data so no further network database lookups are required." --I2P
Forum (Planet Peer)
How does it work?
How to set up Azureus to work with I2P
A Gnutella network client that communicates through I2P.
A eDonkey2000 network client that communicates through I2P.
Anonymous BitTorrent over I2P.
Anonymous Bittorrent with I2PSnark
How to: Anonymous BitTorrent over I2P with i2psnark (Planet Peer)
I2PSnark - anonymous bittorrent with I2P
I2P-Bittorrent via I2PSnark/I2P-BT/I2PRufus