A pilha I2P é um design em camadas que permite comunicação anônima. Cada camada adiciona capacidades específicas sobre aquelas abaixo dela. Consulte o Índice de Documentação Técnica para detalhes adicionais sobre cada componente.
Camada de Internet
IP - Internet Protocol permite endereçar hosts na internet regular e rotear pacotes através da internet usando entrega de melhor esforço.
Camada de Transporte
- TCP - Protocolo de Controle de Transmissão permite entrega confiável e ordenada de pacotes
- UDP - Protocolo de Datagrama do Usuário permite entrega não confiável e fora de ordem de pacotes
Camada de Transporte I2P
Conexões criptografadas router-para-router (ainda não anônimas):
Camada de Tunnel I2P
Fornece conexões de túnel criptografadas completamente anônimas:
- Mensagens de tunnel - Mensagens I2NP criptografadas e instruções criptografadas para sua entrega
- Mensagens I2NP - Mensagens de protocolo com criptografia em camadas para roteamento anônimo multi-hop
Camada Garlic do I2P
Fornece entrega de mensagens I2P criptografadas e anônimas de ponta a ponta:
- Mensagens garlic - Mensagens I2NP encapsuladas para entrega anônima
Camada de Cliente I2P
- I2CP - I2P Control Protocol permite que aplicações acessem a rede I2P sem ter que usar a API do router diretamente
Camada de Transporte End-to-End do I2P
- Streaming Library - Fornece entrega confiável e em ordem similar ao TCP
- Datagram Library - Fornece entrega não confiável similar ao UDP
Camada de Interface de Aplicação I2P
Interfaces opcionais para desenvolvedores de aplicações:
- I2PTunnel - Canaliza conexões TCP para dentro e para fora do I2P
- SAMv3 - Protocolo Simple Anonymous Messaging para aplicações não-Java
Camada de Proxy de Aplicação I2P
Proxies para protocolos padrão da internet:
- HTTP - Proxy de navegação web
- IRC - Proxy de Internet Relay Chat
- SOCKS - Proxy SOCKS4/4a/5
- Streamr - Proxy de streaming UDP
Aplicações
As aplicações podem interagir com o I2P em várias camadas:
Aplicações Streaming/Datagram: - Aplicações nativas do I2P usando as bibliotecas streaming ou datagram diretamente
Aplicações SAM: - Aplicações em qualquer linguagem usando o protocolo SAM
Aplicações Específicas do I2P: - Aplicações desenvolvidas especificamente para I2P (I2PSnark, SusiMail, etc.)
Aplicações de Internet Padrão: - Aplicações regulares usando proxies I2P (navegadores web, clientes IRC, etc.)
Diagrama de Pilha

Nota: O SAM pode usar tanto a biblioteca de streaming quanto datagramas.