Redes Peer-to-Peer (P2P)

Redes ponto a ponto são sistemas distribuídos onde os participantes (pares) compartilham recursos diretamente uns com os outros sem depender de servidores centralizados.

Redes ponto a ponto (P2P) são uma tecnologia fundamental para sistemas descentralizados, onde cada participante (par) age tanto como cliente quanto como servidor. Ao contrário das arquiteturas cliente-servidor, não há ponto central de controle ou falha, tornando as redes P2P resilientes e resistentes à censura.

Os principais componentes incluem: descoberta de pares (encontrar outros nós — DHT, nós de bootstrap, mDNS), roteamento de dados (levar mensagens aos pares corretos), endereçamento de conteúdo (identificar dados por hash em vez de localização) e protocolos de fofoca (propagação eficiente de informações).

Na blockchain, as redes P2P distribuem transações e blocos por todos os nós, permitindo a descentralização. Implementações populares de P2P incluem libp2p (usado por Ethereum, IPFS, Filecoin), devp2p (original do Ethereum) e o protocolo P2P personalizado do Bitcoin. Cada um lida com descoberta de nós, gerenciamento de conexões e roteamento de mensagens.

Os desafios incluem travessia de NAT (alcançar nós atrás de firewalls), ataques de eclipse (isolar nós), ataques Sybil (identidades falsas) e partições de rede. As soluções incluem hole-punching, sistemas de reputação de pares e conexões redundantes.

        graph LR
  Center["Redes Peer-to-Peer (P2P)"]:::main
  Pre_networking["networking"]:::pre --> Center
  click Pre_networking "/terms/networking"
  Pre_distributed_systems["distributed-systems"]:::pre --> Center
  click Pre_distributed_systems "/terms/distributed-systems"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 Explique como se eu tivesse 5 anos

Trocar livros diretamente.

🤓 Expert Deep Dive

Generated expert content

🔗 Termos relacionados

Pré-requisitos:

📚 Fontes