SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Arquitetura peer-to-peer (p2p)
Isac Moura Gomes
Isaac James Mangueira do Nascimento
Descrição
● Se você é realmente um dinossauro da internet, é muito provável que já
tenha ouvido falar sobre a arquitetura peer-to-peer (p2p).
● Mas, refrescando sua memória…
● Peer-to-peer, pares em pares ou P2P para os mais íntimos, define uma
arquitetura em que os nós conectados na rede atuam como clientes e
servidores da rede ao mesmo tempo (servlents) e todos se interligam de
forma descentralizada.
Descrição
● Não há uma hierarquia e todos os
computadores atuam de forma
independente sem a presença de um
servidor.
● Cada par é igual aos outros e cada par
tem os mesmos direitos e deveres que os
outros.
● Os recursos compartilhados em uma rede
P2P podem ser arquivos (aquela cópia
pirata do Office) ou recursos como o uso
do processador, espaço de
armazenamento em disco ou largura de
banda da rede.
Isso daí é muito massa, mas pra quê eu
usaria?
● Na verdade, você já deve
ter usado
Histórico
● USENET, 1979
.
.
● NAPSTER, 1999
.
.
● Atualmente
Requisitos de uma aplicação P2P
● Escalabilidade global
aplicações devem ser projetadas de modo a suportar o acesso a milhões de objetos
em dezenas ou centenas de milhares de hospedeiros.
● Otimização de interações locais entre vizinhos
é necessário as aplicações priorizem a colocação de recursos para nós mais
próximos.
● Disponibilidade
realocar os seus recursos quando há a entrada ou saída de hospedeiros, de modo
que os recursos estejam sempre disponíveis da melhor forma possível.
Para funcionar eficientemente, sistemas peer-to-peer devem se preocupar com os seguintes requisitos
não-funcionais
Quando deve ser utilizado
● Quando deseja-se compartilhar um ou vários arquivos, sem que estes
estejam armazenados num servidor central.
● Como o compartilhamento através de P2P é altamente escalável, esta
arquitetura torna-se atraente, já que todo o conteúdo é transferido
diretamente entre pares comuns, sem passar por servidores de terceiros.
● Assim, essa aplicação tira proveito dos recursos como largura de banda,
armazenamento e CPU de um grande conjunto de pares – às vezes
milhões deles.
Quando deve ser utilizado
● O compartilhamento da banda e a descentralização das buscas e
armazenamento dos arquivos tornam a rede mais rápida. Diminui-se a
ocorrência de gargalos e filas de espera para acesso a determinados
computadores
● Em um âmbito ideológico, quando se quer escapar de censuras na rede.
● Quando se tem muita largura de banda - o número de conexões efetivadas
pelo sistema varia de acordo com a sua largura de banda, ou seja, quanto
mais velocidade de internet, mais conexões com outros usuários, e, assim,
mais velocidade de download
● Resumidamente: uma arquitetura P2P deve ser utilizada quando se quer
uma melhor comunicação entre os nós da rede.
Desvantagens
● Redundância - por conta do tamanho das redes é incomum realizar duas buscas e
adquirir o mesmo resultado, mas é possível;
● Buscas complexas - Número elevado de hospedeiros; Consumo de banda, tráfego
e processamento aumentam.
● Desempenho - Poucos hosters conectados irá ocasionar perda de
desempenho, limitação de buscas e recursos.
Exemplos da arquitetura
Quanto à centralização, arquiteturas peer-to-peer podem ser:
● Híbridas: Supernós são escolhidos para coordenar o ingresso de novos
nós na rede e gerenciar recursos.
● Centralizadas: Um servidor central controla as entradas e saídas na rede.
● Totalmente distribuídas: servents, os nós são cliente e servidor ao mesmo
tempo (server + client).
Arquitetura híbrida
● Supernós escolhidos de forma aleatória possuem controle sobre recursos da
rede e sobre os nós que desejam ingressar.
● Quando um recurso é localizado pelo supernó, a comunicação pode ser feita
livremente pelo par com o outro par.
● Tolerância à falhas: se um supernó falha, outro pode ser escolhido sem
problemas.
Kazzaa e Skype são exemplos de serviços que utilizam arquitetura P2P híbrida.
Arquitetura centralizada
● Um servidor central controla as entradas e saídas de peers na rede.
● Os peers registram no servidor os recursos que irão compartilhar na rede.
● Nós buscam no servidor quais recursos estão disponíveis para serem
utilizados.
● Peers acessam os recursos diretamente aos outros peers.
Exemplos de serviços que utilizam arquitetura P2P centralizada: eMule e Napster, respectivamente.
Arquitetura descentralizada (totalmente distribuída)
● Não há elemento central.
● Todos os nós na rede possuem as mesmas responsabilidades e direitos.
● As pesquisas por recursos disponíveis são feitas por flooding.
● Isto gera um alto tráfego na rede e um desempenho ruim nas pesquisas, já que
é necessário contactar vários nós e aguardar a resposta.
BitTorrent utiliza uma arquitetura P2P descentralizada
A criptomoeda Bitcoin é puramente P2P.
Como mencionado em sala, o Spotify usava P2P. O aplicativo de streaming utilizava
a arquitetura em sua aplicação desktop e parou de usá-la em 2014. A empresa
utilizava P2P quando não tinha servidores suficientes espalhados pelo globo.
Antes da alteração, se você transmitisse uma música popular pela primeira vez, o
cliente faria o download da música de outros usuários, usando ponto a ponto. Tudo
isso acontecia em segundo plano, mas contribuiu muito para tornar a experiência
geral do usuário mais rápida.
No entanto, agora que a empresa tem muitos servidores, usar o peer-to-peer, além
dos downloads diretos, adiciona um pouco de sobrecarga. Além disso, a empresa
precisa manter a base de código peer-to-peer e atualizá-la a cada nova versão. Para
o serviço, não era mais viável utilizar uma arquitetura P2P.
Fonte: TechCrunch
● Digital Citizen - Simple questions: What is P2P (peer-to-peer) and why is it useful?
https://www.digitalcitizen.life/what-is-p2p-peer-to-peer
● Wikipedia - peer to peer: https://pt.wikipedia.org/wiki/Peer-to-peer
● Bitcoin: A Peer-to-Peer Electronic Cash System: https://bitcoin.org/bitcoin.pdf
● Ingenico: P2P payment trends: What’s next?
https://blog.ingenico.com/posts/2017/08/p2p-payment-trends-whats-next.html
● Quora - What are the disadvantages and advantages of a peer-to-peer (P2P) network?
https://www.quora.com/What-are-the-disadvantages-and-advantages-of-a-peer-to-peer-
P2P-network
● TechSoup Brasil - Redes Peer-to-Peer: Noções Básicas
https://www.techsoupbrasil.org.br/node/1917
Referências

Mais conteúdo relacionado

Mais procurados

Redes e servidores guia pratico 2ªedição por carlos e morimoto
Redes e servidores   guia pratico 2ªedição por carlos e morimotoRedes e servidores   guia pratico 2ªedição por carlos e morimoto
Redes e servidores guia pratico 2ªedição por carlos e morimotoPessoal
 
Guia de configuração de um servidor linux para utilização em uma pequena empresa
Guia de configuração de um servidor linux para utilização em uma pequena empresaGuia de configuração de um servidor linux para utilização em uma pequena empresa
Guia de configuração de um servidor linux para utilização em uma pequena empresaSoftD Abreu
 
Trabalho de informatica slide
Trabalho de informatica slideTrabalho de informatica slide
Trabalho de informatica slideLalleska Brandão
 
Linux Redes e Servidores - guia pratico
Linux  Redes e Servidores - guia pratico Linux  Redes e Servidores - guia pratico
Linux Redes e Servidores - guia pratico SoftD Abreu
 
Redes prática - Samba
Redes prática - SambaRedes prática - Samba
Redes prática - SambaLuiz Arthur
 
NFS – Network File System
NFS – Network File SystemNFS – Network File System
NFS – Network File SystemMarlon Munhoz
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDFrederico Madeira
 
Alta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQLAlta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQLLeonardo Cezar
 
Rct 15 - camada de transporte
Rct   15 - camada de transporteRct   15 - camada de transporte
Rct 15 - camada de transporteUniversal.org.mx
 
Guia prático de redes cabeamento & configuração de carlos e. morimoto por b...
Guia prático de redes   cabeamento & configuração de carlos e. morimoto por b...Guia prático de redes   cabeamento & configuração de carlos e. morimoto por b...
Guia prático de redes cabeamento & configuração de carlos e. morimoto por b...Eduardo Santana
 

Mais procurados (15)

Redes e servidores guia pratico 2ªedição por carlos e morimoto
Redes e servidores   guia pratico 2ªedição por carlos e morimotoRedes e servidores   guia pratico 2ªedição por carlos e morimoto
Redes e servidores guia pratico 2ªedição por carlos e morimoto
 
Guia de configuração de um servidor linux para utilização em uma pequena empresa
Guia de configuração de um servidor linux para utilização em uma pequena empresaGuia de configuração de um servidor linux para utilização em uma pequena empresa
Guia de configuração de um servidor linux para utilização em uma pequena empresa
 
Trabalho de informatica slide
Trabalho de informatica slideTrabalho de informatica slide
Trabalho de informatica slide
 
Artigo Rodolfho
Artigo RodolfhoArtigo Rodolfho
Artigo Rodolfho
 
Gfs slides
Gfs slidesGfs slides
Gfs slides
 
Aulas frc 06
Aulas frc  06Aulas frc  06
Aulas frc 06
 
Linux Redes e Servidores - guia pratico
Linux  Redes e Servidores - guia pratico Linux  Redes e Servidores - guia pratico
Linux Redes e Servidores - guia pratico
 
Redes prática - Samba
Redes prática - SambaRedes prática - Samba
Redes prática - Samba
 
NFS – Network File System
NFS – Network File SystemNFS – Network File System
NFS – Network File System
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBD
 
Alta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQLAlta disponibilidade com PostgreSQL
Alta disponibilidade com PostgreSQL
 
Rct 15 - camada de transporte
Rct   15 - camada de transporteRct   15 - camada de transporte
Rct 15 - camada de transporte
 
Guia prático de redes cabeamento & configuração de carlos e. morimoto por b...
Guia prático de redes   cabeamento & configuração de carlos e. morimoto por b...Guia prático de redes   cabeamento & configuração de carlos e. morimoto por b...
Guia prático de redes cabeamento & configuração de carlos e. morimoto por b...
 
Slides nginx
Slides nginxSlides nginx
Slides nginx
 
Google File System
Google File SystemGoogle File System
Google File System
 

Semelhante a Arquitetura P2P

Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em redeFabio Roberto
 
57933300-TI-Arquitetura-de-Rede-Concursos.pdf
57933300-TI-Arquitetura-de-Rede-Concursos.pdf57933300-TI-Arquitetura-de-Rede-Concursos.pdf
57933300-TI-Arquitetura-de-Rede-Concursos.pdfRicardoZorekDaniel1
 
Comparação entre p2 p e cs
Comparação entre p2 p e csComparação entre p2 p e cs
Comparação entre p2 p e csAna Paula Gama
 
Comparação entre p2 p e cs
Comparação entre p2 p e csComparação entre p2 p e cs
Comparação entre p2 p e csAna Paula Gama
 
Comparação entre p2 p e cs
Comparação entre p2 p e csComparação entre p2 p e cs
Comparação entre p2 p e csAna Paula Gama
 
Peer-to-peer
Peer-to-peerPeer-to-peer
Peer-to-peerLeo-Sotto
 
Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01
Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01
Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01Campannhas Valerio
 
Apresentação cloud computing senac
Apresentação cloud computing senacApresentação cloud computing senac
Apresentação cloud computing senacfrank encarnacão
 
Redes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. MorimotoRedes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. MorimotoHeber Gutenberg
 
164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...
164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...
164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...Robson Levi
 

Semelhante a Arquitetura P2P (20)

Introdução ao P2P
Introdução ao P2PIntrodução ao P2P
Introdução ao P2P
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em rede
 
Redes 1
Redes 1Redes 1
Redes 1
 
57933300-TI-Arquitetura-de-Rede-Concursos.pdf
57933300-TI-Arquitetura-de-Rede-Concursos.pdf57933300-TI-Arquitetura-de-Rede-Concursos.pdf
57933300-TI-Arquitetura-de-Rede-Concursos.pdf
 
Comparação entre p2 p e cs
Comparação entre p2 p e csComparação entre p2 p e cs
Comparação entre p2 p e cs
 
Comparação entre p2 p e cs
Comparação entre p2 p e csComparação entre p2 p e cs
Comparação entre p2 p e cs
 
Comparação entre p2 p e cs
Comparação entre p2 p e csComparação entre p2 p e cs
Comparação entre p2 p e cs
 
Peer-to-peer
Peer-to-peerPeer-to-peer
Peer-to-peer
 
Computadores
ComputadoresComputadores
Computadores
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01
Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01
Guia pratico-rede-e-servidores-linux-120904130641-phpapp01-140507215427-phpapp01
 
Apresentação cloud computing senac
Apresentação cloud computing senacApresentação cloud computing senac
Apresentação cloud computing senac
 
Servidor proxy
Servidor proxyServidor proxy
Servidor proxy
 
Servidor proxy
Servidor proxyServidor proxy
Servidor proxy
 
Redes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. MorimotoRedes e Servidores Linux - Guia Prático - Carlos E. Morimoto
Redes e Servidores Linux - Guia Prático - Carlos E. Morimoto
 
Cirrus
CirrusCirrus
Cirrus
 
164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...
164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...
164519997 curso-de-redes-laercio-vasconcelos-capitulo-01-141027091745-convers...
 
OpenShift
OpenShiftOpenShift
OpenShift
 
Computação em nuvem
Computação em nuvemComputação em nuvem
Computação em nuvem
 
CDN
CDNCDN
CDN
 

Arquitetura P2P

  • 1. Arquitetura peer-to-peer (p2p) Isac Moura Gomes Isaac James Mangueira do Nascimento
  • 2. Descrição ● Se você é realmente um dinossauro da internet, é muito provável que já tenha ouvido falar sobre a arquitetura peer-to-peer (p2p). ● Mas, refrescando sua memória… ● Peer-to-peer, pares em pares ou P2P para os mais íntimos, define uma arquitetura em que os nós conectados na rede atuam como clientes e servidores da rede ao mesmo tempo (servlents) e todos se interligam de forma descentralizada.
  • 3. Descrição ● Não há uma hierarquia e todos os computadores atuam de forma independente sem a presença de um servidor. ● Cada par é igual aos outros e cada par tem os mesmos direitos e deveres que os outros. ● Os recursos compartilhados em uma rede P2P podem ser arquivos (aquela cópia pirata do Office) ou recursos como o uso do processador, espaço de armazenamento em disco ou largura de banda da rede.
  • 4. Isso daí é muito massa, mas pra quê eu usaria? ● Na verdade, você já deve ter usado
  • 5. Histórico ● USENET, 1979 . . ● NAPSTER, 1999 . . ● Atualmente
  • 6. Requisitos de uma aplicação P2P ● Escalabilidade global aplicações devem ser projetadas de modo a suportar o acesso a milhões de objetos em dezenas ou centenas de milhares de hospedeiros. ● Otimização de interações locais entre vizinhos é necessário as aplicações priorizem a colocação de recursos para nós mais próximos. ● Disponibilidade realocar os seus recursos quando há a entrada ou saída de hospedeiros, de modo que os recursos estejam sempre disponíveis da melhor forma possível. Para funcionar eficientemente, sistemas peer-to-peer devem se preocupar com os seguintes requisitos não-funcionais
  • 7. Quando deve ser utilizado ● Quando deseja-se compartilhar um ou vários arquivos, sem que estes estejam armazenados num servidor central. ● Como o compartilhamento através de P2P é altamente escalável, esta arquitetura torna-se atraente, já que todo o conteúdo é transferido diretamente entre pares comuns, sem passar por servidores de terceiros. ● Assim, essa aplicação tira proveito dos recursos como largura de banda, armazenamento e CPU de um grande conjunto de pares – às vezes milhões deles.
  • 8. Quando deve ser utilizado ● O compartilhamento da banda e a descentralização das buscas e armazenamento dos arquivos tornam a rede mais rápida. Diminui-se a ocorrência de gargalos e filas de espera para acesso a determinados computadores ● Em um âmbito ideológico, quando se quer escapar de censuras na rede. ● Quando se tem muita largura de banda - o número de conexões efetivadas pelo sistema varia de acordo com a sua largura de banda, ou seja, quanto mais velocidade de internet, mais conexões com outros usuários, e, assim, mais velocidade de download ● Resumidamente: uma arquitetura P2P deve ser utilizada quando se quer uma melhor comunicação entre os nós da rede.
  • 9. Desvantagens ● Redundância - por conta do tamanho das redes é incomum realizar duas buscas e adquirir o mesmo resultado, mas é possível; ● Buscas complexas - Número elevado de hospedeiros; Consumo de banda, tráfego e processamento aumentam. ● Desempenho - Poucos hosters conectados irá ocasionar perda de desempenho, limitação de buscas e recursos.
  • 10. Exemplos da arquitetura Quanto à centralização, arquiteturas peer-to-peer podem ser: ● Híbridas: Supernós são escolhidos para coordenar o ingresso de novos nós na rede e gerenciar recursos. ● Centralizadas: Um servidor central controla as entradas e saídas na rede. ● Totalmente distribuídas: servents, os nós são cliente e servidor ao mesmo tempo (server + client).
  • 11. Arquitetura híbrida ● Supernós escolhidos de forma aleatória possuem controle sobre recursos da rede e sobre os nós que desejam ingressar. ● Quando um recurso é localizado pelo supernó, a comunicação pode ser feita livremente pelo par com o outro par. ● Tolerância à falhas: se um supernó falha, outro pode ser escolhido sem problemas.
  • 12. Kazzaa e Skype são exemplos de serviços que utilizam arquitetura P2P híbrida.
  • 13. Arquitetura centralizada ● Um servidor central controla as entradas e saídas de peers na rede. ● Os peers registram no servidor os recursos que irão compartilhar na rede. ● Nós buscam no servidor quais recursos estão disponíveis para serem utilizados. ● Peers acessam os recursos diretamente aos outros peers.
  • 14. Exemplos de serviços que utilizam arquitetura P2P centralizada: eMule e Napster, respectivamente.
  • 15. Arquitetura descentralizada (totalmente distribuída) ● Não há elemento central. ● Todos os nós na rede possuem as mesmas responsabilidades e direitos. ● As pesquisas por recursos disponíveis são feitas por flooding. ● Isto gera um alto tráfego na rede e um desempenho ruim nas pesquisas, já que é necessário contactar vários nós e aguardar a resposta.
  • 16. BitTorrent utiliza uma arquitetura P2P descentralizada
  • 17. A criptomoeda Bitcoin é puramente P2P.
  • 18. Como mencionado em sala, o Spotify usava P2P. O aplicativo de streaming utilizava a arquitetura em sua aplicação desktop e parou de usá-la em 2014. A empresa utilizava P2P quando não tinha servidores suficientes espalhados pelo globo. Antes da alteração, se você transmitisse uma música popular pela primeira vez, o cliente faria o download da música de outros usuários, usando ponto a ponto. Tudo isso acontecia em segundo plano, mas contribuiu muito para tornar a experiência geral do usuário mais rápida. No entanto, agora que a empresa tem muitos servidores, usar o peer-to-peer, além dos downloads diretos, adiciona um pouco de sobrecarga. Além disso, a empresa precisa manter a base de código peer-to-peer e atualizá-la a cada nova versão. Para o serviço, não era mais viável utilizar uma arquitetura P2P. Fonte: TechCrunch
  • 19. ● Digital Citizen - Simple questions: What is P2P (peer-to-peer) and why is it useful? https://www.digitalcitizen.life/what-is-p2p-peer-to-peer ● Wikipedia - peer to peer: https://pt.wikipedia.org/wiki/Peer-to-peer ● Bitcoin: A Peer-to-Peer Electronic Cash System: https://bitcoin.org/bitcoin.pdf ● Ingenico: P2P payment trends: What’s next? https://blog.ingenico.com/posts/2017/08/p2p-payment-trends-whats-next.html ● Quora - What are the disadvantages and advantages of a peer-to-peer (P2P) network? https://www.quora.com/What-are-the-disadvantages-and-advantages-of-a-peer-to-peer- P2P-network ● TechSoup Brasil - Redes Peer-to-Peer: Noções Básicas https://www.techsoupbrasil.org.br/node/1917 Referências