La pila de I2P es un diseño por capas que permite la comunicación anónima. Cada capa añade capacidades específicas sobre las que están debajo de ella. Consulta el Índice de Documentación Técnica para obtener detalles adicionales sobre cada componente.
Capa de Internet
IP - El Protocolo de Internet permite direccionar hosts en la internet regular y enrutar paquetes a través de internet usando entrega de mejor esfuerzo.
Capa de Transporte
- TCP - Protocolo de Control de Transmisión permite la entrega confiable y en orden de paquetes
- UDP - Protocolo de Datagramas de Usuario permite la entrega no confiable y fuera de orden de paquetes
Capa de Transporte I2P
Conexiones cifradas de router a router (aún no anónimas):
Capa de túneles I2P
Proporciona conexiones de tunnel anónimas completamente cifradas:
- Mensajes de tunnel - Mensajes I2NP cifrados e instrucciones cifradas para su entrega
- Mensajes I2NP - Mensajes de protocolo con cifrado en capas para enrutamiento anónimo multi-salto
Capa Garlic de I2P
Proporciona entrega de mensajes I2P cifrada y anónima de extremo a extremo:
- Mensajes garlic - Mensajes I2NP encapsulados para entrega anónima
Capa de Cliente I2P
- I2CP - I2P Control Protocol permite a las aplicaciones acceder a la red I2P sin tener que usar la API del router directamente
Capa de Transporte Extremo a Extremo de I2P
- Streaming Library - Proporciona entrega confiable y en orden similar a TCP
- Datagram Library - Proporciona entrega no confiable similar a UDP
Capa de Interfaz de Aplicación I2P
Interfaces opcionales para desarrolladores de aplicaciones:
- I2PTunnel - Crea túneles para conexiones TCP dentro y fuera de I2P
- SAMv3 - Protocolo de Mensajería Anónima Simple para aplicaciones que no son Java
Capa de Proxy de Aplicaciones I2P
Proxies para protocolos estándar de internet:
- HTTP - Proxy de navegación web
- IRC - Proxy de Internet Relay Chat
- SOCKS - Proxy SOCKS4/4a/5
- Streamr - Proxy de transmisión UDP
Aplicaciones
Las aplicaciones pueden interactuar con I2P en varias capas:
Aplicaciones Streaming/Datagram: - Aplicaciones nativas de I2P que utilizan las bibliotecas streaming o datagram directamente
Aplicaciones SAM: - Aplicaciones en cualquier lenguaje que utilicen el protocolo SAM
Aplicaciones Específicas de I2P: - Aplicaciones diseñadas específicamente para I2P (I2PSnark, SusiMail, etc.)
Aplicaciones de Internet Estándar: - Aplicaciones regulares que utilizan proxies I2P (navegadores web, clientes IRC, etc.)
Diagrama de Pila

Nota: SAM puede usar tanto la biblioteca de streaming como datagramas.