SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
PEER-TO-PEER SYSTEMS
Léo Françoso Dal Piccol Sotto
Victor De Cia Costa
Introdução
● Sistemas peer-to-peer têm como objetivo apoiar serviços
distribuídos e aplicações úteis usando dados e recursos de
computação disponíveis nos computadores que estão
presentes na rede.
● É uma arquitetura de computação distribuída onde os nós
participantes alternam entre clientes e servidores. Em teoria,
cada nó é idempodente, compartilhando recursos, sem um
servidor central.
Definição
Algumas características de sistemas peer-to-peer:
● Seu projeto garante que cada usuário contribui com recursos
para o sistema.
● Embora possam diferir nos recursos que contribuem, todos os
nós em um sistema de peer-to-peer têm as mesmas
capacidades e responsabilidades funcionais.
● Sua operação correta não depende da existência de qualquer
sistemas administrados centralmente.
Uma rede P2P em que nós interligados
(pares) compartilham recursos entre si,
sem o uso de um sistema administrativo
centralizado.
Uma rede com base no modelo cliente-
servidor, onde os clientes individuais
solicitam serviços e recursos a partir de
servidores centralizados.
Definição(continuação)
Definição
● Os nós em um sistema peer-to-peer formam uma Overlay
Network.
● Uma questão fundamental para o seu funcionamento eficiente
é a escolha de um algoritmo para a colocação de dados em
hosts, e o subsequente acesso a eles → Roteamento
(continuação)
Vantagens
● Como não há servidor central, não há ponto único de falha.
● Escalabilidade para suportar novos nós (um nó que entra
contribui para a rede).
● Capacidade de auto-adaptação dos nós.
● Dados em mais nós → Maior acessibilidade
Desvantagens
● Contúdos pouco populares podem ser mais difíceis de serem
encontrados, pois é fornecido por menos nós.
● Complexidade. Algumas arquiteturas de Overlay podem exigir
protocolos e algoritmos mais complexos, quando comparado a
sistemas cliente-servidor.
Arquiteturas - Centralização
● Puramente Descentralizadas
● Parcialmente Centralizadas
● Híbridas
● Na prática, muitas aplicações usam algum tipo de centralização
para tarefas como inicialização (lista com nós atuais, por
exemplo, Gnutella).
Arquiteturas – Estruturação
● Não estruturadas
● Estruturadas
Segurança
● Existência de vulnerabilidade em sistemas
peer-to-peer
● Possíveis ataques:
● Incorrect Lookup Routing
● Incorrect Routing Updates
● Incorrect Routing Network Partition
● Envio de dados corrompidos
● Envio de malwares
Categorias
● Existem diferentes categorias de sistemas peer-
to-peer.
● Compartilhamento de arquivos (BitTorrent,
Napster, Gnutella)
● Multimedia (Peercasting, Skype, Spotfy)
● Compartilhamento de processamento
● ...
Arquitetura Híbrida (não-estruturada)
Um servidor de diretório central mantém um índice de metadados para todos os
arquivos na rede.
● Simples
● Busca eficiente
● Ponto Único de Falha
● Menos escalabilidade
● Exemplos: Napster, Publius
Arquitetura Híbrida (não-estruturada)
Não há coordenação central das atividades da rede. Os usuários
se conectam diretamente uns aos outros através de uma aplicação
de software que funciona tanto como um cliente e um servidor
(usuários são referidos como um servents).
Mensagens
Ping, Pong, Query, Query Hit
Arquitetura Puramente Descentralizada
Arquitetura Puramente Descentralizada
● Supernós – Nós responsáveis por uma parte da rede
● Queries são mandadas para os supernós apenas
● Eleição automática de supernós em caso de falha
● Exemplo: Kazaa
Arquitetura Parcialmente Centralizada
Arquitetura Estruturada
A Overlay é organizada em uma topologia específica, e o protocolo garante que qualquer
nó pode eficientemente procurar na rede um arquivo / recurso, mesmo se o recurso é
extremamente raro. (Utilizando uma DHT para localizar e identificar os nós)
Chord
● Chord é um protocolo para sistemas peer-to-peer, que usa Tabelas
Hash Distribuídas (DHT).
● Os nós possuem uma tabela de encaminhamento distribuído sob a
forma de um círculo identificador no qual todos os nós estão
mapeados, e uma finger table associada.
● Busca log(n)
CAN
● Protocolo que também usa DHT
● CAN – Content Adressable Network
● Usa um espaço Cartesiano de coordenadas n-dimensional para
implementar a tabela de localização e de encaminhamento distribuído,
em que cada nó é responsável por uma zona no espaço de
coordenadas.
● Função mapeia chave K para ponto P.
● Nós guardam chaves (chave K, valor V).
CAN
CAN
● Quando um novo nó entra, uma zona é dividida.
● O novo nó manda um JOIN para um nó em determinada zona, e eles
dividem essa zona.
● As tabelas de roteamento devem ser atualizadas.
● Cada nó envia mensagens de update aos vizinhos.
Referências
● http://en.wikipedia.org/wiki/Peer-to-peer
● Stephanos Androutsellis-Theotokis, Diomidis Spinellis, A Survey of
Peer-to-Peer Content Distribution Technologies, disponível em
http://www.spinellis.gr/pubs/jrnl/2004-ACMCS-p2p/html/AS04.html

Mais conteúdo relacionado

Mais procurados

Instalação, configuração e administração de um SO Cliente/Servidor
Instalação, configuração e administração de um SO Cliente/ServidorInstalação, configuração e administração de um SO Cliente/Servidor
Instalação, configuração e administração de um SO Cliente/ServidorEdgar Costa
 
Endereçamento IP
Endereçamento IPEndereçamento IP
Endereçamento IPPjpilin
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Pepe Rocker
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
 
Redes de Computadores
Redes de ComputadoresRedes de Computadores
Redes de ComputadoresFábio Eliseu
 
Permissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos LinuxPermissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos LinuxWellington Oliveira
 
Sistemas Distribuídos - Comunicação Distribuída - Socket
Sistemas Distribuídos - Comunicação Distribuída - SocketSistemas Distribuídos - Comunicação Distribuída - Socket
Sistemas Distribuídos - Comunicação Distribuída - SocketAdriano Teixeira de Souza
 
SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosFrederico Madeira
 
Introdução aos Serviços de Rede
Introdução aos Serviços de RedeIntrodução aos Serviços de Rede
Introdução aos Serviços de RedeNatanael Simões
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosHélio Jovo
 
Modelo de camadas TCP/IP
Modelo de camadas TCP/IPModelo de camadas TCP/IP
Modelo de camadas TCP/IPEvandro Júnior
 
Tipos de Licença de Softwares
Tipos de Licença de SoftwaresTipos de Licença de Softwares
Tipos de Licença de SoftwaresLucas Castejon
 

Mais procurados (20)

Instalação, configuração e administração de um SO Cliente/Servidor
Instalação, configuração e administração de um SO Cliente/ServidorInstalação, configuração e administração de um SO Cliente/Servidor
Instalação, configuração e administração de um SO Cliente/Servidor
 
Endereçamento IP
Endereçamento IPEndereçamento IP
Endereçamento IP
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)
 
Virtualização
VirtualizaçãoVirtualização
Virtualização
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
 
Introducao as rede de computadores
Introducao as rede de computadoresIntroducao as rede de computadores
Introducao as rede de computadores
 
Endereçamento de memória
Endereçamento de memóriaEndereçamento de memória
Endereçamento de memória
 
Principais protocolos de rede
Principais protocolos de redePrincipais protocolos de rede
Principais protocolos de rede
 
Sistemas digitais
Sistemas digitaisSistemas digitais
Sistemas digitais
 
Redes de Computadores
Redes de ComputadoresRedes de Computadores
Redes de Computadores
 
Permissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos LinuxPermissão de Acesso - Sistema de Arquivos Linux
Permissão de Acesso - Sistema de Arquivos Linux
 
Pseudoparalelismo
PseudoparalelismoPseudoparalelismo
Pseudoparalelismo
 
Sistemas Distribuídos - Comunicação Distribuída - Socket
Sistemas Distribuídos - Comunicação Distribuída - SocketSistemas Distribuídos - Comunicação Distribuída - Socket
Sistemas Distribuídos - Comunicação Distribuída - Socket
 
Arquitetura de Redes de Computadores
 Arquitetura de Redes de Computadores Arquitetura de Redes de Computadores
Arquitetura de Redes de Computadores
 
SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas Distribuidos
 
Introdução aos Serviços de Rede
Introdução aos Serviços de RedeIntrodução aos Serviços de Rede
Introdução aos Serviços de Rede
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Modelo de camadas TCP/IP
Modelo de camadas TCP/IPModelo de camadas TCP/IP
Modelo de camadas TCP/IP
 
Segurança em sistemas distribuidos
Segurança em sistemas distribuidosSegurança em sistemas distribuidos
Segurança em sistemas distribuidos
 
Tipos de Licença de Softwares
Tipos de Licença de SoftwaresTipos de Licença de Softwares
Tipos de Licença de Softwares
 

Semelhante a Peer-to-peer

Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Isac Moura
 
Componentes de uma Rede de computadores
Componentes de uma Rede de computadoresComponentes de uma Rede de computadores
Componentes de uma Rede de computadoresFelipe Silva
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Messias Batista
 
Aula 1 - Introducao.pdf
Aula 1 - Introducao.pdfAula 1 - Introducao.pdf
Aula 1 - Introducao.pdfRoberto Aragy
 
Aula - Redes peer to peer.pdf
Aula - Redes peer to peer.pdfAula - Redes peer to peer.pdf
Aula - Redes peer to peer.pdfMarcondesTiburcio
 
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...Dalton Martins
 
Sistema Computacao Revisao 1
Sistema Computacao Revisao 1Sistema Computacao Revisao 1
Sistema Computacao Revisao 1Duílio Andrade
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxChadidoDiogo1
 
Desenho da rede
Desenho da redeDesenho da rede
Desenho da redeH P
 
Aula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de ComputadoresAula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de ComputadoresDalton Martins
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadoresCarol Pereira
 
P2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosP2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosGustavo Monteiro
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoFrederico Madeira
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em redeFabio Roberto
 

Semelhante a Peer-to-peer (20)

Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
Componentes de uma Rede de computadores
Componentes de uma Rede de computadoresComponentes de uma Rede de computadores
Componentes de uma Rede de computadores
 
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
Aula07 - Sistemas Distribuídos - Aula de Revisão da NP1
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
 
Aula 1 - Introducao.pdf
Aula 1 - Introducao.pdfAula 1 - Introducao.pdf
Aula 1 - Introducao.pdf
 
Introdução ao P2P
Introdução ao P2PIntrodução ao P2P
Introdução ao P2P
 
Aula - Redes peer to peer.pdf
Aula - Redes peer to peer.pdfAula - Redes peer to peer.pdf
Aula - Redes peer to peer.pdf
 
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
Aula 06 - Caracterizando fluxo de tráfego e Projeto de Topologia - Parte I - ...
 
Hadoop
HadoopHadoop
Hadoop
 
Sistema Computacao Revisao 1
Sistema Computacao Revisao 1Sistema Computacao Revisao 1
Sistema Computacao Revisao 1
 
Rede Definida Por Software - SDN
Rede Definida Por Software - SDNRede Definida Por Software - SDN
Rede Definida Por Software - SDN
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
 
Desenho da rede
Desenho da redeDesenho da rede
Desenho da rede
 
Trabalho de rede.
Trabalho de rede.Trabalho de rede.
Trabalho de rede.
 
Aula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de ComputadoresAula Teste Fatec - Projeto de Redes de Computadores
Aula Teste Fatec - Projeto de Redes de Computadores
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
P2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosP2P - Sistemas Distribuídos
P2P - Sistemas Distribuídos
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em rede
 

Peer-to-peer

  • 1. PEER-TO-PEER SYSTEMS Léo Françoso Dal Piccol Sotto Victor De Cia Costa
  • 2. Introdução ● Sistemas peer-to-peer têm como objetivo apoiar serviços distribuídos e aplicações úteis usando dados e recursos de computação disponíveis nos computadores que estão presentes na rede. ● É uma arquitetura de computação distribuída onde os nós participantes alternam entre clientes e servidores. Em teoria, cada nó é idempodente, compartilhando recursos, sem um servidor central.
  • 3. Definição Algumas características de sistemas peer-to-peer: ● Seu projeto garante que cada usuário contribui com recursos para o sistema. ● Embora possam diferir nos recursos que contribuem, todos os nós em um sistema de peer-to-peer têm as mesmas capacidades e responsabilidades funcionais. ● Sua operação correta não depende da existência de qualquer sistemas administrados centralmente.
  • 4. Uma rede P2P em que nós interligados (pares) compartilham recursos entre si, sem o uso de um sistema administrativo centralizado. Uma rede com base no modelo cliente- servidor, onde os clientes individuais solicitam serviços e recursos a partir de servidores centralizados. Definição(continuação)
  • 5. Definição ● Os nós em um sistema peer-to-peer formam uma Overlay Network. ● Uma questão fundamental para o seu funcionamento eficiente é a escolha de um algoritmo para a colocação de dados em hosts, e o subsequente acesso a eles → Roteamento (continuação)
  • 6. Vantagens ● Como não há servidor central, não há ponto único de falha. ● Escalabilidade para suportar novos nós (um nó que entra contribui para a rede). ● Capacidade de auto-adaptação dos nós. ● Dados em mais nós → Maior acessibilidade
  • 7. Desvantagens ● Contúdos pouco populares podem ser mais difíceis de serem encontrados, pois é fornecido por menos nós. ● Complexidade. Algumas arquiteturas de Overlay podem exigir protocolos e algoritmos mais complexos, quando comparado a sistemas cliente-servidor.
  • 8. Arquiteturas - Centralização ● Puramente Descentralizadas ● Parcialmente Centralizadas ● Híbridas ● Na prática, muitas aplicações usam algum tipo de centralização para tarefas como inicialização (lista com nós atuais, por exemplo, Gnutella).
  • 9. Arquiteturas – Estruturação ● Não estruturadas ● Estruturadas
  • 10. Segurança ● Existência de vulnerabilidade em sistemas peer-to-peer ● Possíveis ataques: ● Incorrect Lookup Routing ● Incorrect Routing Updates ● Incorrect Routing Network Partition ● Envio de dados corrompidos ● Envio de malwares
  • 11. Categorias ● Existem diferentes categorias de sistemas peer- to-peer. ● Compartilhamento de arquivos (BitTorrent, Napster, Gnutella) ● Multimedia (Peercasting, Skype, Spotfy) ● Compartilhamento de processamento ● ...
  • 12. Arquitetura Híbrida (não-estruturada) Um servidor de diretório central mantém um índice de metadados para todos os arquivos na rede.
  • 13. ● Simples ● Busca eficiente ● Ponto Único de Falha ● Menos escalabilidade ● Exemplos: Napster, Publius Arquitetura Híbrida (não-estruturada)
  • 14. Não há coordenação central das atividades da rede. Os usuários se conectam diretamente uns aos outros através de uma aplicação de software que funciona tanto como um cliente e um servidor (usuários são referidos como um servents). Mensagens Ping, Pong, Query, Query Hit Arquitetura Puramente Descentralizada
  • 16. ● Supernós – Nós responsáveis por uma parte da rede ● Queries são mandadas para os supernós apenas ● Eleição automática de supernós em caso de falha ● Exemplo: Kazaa Arquitetura Parcialmente Centralizada
  • 17. Arquitetura Estruturada A Overlay é organizada em uma topologia específica, e o protocolo garante que qualquer nó pode eficientemente procurar na rede um arquivo / recurso, mesmo se o recurso é extremamente raro. (Utilizando uma DHT para localizar e identificar os nós)
  • 18. Chord ● Chord é um protocolo para sistemas peer-to-peer, que usa Tabelas Hash Distribuídas (DHT). ● Os nós possuem uma tabela de encaminhamento distribuído sob a forma de um círculo identificador no qual todos os nós estão mapeados, e uma finger table associada. ● Busca log(n)
  • 19. CAN ● Protocolo que também usa DHT ● CAN – Content Adressable Network ● Usa um espaço Cartesiano de coordenadas n-dimensional para implementar a tabela de localização e de encaminhamento distribuído, em que cada nó é responsável por uma zona no espaço de coordenadas. ● Função mapeia chave K para ponto P. ● Nós guardam chaves (chave K, valor V).
  • 20. CAN
  • 21. CAN ● Quando um novo nó entra, uma zona é dividida. ● O novo nó manda um JOIN para um nó em determinada zona, e eles dividem essa zona. ● As tabelas de roteamento devem ser atualizadas. ● Cada nó envia mensagens de update aos vizinhos.
  • 22. Referências ● http://en.wikipedia.org/wiki/Peer-to-peer ● Stephanos Androutsellis-Theotokis, Diomidis Spinellis, A Survey of Peer-to-Peer Content Distribution Technologies, disponível em http://www.spinellis.gr/pubs/jrnl/2004-ACMCS-p2p/html/AS04.html