![Page 1: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/1.jpg)
Aplicações P2PAplicações P2P
André Lucio e Gabriel Argolo
![Page 2: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/2.jpg)
TópicosTópicos
� Internet� Peer-to-Peer (Introdução)� Modelos (Classificação)� Napster� Gnutella� DHT� KaZaA
![Page 3: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/3.jpg)
Razões para o Sucesso da Razões para o Sucesso da InternetInternet
� Capacidade de interligar várias redes� Características:
– Aberta– Pública– De alcance mundial
� O que faz aplicações para a Internet darem certo (pegarem)?– Resolver problemas
![Page 4: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/4.jpg)
Modelo de interação entre Modelo de interação entre computadores na Internetcomputadores na Internet
� Cliente/Servidor� Dependente de Servidores bem
configurados em com informação acessível� Não explora o potencial de computação
distribuída proveniente da Rede� A existência de um ou milhares de
computadores é indiferente na interação de um usuário típico com a rede
![Page 5: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/5.jpg)
O que são Sistemas P2P?O que são Sistemas P2P?
� Sistemas distribuídos sem controle centralizado ou organização hierárquica
� Software executado em cada elemento (ponto) é equivalente em funcionalidade
� Têm recebido grande atenção:– Usuários– Empresas– Meios acadêmicos
![Page 6: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/6.jpg)
DefiniçãoDefinição
� P2P é uma classe de aplicações que leva vantagem de recursos disponíveis nas bordas da Internet
� Quais recursos?– Armazenamento– Tempo de CPU– Conteúdo– Presença humana
![Page 7: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/7.jpg)
CaracterísticasCaracterísticas
� Cada participante age como cliente e servidor ao mesmo tempo
� Cada cliente “paga” a sua participação fornecendo acesso a (alguns de) seus recursos– Exceções são comuns: freeloaders ou vampiros– Gnutella: 50% dos arquivos são fornecidos por
1% dos participantes
![Page 8: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/8.jpg)
CaracterísticasCaracterísticas� Sem coordenação central� Sem banco de dados central� Sem local único de falha ou gargalo� Nenhum ponto (peer) tem visão global do sistema� Comportamento global definido por interações
locais� Todos os dados e serviços são acessíveis de
qualquer ponto� Pontos são autônomos� Pontos e conexões não são confiáveis
![Page 9: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/9.jpg)
Origem de P2POrigem de P2P
� A Internet era P2P no início� Qualquer computador funcionava como
cliente e servidor– Aplicações principais: TELNET e FTP
� A “cooperação” era o principal objetivo e o “valor” da rede
![Page 10: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/10.jpg)
Aplicações InovadorasAplicações Inovadoras� Mensagens instantâneas � Compartilhamento de arquivos� Busca distribuída� Processamento distribuído� Trabalho colaborativo (groupware)� Jogos� Compartilhamento de capacidade de armazenamento� Novas formas de distribuição de conteúdo (Web-
Semântica )
![Page 11: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/11.jpg)
Sistemas P2P: RequisitosSistemas P2P: Requisitos� Descoberta de recursos/serviços
– Baseada em: nome, endereço, rota, métrica, etc.� Roteamento
– Roteamento de aplicação: conteúdo, interesse, etc.– Roteamento entre super-nós: Kazaa, Morpheus– Roteamento baseado em capacidade (bandwidth)
� Robustez e tolerância a falhas (nó e enlace)� Armazenamento distribuído e atualizações� Escalabilidade� Confiança nos pares (autenticação, etc)� Monitoramento de vizinhos
![Page 12: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/12.jpg)
P2P e Redes de CoberturaP2P e Redes de Cobertura(Overlay)(Overlay)
� Overlay– Rede virtual: rede em cima de outra rede (IP)– Os enlaces são conexões entre nós da rede
� P2P freqüentemente utilizada para criar overlays – Oferecendo serviços que poderiam ser
implementados na camada IP� Estratégia muito útil para implantação
![Page 13: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/13.jpg)
Modelos de Sistemas P2PModelos de Sistemas P2P(Classificação (Classificação 11))
� Modelo Centralizado – Índice global mantido por um autoridade central– Contato direto entre clientes e provedores– Exemplo: Napster
� Modelo Descentralizado– Sem índice global (sem coordenação global)– Exemplos: Gnutella, Freenet
� Modelo Hierárquico – Introdução dos super-nós (super-nodes ou super-peers)– Mistura dos modelos centralizado e descentralizado– Exemplos: KaZaA, Morpheus
![Page 14: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/14.jpg)
Modelos de Sistemas P2PModelos de Sistemas P2P(Classificação (Classificação 22))
� Centralized Service Location (CSL ou CIA)– Busca centralizada– Exemplo: Napster
� Flooding-based Service Location (FSL ou DIFA)– Busca baseada em inundação– Exemplo: Gnutella
� Distributed Hash Table-based Service Location(DHT ou DIHA)– Busca baseada em tabela de hash distribuída– Exemplos: CAN, Pastry, Tapestry, Chord
![Page 15: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/15.jpg)
Modelos de Sistemas P2PModelos de Sistemas P2P(Classificação (Classificação 33))
![Page 16: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/16.jpg)
Modelos de Sistemas P2PModelos de Sistemas P2P(Classificação (Classificação 44))
![Page 17: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/17.jpg)
Busca Centralizada (CSL)Busca Centralizada (CSL)
![Page 18: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/18.jpg)
NapsterNapster
� 05/99: Shawn Fanning funda o Napster Online music service
� 12/99: primeiro processo na justiça� 07/01: Juiz manda fechar Napster� Outras redes P2P começam a crescer� 07/01: usuários simultâneos
– Morpheus: 300K, Napster: 160K, Gnutella: 40K
![Page 19: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/19.jpg)
Napster: funcionamentoNapster: funcionamento
1. Cliente se conecta com servidor e envia a sua lista de arquivos compartilhados
2. Cliente envia palavras-chave para fazer busca na lista completa
3. Cliente testa taxa de transmissão dos pares que têm o arquivo solicitado (ping)
4. O arquivo é transferido entre os pares
![Page 20: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/20.jpg)
Napster: funcionamento (1)Napster: funcionamento (1)
![Page 21: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/21.jpg)
Napster: funcionamento (2)Napster: funcionamento (2)
![Page 22: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/22.jpg)
Napster: funcionamento (3)Napster: funcionamento (3)
![Page 23: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/23.jpg)
Napster: funcionamento (4)Napster: funcionamento (4)
![Page 24: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/24.jpg)
NapsterNapster -- ComentáriosComentários
� Servidor centralizado– Ponto único de falhas– Sujeito a congestionamentos– Controle totalmente com o Napster
• Apenas ilusão de liberdade
� Nenhuma segurança– Senhas enviadas sem criptografia– Sem anonimidade (identidade revelada)
![Page 25: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/25.jpg)
Busca por Inundação (FSL)Busca por Inundação (FSL)
![Page 26: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/26.jpg)
Busca por Inundação (FSL)Busca por Inundação (FSL)
![Page 27: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/27.jpg)
GnutellaGnutella
� Sistema de busca totalmente distribuído� Busca baseada em inundação� História:
– 14/03/2000: Disponibilizado sob licença pública GNU no servidor web da Nullsoft (pertencente à AOL)
– Retirado apenas algumas horas depois– Tarde demais: muitos usuários fizeram download– Outros clientes foram disponibilizados e Gnutella
começou a se popularizar
![Page 28: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/28.jpg)
GnutellaGnutella
� Sua principal característica é a Busca Distribuída
� Problema– Tráfego gerado: Escalabilidade
� Despertou grande interesse na comunidade acadêmica– Não depende de servidor central– Problema inicial: descobrir algum nó que está na
rede.
![Page 29: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/29.jpg)
Protocolo GnutellaProtocolo Gnutella� Aplicação de compartilhamento de arquivos
sobre uma rede de overlay� Nós mantêm conexões TCP� Mensagens são difundidas (inundadas) ou então
propagadas de volta
� Protocolo:
GET, PUSHTransferência de arquivos
QUERY HITQUERYConsulta
PONGPINGParticipação
Nó a nóPropagação
de voltaInundação
![Page 30: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/30.jpg)
Gnutella: Mecanismo de buscaGnutella: Mecanismo de busca1
2
3
4
5
6
7A
Passos:1. Nó 2 inicia busca do arquivo A
![Page 31: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/31.jpg)
GnutellaGnutella: Mecanismo de busca: Mecanismo de busca1
2
3
4
5
6
7
A
A
A
Passos:1. Nó 2 inicia busca do arquivo A2. Envia mensagens a vizinhos
![Page 32: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/32.jpg)
GnutellaGnutella: Mecanismo de busca: Mecanismo de busca1
2
3
4
5
6
7
A
A
A
A Passos:1. Nó 2 inicia busca do arquivo A2. Envia mensagens a vizinhos3. Vizinhos encaminham mensagem
![Page 33: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/33.jpg)
GnutellaGnutella: Mecanismo de busca: Mecanismo de busca1
2
3
4
5
6
7
A:5
A
A:7
A
A
Passos:1. Nó 2 inicia busca arquivo A2. Envia mensagens a vizinhos3. Vizinhos encaminham
mensagem4. Nós com arquivo A enviam
mensagem de resposta
![Page 34: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/34.jpg)
GnutellaGnutella: Mecanismo de busca: Mecanismo de busca1
2
3
4
5
6
7
A:5
A:7
A
A
Passos:1. Nó 2 inicia busca arquivo A2. Envia mensagens a vizinhos3. Vizinhos encaminham
mensagem4. Nós com arquivo A enviam
mensagem de resposta5. Mensagem de resposta
propagada de volta
![Page 35: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/35.jpg)
GnutellaGnutella: Mecanismo de busca: Mecanismo de busca1
2
3
4
5
6
7
A:5
A:7
Passos:1. Nó 2 inicia busca arquivo A2. Envia mensagens a vizinhos3. Vizinhos encaminham
mensagem4. Nós com arquivo A enviam
mensagem de resposta5. Mensagem de resposta
propagada de volta
![Page 36: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/36.jpg)
GnutellaGnutella: Mecanismo de busca: Mecanismo de busca1
2
3
4
5
6
7download A Passos:1. Nó 2 inicia busca arquivo A2. Envia mensagens a vizinhos3. Vizinhos encaminham
mensagem4. Nós com arquivo A enviam
mensagem de resposta5. Mensagem de resposta
propagada de volta6. Arquivo A é transferido
![Page 37: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/37.jpg)
Busca por tabela de Hash Busca por tabela de Hash Distribuída (DHT)Distribuída (DHT)
� Hash– Estrutura de dados importantes para desenvolvimento
� Hash distribuído na escala da Internet� Importante para sistemas distribuídos grandes� Sistemas P2P
– Chord, CAN, Tapestry, Pastry, ...
� Sistemas muito grandes de gerenciamento de armazenamento de dados– OceanStore, CFS, Publius, ...
![Page 38: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/38.jpg)
DHT: FuncionamentoDHT: Funcionamento
� Função de hash mapeia objeto a identificador único– Ex: h(“Aquarela do Brasil”) -> 8045
� Faixa de resultados da função de hash é distribuída pela rede
![Page 39: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/39.jpg)
DHT: FuncionamentoDHT: Funcionamento
� Cada nó deve “conhecer” pelo menos uma cópia do objeto que foi colocado na sua faixa de hash
� Localização dos objetos– Nós armazenam apontadores para os objetos na
sua faixa de hash
![Page 40: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/40.jpg)
DHT: RoteamentoDHT: Roteamento
� Para cada objeto, o nó (os nós) cuja faixa cobre o objeto deve ser alcançável por um caminho “curto” – De qualquer outro nó
� As diferentes abordagens (Chord, CAN, Pastry, Tapestry) diferem primariamente na escolha do algoritmo de roteamento– Em geral, qualquer função aleatória de hash
“boa” é suficiente
![Page 41: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/41.jpg)
Roteamento DHT: DesafiosRoteamento DHT: Desafios
� O diâmetro de busca deve ser escalável (log N)� O número de vizinhos por nó deve ser escalável � O roteamento deve ser distribuído (sem gargalo
ou ponto de falha centralizado)� Mecanismo de entrar / sair da rede
– Precisa re-dividir as faixas pelos nós existentes– Precisa reorganizar o conjunto de vizinhos de cada nó– Precisa de um mecanismo de “entrada” (bootstrap) na
rede, para conectar novos nós na infra-estrutura DHT
![Page 42: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/42.jpg)
API DHTAPI DHT
� Cada objeto (arquivo ou apontador) tem uma chave na faixa de hash de algum nó
� Software DHT oferece uma API para cada nó:– A aplicação passa uma chave k para a API– A API retorna o endereço IP do nó responsável por k
� A API é implementada com a rede de cobertura (overlay) do DHT e os seus algoritmos distribuídos
![Page 43: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/43.jpg)
DHT: Idéia BásicaDHT: Idéia Básica
![Page 44: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/44.jpg)
DHT: Idéia BásicaDHT: Idéia Básica
![Page 45: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/45.jpg)
DHT: Idéia BásicaDHT: Idéia Básica
![Page 46: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/46.jpg)
DHT: Idéia BásicaDHT: Idéia Básica
![Page 47: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/47.jpg)
DHT: Idéia BásicaDHT: Idéia Básica
![Page 48: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/48.jpg)
KaZaAKaZaA
� Usuários são pacientes– Fazem os pedidos e não ficam esperando as
respostas na frente do computador� Objetos pequenos (até 10MB)
– 30% dos pedidos: +/- 1 hora para terminar– 10% dos pedidos: +/- 1 dia para terminar
� Objetos grandes (mais de 100MB)– 10%: 1 hora– 50%: mais do que um dia
![Page 49: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/49.jpg)
KaZaAKaZaA
![Page 50: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/50.jpg)
KaZaAKaZaA : utilização: utilização
� Usuários novos fazem mais buscas e consomem a maioria dos recursos no Kazaa
� Usuário antigos consomem menos bytes
![Page 51: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/51.jpg)
KaZaAKaZaA: Dinâmica dos objetos: Dinâmica dos objetos� Maioria (91%) dos pedidos para objetos pequenos� Maioria (65%) dos bytes transferidos de objetos
grandes� A popularidade dos objetos dura pouco� Os objetos mais populares tendem a ser muito
novos (introduzidos na rede)� O sucesso de uma rede P2P como o Kazaa depende
imensamente da introdução de novos objetos e entrada de novos usuários
![Page 52: André Lucio e Gabriel Argolo Aplicações P2Pdebora/fsmm/trab-2003-2/apres-P2P.pdf · P2P e Redes de Cobertura (Overlay) Overlay – Rede virtual: rede em cima de outra rede (IP)](https://reader036.vdocuments.pub/reader036/viewer/2022070812/5f0b47bc7e708231d42fbc5f/html5/thumbnails/52.jpg)
MonitoraçãoMonitoração
� REDES SECRETAS, PRIVADAS e PEQUENAS com acesso restrito a pessoas conhecidas previamente impede a RIAA de as monitorizar.
� Programas baseados no KaZaA implementam bloqueio de monitorização da RIAA.