Packages that use net.i2p.data.i2np
Package
Description
Low-level messages sent between routers - the Invisible Internet Network Protocol (I2NP).
The I2P router application handles I2P network communication.
The Double Ratchet with X25519 key agreement and ECIES hybrid encryption, used by the NTCP2 and SSU transports for session encryption.
Garlic message creation, parsing and handling, and the outbound message jobs: one-shot sends, source routing and delivery status handling.
Network database message handling shared by all facades: database lookup jobs and local RouterInfo publication.
The Kademlia distributed hash table (DHT) network database: lookup, store and explore jobs, the data store, the floodfill variants, and lookup throttling.
Peer profiles and capacity calculation, peer test jobs, peer selection for tunnel building, and the database and tunnel history used for peer selection.
Transport framework: the transport lifecycle and pool management, connection handling and bandwidth throttling for the transports (NTCP2 over TCP, SSU over UDP) that carry I2P messages between routers, plus NAT traversal via UPnP and GeoIP country lookups.
NTCP2, the TCP transport: framed, ratchet-encrypted and mutually authenticated connections between routers.
SSU2, the UDP transport: datagram sessions with Holepunch peer discovery, plus the older SSU compatibility code.
Tunnel messages and the tunnel layer: the
TunnelManagerFacade, tunnel build request and reply processing, and the inbound and outbound tunnel structures. Tunnel pool management: pool lifecycle, peer selection, build scheduling and failure handling for client and exploratory tunnels.
- Classes in net.i2p.data.i2np used by net.i2p.data.i2npClassDescriptionDatabase lookup type enumeration.Contains the delivery instructions for garlic cloves.ElGamal-encrypted request or response.Ignore, but save, the SHA-256 checksum in the full 16-byte header when read in.Contains one deliverable message encrypted to a router along with instructions and a certificate 'paying for' the delivery.Base interface for all I2NP messagesRepresent an error serializing or deserializing an APIMessage.Handle messages from router to router.Defines the base message implementation.Interface for extending the types of messages handled - unused.Small records.The basic build message with 8 records.Base for TBM, TBRM, VTBM, VTBRM Retrofitted over them.The basic build reply message with 8 records.
- Classes in net.i2p.data.i2np used by net.i2p.router
- Classes in net.i2p.data.i2np used by net.i2p.router.crypto.ratchetClassDescriptionContains one deliverable message encrypted to a router along with instructions and a certificate 'paying for' the delivery.
- Classes in net.i2p.data.i2np used by net.i2p.router.messageClassDescriptionContains the delivery instructions for garlic cloves.Defines the message sent back in reply to a message when requested, containing the private ack id.Contains one deliverable message encrypted to a router along with instructions and a certificate 'paying for' the delivery.Defines the wrapped garlic message.Base interface for all I2NP messages
- Classes in net.i2p.data.i2np used by net.i2p.router.networkdbClassDescriptionDefines the message a router sends to another router to search for a key in the network database.Database lookup type enumeration.Base interface for all I2NP messages
- Classes in net.i2p.data.i2np used by net.i2p.router.networkdb.kademliaClassDescriptionDefines the message a router sends to another router to search for a key in the network database.Database lookup type enumeration.Defines the message a router sends to another router in response to a search (DatabaseFindNearest or DatabaseLookup) when it doesn't have the value, specifying what routers it would search.Defines the message a router sends to another router to test the network database reachability, as well as the reply message sent back.Defines the wrapped garlic message.Base interface for all I2NP messages
- Classes in net.i2p.data.i2np used by net.i2p.router.peermanagerClassDescriptionDefines the message a router sends to another router to test the network database reachability, as well as the reply message sent back.Base interface for all I2NP messages
- Classes in net.i2p.data.i2np used by net.i2p.router.transport
- Classes in net.i2p.data.i2np used by net.i2p.router.transport.ntcpClassDescriptionBase interface for all I2NP messagesRepresent an error serializing or deserializing an APIMessage.
- Classes in net.i2p.data.i2np used by net.i2p.router.transport.udpClassDescriptionDefines the message a router sends to another router to test the network database reachability, as well as the reply message sent back.Base interface for all I2NP messagesRepresent an error serializing or deserializing an APIMessage.Handle messages from router to router.
- Classes in net.i2p.data.i2np used by net.i2p.router.tunnelClassDescriptionContains the delivery instructions for garlic cloves.Base interface for all I2NP messagesHandle messages from router to router.Defines the message sent between routers as part of the tunnel deliveryDefines the message sent between one tunnel's endpoint and another's gateway.
- Classes in net.i2p.data.i2np used by net.i2p.router.tunnel.poolClassDescriptionA tunnel build request record, in one of three formats.Base interface for all I2NP messagesThe basic build message with 8 records.The basic build reply message with 8 records.