25
APLICAÇÕES PEER-TO-PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

Embed Size (px)

Citation preview

Page 1: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES PEER-TO-PEERVânia de Oliveira Neves

Disciplina: Sistema Distribuídos

Prof. Marcos José Santana

Page 2: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ROTEIRO

Introdução Arquitetura Aplicações Conclusão

Page 3: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

INTRODUÇÃO

Há várias definições de sistemas P2P na literatura Não há um consenso entre o que é e o que não é um

sistema P2P e quais são suas características essenciais Definição 1) Arquitetura distribuída completamente

descentralizada onde todos os nós possuem funcionalidades e tarefas equivalentes

Definição 2) P2P é uma classe de aplicações que levam vantagens de recursos disponíveis nas bordas da Internet armazenamento ciclos de CPU conteúdo presença humana

Page 4: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

INTRODUÇÃO

Características essenciais presentes em sistemas P2P: O compartilhamento direto de recursos entre

nós, preferivelmente sem requerer a intermediação de um servidor centralizado.

Tolerância a falhas e capacidade de auto-organização habilidade para tratar a instabilidade conectividade variável população de nós transientes deve se adaptar automaticamente a falhas tanto em

conexões de redes quanto em computadores

Page 5: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

INTRODUÇÃO

“Sistemas peer-to-peer são sistemas distribuídos consistindo de nós interconectados capazes de se auto-organizar em topologias de rede overlay com o propósito de compartilhar recursos tais como conteúdo, ciclos de CPU, armazenamento e largura de banda, capazes de se adaptarem a falhas e acomodar populações transientes de nós enquanto mantém conectividade aceitável e desempenho, sem necessitar da intermediação ou apoio de uma entidade central”

Page 6: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

INTRODUÇÃO

Os sistemas peer-to-peer dão a impressão de fornecer uma interação direta entre computadores

Diferentes definições de “peer-to-peer” são aplicados para acomodar os vários diferentes casos de sistemas ou aplicações.

Page 7: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

INTRODUÇÃO

Teste 1 O sistema aceita conectividade variável e

endereços IP temporários? O sistemas dá autonomia significativa nos

computadores na borda da rede? Teste 2

Os nós podem trocar informações entre si? Quem é o dono do harware?

Page 8: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Centralizada

Descentralizada Não Estruturada

Descentralizada Estruturada

Existem outras classificações: Centralizado – Descentralizado – Hierárquico Centralizada – Inundação – Tabela Hash

Distribuída (DHT)

Page 9: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Centralizada: Não é um sistemas P2P puro Existe uma base centralizada com a localização

dos recursos do sistema Vantagens

Garantia de que os dados estão disponíveis em algum nó da rede Será encontrado!

Buscas são facilmente implementadas Desvantagem

Existe um ponto central de falha!!!

Page 10: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Fonte: [2]

Page 11: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Descentralizada e não estruturada Não possui servidor centralizado Para entrar na rede, um nó se conecta de modo

arbitrário a outros nós Não tem um estrutura definida

Tem uma lista de vizinhos Construída de forma aleatória

Utiliza mecanismo de inundação controlada por TTL (time to live)

Page 12: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Fonte: [3]

Page 13: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Descentralizada e não estruturada Vantagens

Não tem um ponto central de falha Acomoda facilmente uma população de nós altamente

transientes Desvantagens

Não oferecem garantia quanto a acessibilidade dos dados

Oferece dificuldade em encontrar o arquivo desejado

Page 14: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Descentralizada e estruturada Não possui servidor centralizado Cria as conexões entre os nós seguindo uma

estrutura bem definida A conexão entre os nós é feita tendo como base

o identificador do nó Obtido com alguma função de hash segura calculado

sobre alguma informação única do nó Possibilita que a pesquisa seja modelada através

de um processo iterativo determinístico

Page 15: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Fonte: [2]

Page 16: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

ARQUITETURA

Descentralizada e estruturada Vantagens

Garantia de acessibilidade dos dados Balanceamento automático de carga Auto organização

Desvantagem Difícil manter a estrutura requerida O nó que faz a requisição precisa conhecer a chave do

objeto procurado Nem sempre é possível!

A manutenção em populações altamente transientes é difícil

Exemplos: Chord, CAN, Tapestry, Pastry, Kademlia, Viceroy

Page 17: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES

Compartilhamento de arquivo (distribuição de conteúdo): Mais populares Possibilitar a disponibilização de arquivos por

usuários e disseminar para qualquer usuário, geograficamente espalhado pelo mundo

Page 18: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES

Compartilhamento de arquivo (distribuição de conteúdo): Napster

Arquitetura centralizada Gnutella

Arquitetura descentralizada e não estruturada Considerada a primeira aplicação puramente P2P Em teoria, cada nó conectado a rede é considerado

igual Servents (SERVers + clieENTS)

Cada nó da rede conhece apenas os nós aos quais está conectado

Liberdade de Pesquisa Anonimato inexistente Não há proteção de quem está fornecendo os arquivos

Page 19: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES Compartilhamento de arquivo (distribuição de

conteúdo): Freenet

Arquitetura descentralizada e não estruturada Código fonte aberto Mantém seus usuários no anonimato

Comunicações são cifradas Uma vez que o arquivo foi disponibilizado, não pode ser

retirados(facilmente) da rede O usuário não consegue acessar o conteúdo que está em sua

máquina local: os dados ficam codificados Quando uma requisição de um determinado arquivo cresce,

ele é copiado automaticamente para outros nós na sua vizinhança de localização

O usuário não controla o que é armazenado em sua máquina Quando um nó atende uma consulta ele armazena o caminho

dos nós que possuem a consulta Os nós que repassam a resposta também podem armazenar

o arquivo localmente A recuperação de um arquivo é realizada através de vários

nós

Page 20: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES

Compartilhamento de arquivo (distribuição de conteúdo): FastTrack/KaZaa

Possui arquitetura descentralizada e não estruturada Utiliza o conceito de super-nós para melhorar o

desempenho da rede Segundo estatísticas, em abril de 2006 havia mais de

3 milhões de usuários concorrentes na rede FastTrack BitTorrent

Possui comportamento olho-por-olho Transfere porções de arquivos Necessário um arquivo .torrent, que contém

informações necessárias para transferir um arquivo específico

Page 21: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES

Computação Distribuída Exploram a capacidade ociosa dos computadores

que fazem parte do sistema Decompõe uma tarefa com alto poder de

processamento em pequenas unidades e as distribui para diferentes peers

Seti@Home Analisa os sinais obtidos através do rádio-telecópio a

procura de algum sinal inteligente

Page 22: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES

Comunicação e Colaboração Oferece estrutura para facilitar a comunicação e

colaboração entre os peers Permitem que os usuários se comuniquem

através de voz, mensagens de texto, imagens gráficas e arquivos em geral de forma direta Sem passar por um servidor

MSN Uma das aplicações de mensagem instantânea mais

populares Faz a sincronização de vídeo e voz

Yahoo! Messenger Faz integração com os serviços e conteúdos do

Yahoo!

Page 23: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

APLICAÇÕES

Sistemas de armazenamento de arquivos em rede O conteúdo dos arquivos pode ser modificado

pelos usuários OceanStore

Transmissão de Dados (ou overlay de multcast) Um conteúdo é transmitido por um nó e

entregue a vários nós geograficamente espalhados

Tem sido utilizada para transmissão de eventos ao vivo

Exemplos: ESM

Page 24: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

CONCLUSÃO

Grande motivação para desenvolvimento e utilização da rede P2P Compartilhamento sem uma unidade central Possui as características de computação

distribuída Razões não técnicas como o anonimato

Embora os nós sejam equivalente em funcionalidades, existem nós com um alto grau de especialização

Escalabilidade Robustez Flexibilidae

Page 25: APLICAÇÕES PEER-TO- PEER Vânia de Oliveira Neves Disciplina: Sistema Distribuídos Prof. Marcos José Santana

REFERÊNCIAS [1]Theotokis, S. A. and Spinellis, D. (2004). A

survey of peer-to-peer content distribution technologies. ACM Computing Surveys, 36(4):335–371.

[2] Francesquini, E.C. .Um Estudo sobre sistemas P2P. Junho de 2004

[3] Domingues R.J., Callada, A., Souto, E., Sisvestre, G.,Kamienski, C., Sadok, D.. Peer-to-Peer: Computação Colaborativa na Internet

[4] Lua, E. K., Crowcroft, J., Pias, M., Sharma, R., and Lim, S. (2005). A survey and comparison of peer-to-peer overlay network schemes. IEEE Communications Surveys & Tutorials, 7(2):72–93.

[5] Theotokis, S.A (2002). A survey of peer-to-peer File-Sharing Technologies