O que é P2P? Entenda como funciona o modelo de rede usado em torrents
Redes P2P costumam ser usadas no compartilhamento de torrents, mas também são aplicadas para transações de criptomoedas e armazenamento de dados
Redes P2P costumam ser usadas no compartilhamento de torrents, mas também são aplicadas para transações de criptomoedas e armazenamento de dados
Peer-to-peer (ou P2P) é um modelo de rede descentralizado, que habilita a comunicação direta entre dispositivos conectados em um mesmo ambiente. No P2P, computadores atuam como clientes e servidores durante a troca de dados, o que elimina a necessidade de um servidor central.
O exemplo mais famoso de uso das redes P2P envolve o compartilhamento de arquivos torrent via clientes como uTorrent. No entanto, redes peer-to-peer também são usadas em transações de ativos digitais, em aplicativos de streaming, e armazenamento de dados.
A descentralização é a principal vantagem das redes P2P. Isso porque a comunicação ponto a ponto e a ausência de um servidor central permitem a escalabilidade da rede, além de tornarem os compartilhamentos mais resistentes a falhas.
A seguir, saiba o que é P2P, entenda sobre o funcionamento desse modelo de rede, e confira vantagens e desvantagens de seu uso.
Peer-to-peer (ou P2P) é um modelo de rede que permite a comunicação direta entre computadores de maneira descentralizada. Em outras palavras, as interações acontecem de um dispositivo (peer) para outro sem intermediários, o que resulta em uma rede “ponto a ponto” (tradução livre de peer-to-peer).
Na rede P2P, dispositivos com internet conectados a um software peer-to-peer atuam como cliente e servidor simultaneamente, o que elimina a necessidade de um servidor central. Isso faz com que computadores em uma mesma rede sejam capazes de solicitar ou fornecer recursos e serviços entre eles.
Exemplificando o peer-to-peer, um usuário que baixar um arquivo torrent (leech) também fará o papel de servidor ao fazer upload de partes do item (seed), retroalimentando a rede e permitindo o download por outros usuários conectados.
A origem do conceito P2P remete às criações das redes ARPANET (1969) e Usenet (1979). Enquanto a ARPANET fomentou a ideia de conexão entre computadores em diferentes localidades, a Usenet trouxe o conceito de uma rede descentralizada para compartilhamento de arquivos.
Anos mais tarde, em 1999, o modelo peer-to-peer passou a ganhar forma com a chegada do Napster, desenvolvido por Shawn Fanning. A rede permitiu que usuários usassem um programa para compartilhar arquivos dos discos locais um dos outros, embora ainda houvesse a necessidade de um servidor central.
O conceito do P2P “puro” só veio a ocorrer em 2000, com o lançamento do Gnutella. Criado por Justin Frankel eTom Pepper, o protocolo eliminou a necessidade de um servidor central, e permitiu a comunicação direta entre os computadores em rede, que passaram a atuar como cliente e servidor de maneira simultânea.
O modelo P2P se baseia no compartilhamento de arquivos entre dispositivos conectados em rede, sem a necessidade de um servidor central. Essa conexão ponto a ponto acontece via softwares P2P dedicados (como uTorrent ou eMule), que dão acesso a itens compartilháveis alocados em cada aparelho.
Quando um dispositivo (peer) busca por um arquivo, a rede P2P vai procurá-lo em outros computadores conectados que possuem o item, facilitando e acelerando o download. De maneira simplificada, cada computador fará uploads de fragmentos do arquivo para que o usuário consiga baixar o item na íntegra.
Esse processo ajuda a explicar o conceito do modelo P2P: por conta da ausência de um servidor central, todos os dispositivos conectados atuam como cliente (ao baixar um arquivo) e como servidor (ao hostear fragmentos do arquivo para downloads de terceiros).
O resultado disso consiste em uma rede direta para compartilhamento de arquivos, descentralizada, e que atua de forma colaborativa com a participação dos usuários conectados.
O protocolo P2P é o conjunto de regras e padrões que ditam como os dispositivos vão se comunicar entre si em um ambiente peer-to-peer, de modo a estabelecer um padrão para que os pontos da rede sigam os mesmos procedimentos.
Os protocolos peer-to-peer são responsáveis por estipular a forma com que os dispositivos localizarão uns aos outros na rede, e como será a transferência de dados (via divisão, fragmentação ou união, por exemplo). Além disso, os protocolos realizam manutenções da rede e ditam os recursos de segurança para os compartilhamentos.
Vale destacar que protocolo P2P não é o mesmo que uma rede P2P: enquanto o primeiro consiste no conjunto de regras para a comunicação entre dispositivos em uma rede, o segundo refere-se ao grupo de dispositivos conectados.
Exemplos de protocolos P2P usados para compartilhamentos e transferências blockchain incluem nomes como BitTorrent, Gnutella, Tor e Ethereum.
Por ser uma forma de comunicação descentralizada entre dispositivos, as redes P2P podem ser aplicadas a diversas áreas, como:
O uso de redes P2P pode ser útil em diversas situações, especialmente quando se trata de compartilhamento de dados. E dentre os principais benefícios da rede peer-to-peer, estão:
Apesar do papel importante na comunicação descentralizada entre computadores, o uso de redes peer-to-peer também pode ser atrelado a problemas éticos e de segurança. Algumas das desvantagens do P2P envolvem:
A rede P2P tem estrutura escalável e descentralizada, de forma a permitir a comunicação entre os computadores sem a necessidade de um servidor central. Por conta disso, todos os dispositivos conectados tem papéis computacionais iguais, atuando como clientes e servidores.
Já redes cliente-servidor seguem uma estrutura centralizada e hierárquica: clientes fazem as requisições, enquanto o servidor processa os dados e executa as tarefas. E como não há distribuição entre peers, a escalabilidade da rede é limitada à capacidade do servidor central.