3º Trabalho de Sistemas Distribuídos Grupo: Eric Linares Colombo, 6516100 Matheus Poiatti...

Post on 18-Apr-2015

142 views 0 download

Transcript of 3º Trabalho de Sistemas Distribuídos Grupo: Eric Linares Colombo, 6516100 Matheus Poiatti...

APLICAÇÕES PEER-TO-PEER3º Trabalho de Sistemas Distribuídos

Grupo:

Eric Linares Colombo, 6516100Matheus Poiatti Nogueira, 6445498Rafael Marques Sansão Borges, 6447552Rafael Henrique Bacchin Fernandes, 5716518Thiago Alberici Roberto, 6445539

Professor: Marcos José Santana

INDICE

Introdução Definição Histórico

Arquitetura Centralizada Descentralizada Não Estruturada Descentralizada Estruturada

INDICE

Aplicações Napster Gnutella FreeNet BitTorrent VoIP Messenger Grid

INDICE

Características das Redes P2P Poluição e Envenenamento

Métodos de Envenenamento Combate a Poluição

Conclus ão

INTRODUÇÃO - DEFINIÇÃO

"De maneira simples, sistema peer-to-peer é o compartilhamento de serviços e recursos computacionais feitos pela troca direta entre sistemas.“[WG] Peer-to-Peer Working Group

" ...  esse sistema normalmente não possui uma estrutura centralizada, dependendo assim da participação voluntária dos usuários para contribuir com recursos, o que constrói essa estrutura.” [Me] Stefan Saroiu, P. Krishna Gummadi and Steven D. Gribble

INTRODUÇÃO - DEFINIÇÃO

"Sistemas peer-to-peer e suas aplicações são sistemas distribuídos sem um poder centralizado ou hierarquia organizacional, no qual os softwares em funcionamento em cada nó são equivalentes em funcionalidade.”

[CP]    Ion Stoica,  Robert Morris, David Liben-Nowelly, David Karger, M. Frans Kaashoek, Frank Dabek and Hari Balakrishnan

INTRODUÇÃO - DEFINIÇÃO

Ou seja:

Sistemas “Par-A-Par” Pode ser Centralizada ou

Descentralizada Os computadores possuem os mesmos

direitos e responsabilidades Funcionam como Cliente E Servidores

INTRODUÇÃO - HISTÓRICO

Existe desde antes da internet 1979 – USENET

Pré - P2P Década de 90

ICQ NAPSTER

INTRODUÇÃO - HISTÓRICO

NAPSTER popularizou o P2P Descentralização do P2P

Ponto-A-Ponto de fato Diminuiu os problemas com direitos

autorais Ex: Gnutella e FastTrack

Atualidade

ARQUITETURA - DEFINIÇÕES

3 Definições: CIA: Arquitetura Centralizada DIFA: Arquitetura Descentralizada não

estruturada DIHA: Arquitetura Descentralizada

estruturada

ARQUITETURA - NAPSTER

Rede do tipo CIA Muitos “links quebrados” Shawn Fanning idealizou em 1999,

enquanto estava na faculdade. Servidor indexa os diretórios

compartilhados dos usuários

ARQUITETURA - NAPSTER

ARQUITETURA - GNUTELLA

Rede do tipo DIFA Desenvolvido pela Nullsoft É lançada uma versão beta (0.4) Idéia de uso da GPL Contexto da decadência do Napster AOL se funde à Time Warner e cancela

o projeto

ARQUITETURA - GNUTELLA

Utiliza TCP/IP Lista de servidores pré-compilada Cliente envia um pacote de init aos

servidores da lista Sintaxe de busca depende do software Transferência de arquivo com HTTP e

servidor web básico

ARQUITETURA - GNUTELLA

ARQUITETURA - GNUTELLA

Formato dos pacotes Limitações:

Escalabilidade TTL deve ser ajustado pelo tamanho da

rede Usuários com banda estreita são gargalos Permite ataques DoS

ARQUITETURA - FREENET

Rede do tipo DIFA Semelhante a um sistema de arquivos

distribuído Possui transparência de localização Permite requisitar dados de forma anônima

Objetiva ser eficiente sem flooding e índices centralizados

Permite cache

ARQUITETURA - FREENET

Baseado em um artigo de Ian Clarck, 1999

Voluntários pela internet Primeira versão lançada em 2000

Constantemente atualizado Premissa de total anonimato dos usuários Potencial de mau uso Usuários que constroem

ARQUITETURA - FREENET

Adaptabilidade inteligente dos peers 3 chaves de localização criptografadas Roteamento semelhante ao IP Perda de transparência (rede) Política de reputação e spams Requisíções anônimas Darknet

ARQUITETURA - FREENET

ARQUITETURA - BITTORRENT

Otimizado para arquivos grandes Arquivo dividido em blocos

(disponibilidade) Necessidade de indexador e rastreador

Ponto crítico Lista de nós e blocos raros Hash para verificação

ARQUITETURA - BITTORRENT

ARQUITETURA - BITTORRENT

DHT: Descentralização perfeita? Arquivos e usuários com ID Vuze e oficial Eficiente em redes grandes Difícil de implementar (necessita do ID)

Chord, CAN, Tapestry, Pastry e Kademlia Atualizações de jogos online e

streaming

ARQUITETURA - BITTORRENT

ATUALMENTE

ATUALMENTE

P2P em banco de dados Descentralização Maior Escalabilidade

Groove Networks Técnica Híbrida Centralizado + Descentralizado

OURGRID

Pesquisa em P2P Transferência em P2P Sistema de pontuação “Bag of tasks” Processamento de Dados

Ex: Simulação, Mineração de Dados, Renderização de Imagens, etc.

Código Aberto

CARACTERÍSTICAS DAS REDES P2PVantagens e Desvantagens

SEGURANÇA

Aplicações funcionam mesmo com o aumento do uso de firewalls, IPs dinâmicos e NATs.

Novas aplicações P2P utilizam a porta 80 para burlar a segurança.

FREELOADERS

Segundo pesquisadores da Xerox PARC, 70% dos usuários não contribuem com nenhum recurso, enquanto apenas 1% dos pares (peers) é responsável por 50% das cargas.

Controle de downloads/uploads por alguns trackers privados. ratio

DIREITOS AUTORAIS

Napster – violação dos direitos de copyright. Sistema centralizado

Depois do Napster, as aplicações P2P passaram a ser mais descentralizadas

ENVENENAMENTO DAS REDES P2P

Dificuldade das empresas fonográficas moverem processos.

Reação das empresas contra o compartilha-mento indiscriminado. Envenenamento das redes.

TÉCNICAS DE ENVENENAMENTO

Inserção de versões falsas Corrupção de chaves Envenenamento de índices Voice-overs

INSERÇÃO DE VERSÕES FALSAS

Ruídos durante músicas Páginas em branco em livros Filmes misturados em outros filmes Alteração dos metadados

CORRUPÇÃO DE CHAVES

A chave é gerada a partir de uma função hash aplicada em alguma parte do arquivo.

Corrompimento das chaves dos arquivos Alteração das partes não utilizadas pelo

algoritmo de hash. Criação de dois arquivos diferentes com a

mesma chave

ENVENENAMENTO DE ÍNDICES

Objetivo é causar a desistência do usuário.

3 métodos de corromper um índice: Alterar o endereço de IP Alterar a porta Alterar para uma chave inexistente

VOICE-OVERS

POLUIÇÃO DAS REDES P2P

COMBATE A POLUIÇÃO

Classificadas em 3 categorias: Detecção sem download

Confiança Total e Rede de Confiança Detecção com download

Matching e Filtro Detecção através de moderação

Sistemas de Reputação e Sistemas Modernos

DETECÇÃO SEM DOWNLOAD

Confiança Total Baixar arquivos apenas de usuários que

estão na sua “lista de amigos” Amigos são banidos se compartilham

arquivos corrompidos

Rede de Confiança Compartilhamento da “lista de amigos”

entre os usuários

DETECÇÃO COM DOWNLOAD

Matching Manter um banco de dados (centralizado

ou não) para verificar arquivos poluídos

DETECÇÃO COM DOWNLOAD

Filtro Depende dos usuários avaliarem os arquivos Usuários demoram em média 12 horas para analizarem

os arquivos baixados

DETECÇÃO ATRAVES DE MODERAÇÃO Sistemas de Reputação

Avaliação dos usuários pela quantidade de arquivos poluídos.

Tempo de um arquivo na rede.

Sistemas Moderados Moderador responsável pelo combate a

poluição da rede. Fatores limitantes: disponibilidade do

moderador, capacidade de ação e capacidade de detecção

CONCLUSÃO

Praticamente todos os computadores utilizam aplicações P2P

Centralização X Descentralização Centralizado - melhor sistema de busca e

conexão Problemas com direitos autorais

Vantegens e desvantagens de acordo com a arquitetura

FIM

Dúvidas?