CONCEITO

Redes peer-to-peer

Uma rede peer-to-peer permite que participantes se conectem como pares e troquem dados sem depender de um servidor central único responsável por distribuir todas as informações. No Bitcoin, nós utilizam essa rede para anunciar e propagar transações e blocos, enquanto cada nó continua responsável por verificar localmente aquilo que recebe.

Bitcoin e protocolo

ENTRADA FUNDAMENTAL

DEFINIÇÃO ESSENCIAL

Uma rede peer-to-peer distribui a comunicação entre participantes da própria rede

Em arquiteturas cliente-servidor convencionais, determinados servidores ocupam uma posição central na oferta de dados ou serviços. Em uma arquitetura peer-to-peer, participantes podem estabelecer conexões com outros participantes e colaborar na distribuição das informações necessárias ao funcionamento da aplicação.

Rede peer-to-peer, ou P2P (peer-to-peer, em português, entre pares ou ponto a ponto), é uma arquitetura de comunicação na qual participantes podem estabelecer conexões com outros pares para trocar informações sem que todo o fluxo precise passar por um servidor central único. No Bitcoin, nós mantêm conexões com um conjunto de outros nós e utilizam essas conexões para receber e retransmitir informações sobre transações e blocos. A rede P2P fornece o meio de comunicação e propagação dos dados, mas não determina sozinha se esses dados são válidos: cada nó aplica suas próprias regras de verificação ao que recebe.

Comunicação distribuída não significa confiança automática entre pares

Um nó pode receber uma transação ou um bloco de outro participante sem aceitar automaticamente a informação recebida como válida. Na arquitetura do Bitcoin, os pares ajudam a transportar dados pela rede, enquanto a validação permanece uma responsabilidade local do nó que recebe esses dados.

EM TERMOS SIMPLES

A informação circula de par em par pela rede

Um nó de Bitcoin não precisa receber cada nova transação ou bloco de uma central responsável por toda a rede. Ele mantém conexões com alguns pares, recebe informações deles e pode retransmitir dados relevantes para outros participantes, fazendo com que as mensagens se espalhem progressivamente.

Cada nó mantém conexões com outros pares

Um participante da rede não precisa estar conectado simultaneamente a todos os demais nós existentes. Ele estabelece conexões com um conjunto limitado de pares e utiliza essas conexões para trocar mensagens do protocolo. A rede surge da combinação de muitas conexões locais entre participantes, e não de uma ligação completa de todos com todos.

Transações e blocos se propagam de par em par

Quando um nó toma conhecimento de uma transação ou bloco que pode ser retransmitido, a informação pode seguir para outros pares, que por sua vez podem anunciá-la adiante. Dessa maneira, os dados atravessam a rede por múltiplas conexões sucessivas, sem depender de um único servidor central responsável por entregá-los a todos os participantes.

Receber uma mensagem não obriga um nó a aceitá-la

Os pares fornecem informações uns aos outros, mas não possuem autoridade automática sobre quem as recebe. Um nó completo verifica transações e blocos segundo as regras que executa e pode rejeitar dados inválidos independentemente de quantos pares os transmitam. A rede P2P distribui mensagens; ela não substitui a validação nem transforma a repetição de uma informação em prova de validade.

COMO FUNCIONA

Como nós encontram pares, trocam mensagens e propagam dados pela rede

A rede peer-to-peer do Bitcoin funciona por meio de conexões mantidas entre nós que trocam mensagens do protocolo. Um participante precisa encontrar outros pares, estabelecer conexões compatíveis e, a partir delas, anunciar ou solicitar informações. Transações e blocos podem então se espalhar progressivamente pela rede, enquanto cada nó continua responsável por verificar localmente aquilo que recebe.

01

O nó precisa encontrar outros participantes da rede

Para participar da rede P2P, um nó precisa obter endereços de outros participantes com os quais possa tentar estabelecer conexão. Essa descoberta pode ocorrer por diferentes mecanismos disponíveis no software e pela informação recebida de outros pares ao longo do funcionamento da rede. A descoberta inicial ajuda o nó a ingressar na topologia existente, mas não cria uma autoridade central permanente da qual ele dependa para todas as comunicações posteriores.

02

Depois da conexão, os pares trocam mensagens do protocolo

Quando dois nós estabelecem uma conexão compatível, eles podem trocar mensagens utilizadas pelo protocolo para comunicar informações sobre seu estado e sobre objetos disponíveis na rede. Essa conexão cria um canal entre dois pares específicos, não uma relação com todos os nós existentes, e cada participante pode manter simultaneamente outras conexões independentes com diferentes peers.

03

Pares anunciam informações e podem solicitar os dados correspondentes

A propagação não exige necessariamente que cada nó envie imediatamente o conteúdo completo de tudo o que conhece para todos os seus pares. O protocolo permite anunciar a disponibilidade de determinados dados e possibilita que outros participantes solicitem as informações necessárias. Esse mecanismo ajuda transações e blocos a circular entre diferentes conexões, enquanto cada nó administra localmente o que recebe, solicita, retransmite ou rejeita.

04

A informação se espalha por múltiplos caminhos entre pares

Depois que uma transação ou bloco começa a circular, diferentes nós podem recebê-lo por pares distintos e em momentos diferentes. Se o dado satisfizer as condições aplicáveis para retransmissão, ele pode continuar avançando por novas conexões, formando uma propagação distribuída pela topologia da rede. Não existe a exigência de um servidor central do Bitcoin que receba cada nova mensagem e a distribua para todos; a disseminação resulta da cooperação entre muitos pares conectados.

A rede transporta informação; cada nó decide o que aceita

Os pares ajudam a descobrir, anunciar, solicitar e retransmitir dados, mas a propagação de uma mensagem não substitui a validação realizada por quem a recebe. A arquitetura P2P distribui a comunicação, enquanto as regras executadas localmente determinam quais transações e blocos cada nó considera aceitáveis.

DISTINÇÕES IMPORTANTES

P2P não significa conexão total, consenso, descentralização completa ou igualdade entre participantes

Uma arquitetura peer-to-peer distribui a comunicação entre participantes, mas isso não significa que todos estejam conectados entre si, que compartilhem automaticamente a mesma visão da rede ou que possuam condições técnicas e econômicas equivalentes. Para compreender o papel do P2P no Bitcoin, é preciso separar comunicação, consenso, descentralização e posição dos participantes.

P2P não significa que todos os nós estejam conectados entre si

Cada nó mantém conexões com um conjunto limitado de pares, formando uma topologia composta por muitas relações locais. A informação pode alcançar participantes distantes por meio de retransmissões sucessivas, sem que exista uma conexão direta entre cada par possível da rede. Uma rede peer-to-peer é distribuída por múltiplas conexões entre participantes; ela não exige uma malha completa em que todos estejam permanentemente ligados a todos.

Rede P2P não é consenso

A rede peer-to-peer transporta mensagens sobre transações, blocos e outros dados do protocolo, mas não determina sozinha quais dessas informações devem ser aceitas como válidas. O consenso envolve regras de validade e critérios pelos quais nós compatíveis convergem sobre uma cadeia, enquanto o P2P fornece a infraestrutura de comunicação pela qual essas propostas circulam. Propagar uma informação e reconhecê-la como válida são funções diferentes.

P2P não equivale a descentralização completa

Uma arquitetura P2P pode reduzir a dependência de um servidor central único e permitir múltiplos caminhos de comunicação, contribuindo para determinadas dimensões da descentralização. Entretanto, descentralização também envolve distribuição de infraestrutura, recursos, implementação, localização, acesso, poder econômico e outros fatores que não são resolvidos automaticamente pelo simples fato de a comunicação ocorrer entre pares.

Ser peer não significa possuir poder técnico, econômico ou social equivalente

A palavra peer descreve a relação de comunicação entre participantes, não uma igualdade material entre eles. Nós podem diferir em capacidade de processamento, armazenamento, largura de banda, conectividade, localização, disponibilidade, recursos econômicos e funções desempenhadas. Participar como par na arquitetura da rede não elimina desigualdades técnicas, econômicas ou sociais existentes entre os participantes.

LIMITES E CONTROVÉRSIAS

Comunicação distribuída não elimina infraestrutura, assimetrias ou vulnerabilidades

A arquitetura peer-to-peer reduz a dependência de um servidor central único para a circulação das mensagens do Bitcoin, mas continua inserida em uma infraestrutura material e em uma topologia concreta de conexões. Por isso, a rede pode apresentar assimetrias, pontos de concentração e formas de isolamento que não desaparecem simplesmente porque os participantes se comunicam como pares.

01

A rede P2P continua dependente da infraestrutura da internet

Nós de Bitcoin trocam mensagens por meio de redes físicas e lógicas que dependem de eletricidade, equipamentos, provedores de conectividade, rotas de internet e outras camadas externas ao próprio protocolo. A ausência de um servidor central do Bitcoin não significa independência completa dessa infraestrutura. A rede P2P distribui a comunicação na camada do protocolo, mas continua materialmente apoiada em sistemas técnicos que podem possuir suas próprias concentrações, falhas e formas de controle.

02

A topologia da rede pode apresentar concentrações e assimetrias

Os nós não possuem necessariamente a mesma conectividade, largura de banda, disponibilidade ou posição na topologia. Alguns participantes podem manter mais conexões, operar em redes melhor conectadas ou utilizar infraestrutura com maior capacidade do que outros. Uma arquitetura P2P permite múltiplos caminhos de comunicação, mas não garante que esses caminhos estejam distribuídos de maneira uniforme nem que todos os participantes ocupem posições equivalentes na rede.

03

Um nó pode receber uma visão parcial ou manipulada da rede

Como cada nó se comunica apenas com um conjunto limitado de pares, sua visão imediata da rede depende das conexões que consegue estabelecer e manter. Se um participante for isolado de peers diversos ou cercado por conexões controladas por um adversário, pode receber informações incompletas, atrasadas ou selecionadas sobre blocos e transações. A arquitetura P2P aumenta a possibilidade de múltiplos caminhos de comunicação, mas não torna cada nó automaticamente imune a isolamento ou manipulação de sua vizinhança de rede.

04

Descentralização da comunicação não elimina relações sociais de poder

Uma rede pode distribuir tecnicamente a troca de mensagens e ainda operar sobre infraestrutura produzida, financiada e controlada em condições econômicas desiguais. Provedores, fabricantes, operadores, jurisdições e proprietários de recursos podem ocupar posições diferentes na sustentação material da rede. Distribuir conexões entre pares não socializa automaticamente a infraestrutura, não elimina propriedade privada sobre os meios técnicos nem transforma igualdade protocolar em igualdade social.

Distribuir comunicação não elimina dependências em outras camadas

Uma arquitetura peer-to-peer pode reduzir determinados pontos únicos de falha e permitir que informações circulem por múltiplos caminhos, mas isso não elimina dependência de infraestrutura material, desigualdades entre participantes, riscos de isolamento ou concentrações existentes fora da própria camada P2P.

CONTINUE A EXPLORAÇÃO

Conceitos relacionados

As redes peer-to-peer conectam a comunicação entre nós, a propagação de transações e blocos e a capacidade de participantes verificarem informações sem depender de um servidor central único do Bitcoin. Os conceitos abaixo ajudam a compreender tanto esse funcionamento técnico quanto seus limites em relação à descentralização e à infraestrutura material.

Bitcoin

Protocolo, rede e unidade monetária que utiliza uma arquitetura peer-to-peer para permitir a circulação de transações e blocos entre participantes. A rede P2P é uma das camadas que permitem o funcionamento distribuído do Bitcoin, mas não resume sozinha o protocolo nem todas as suas propriedades.

Nó completo

Participante que verifica independentemente blocos e transações segundo as regras que executa. A rede peer-to-peer fornece os caminhos pelos quais um nó recebe e retransmite dados, enquanto a validação local permite que ele não precise confiar apenas na afirmação de seus pares sobre o que é válido.

Mempool

Conjunto local de transações não confirmadas aceitas por um nó. Transações podem chegar por diferentes pares e, depois de verificadas segundo as condições aplicáveis, integrar a mempool local e eventualmente ser retransmitidas. Como nós mantêm peers e políticas locais diferentes, suas mempools não precisam ser idênticas em todos os momentos.

Consenso

Processo pelo qual nós que executam regras compatíveis tendem a convergir sobre uma cadeia válida. A rede P2P permite que blocos e transações circulem entre participantes, mas o consenso não resulta simplesmente da propagação das mensagens: depende das regras de validade e dos critérios aplicados pelos nós ao que recebem.

Descentralização

Distribuição de funções, dependências e capacidades entre múltiplos participantes e infraestruturas. A arquitetura P2P pode contribuir para a descentralização ao evitar que toda a comunicação dependa de um servidor central único, mas descentralização possui outras dimensões técnicas, econômicas e sociais que não são garantidas apenas pela existência de conexões entre pares.

Infraestrutura digital

Conjunto de redes, equipamentos, sistemas, energia e serviços materiais que tornam possível a operação de ambientes digitais. Mesmo uma arquitetura peer-to-peer continua dependendo dessa base. Distribuir a comunicação no protocolo não elimina a necessidade de cabos, roteadores, provedores, computadores, eletricidade e outras infraestruturas que sustentam materialmente a rede.

FONTES E DOCUMENTAÇÃO

Referências para aprofundamento

A arquitetura peer-to-peer aparece desde a descrição original do Bitcoin e é concretizada por protocolos que permitem aos participantes encontrar outros nós, estabelecer conexões e trocar informações sobre transações e blocos. As fontes abaixo sustentam essa função de comunicação distribuída e, ao mesmo tempo, ajudam a separar o transporte das mensagens da validação realizada por cada nó.

01

Bitcoin: A Peer-to-Peer Electronic Cash System — Network

Na seção “Network”, o whitepaper descreve uma rede em que novas transações são propagadas aos nós, blocos encontrados são anunciados aos demais participantes e cada nó verifica as condições necessárias antes de aceitar um bloco. O próprio texto reconhece que mensagens não precisam alcançar todos os nós imediatamente para que o sistema funcione. A descrição original estabelece, assim, uma rede de propagação entre participantes na qual comunicação e aceitação de um bloco permanecem operações distintas.

Satoshi Nakamoto · Bitcoin: A Peer-to-Peer Electronic Cash System · seção 5, “Network”

02

Bitcoin Developer Guide — P2P Network

O guia da rede P2P descreve como nós completos colaboram na troca de blocos e transações, apresenta mecanismos de descoberta de peers, estabelecimento de conexões e propagação dos dados e explica que nós verificam informações antes de retransmiti-las. Também distingue explicitamente as regras de consenso da própria camada de networking. Essa referência sustenta a ideia de que a rede P2P fornece comunicação entre participantes, enquanto validade e consenso pertencem a funções diferentes do sistema.

Bitcoin Developer Guide · P2P Network · Introduction / Peer Discovery / Connecting To Peers / Broadcasting

03

Bitcoin Developer Reference — P2P Network

A referência do protocolo documenta as mensagens utilizadas pelos pares para anunciar e solicitar objetos da rede. Uma mensagem de inventário pode anunciar transações ou blocos conhecidos por determinado peer, enquanto mensagens posteriores permitem solicitar dados ainda não possuídos pelo nó receptor. Isso mostra concretamente que a propagação pode ocorrer por etapas — anúncio, identificação do que falta e solicitação do conteúdo — em vez de exigir que cada participante envie continuamente todos os dados completos a todos os seus pares.

Bitcoin Developer Reference · P2P Network · inv / getdata e mensagens relacionadas

04

Bitcoin Core 31.0 — getpeerinfo

O RPC getpeerinfo do Bitcoin Core 31.0 mostra concretamente que um nó mantém informações separadas sobre cada peer conectado, incluindo endereço, rede utilizada, direção da conexão, atividade de relay, blocos e transações recebidos e diferentes tipos de conexão. A implementação atual confirma que um nó opera por meio de relações com peers específicos e não por uma conexão abstrata e simultânea com todos os participantes da rede.

Bitcoin Core 31.0 · RPC getpeerinfo

P2P distribui a circulação das mensagens, não a autoridade sobre sua validade

A rede do Bitcoin permite que transações, blocos e informações sobre outros participantes circulem por conexões entre pares, sem depender de um servidor central único que distribua tudo para a rede. Mas receber ou retransmitir uma mensagem não obriga um nó a considerá-la válida: comunicação P2P e validação local permanecem funções distintas.