SlideShare una empresa de Scribd logo
1 de 17
Segurança em Sistemas de Computação




Redes Peer-to-Peer (P2P)



                                        Jean Pimentel
                                          Rafael Lima
Introdução
●   O que é P2P?
    ●   Sistemas Distribuídos.
    ●   Descentralização.
Contexto
●   Estimativas para Dezembro/2010
    ●   População mundial: 6,76 bilhões
    ●   Usuários: 1,802 bilhões
        –   Fonte: internetworldstats.com


●   Servidores centralizados podem ser gargalos.

●   P2P é fundamental para acompanhar o ritmo.
Princípios
●   Auto-organização

●   Compartilhamento de recursos

●   Nós participantes:
    ●   possuem o mesmo nível de importância
    ●   diretamente conectados uns aos outros
    ●   atuam como cliente e servidor.
História
●   O conceito é antigo.

    ●   USENETS
        –   UUCP: Unix-to-Unix Protocol
             ●   (RFC 976, 1986 – RFC 1137, 1989)
        –   NNTP: Network News Transfer Protocol
             ●   (RFC 997, 1986 – RFC 3977, 2006)

    ●   DNS
        –   (RFC 920, 1984 – ....)
Arquiteturas
●   Até que surgiu o NAPSTER:

    ●   Compartilhamento de Arquivos
    ●   Junho de 1999
    ●   Tornou o termo P2P conhecido.

    ●   Nó se conecta a rede e envia para um servidor central (Farm)
        o seu índice de MP3s.
    ●   Nós requisitam ao Farm determinado arquivo.
    ●   Farm retorna uma lista de nós que o possuem.
    ●   Nó requisitante se conecta diretamente para transferência.
Arquiteturas
●   NAPSTER

    ●   Ponto Forte:
        –   Busca rápida e eficiente.

    ●   Ponto Fraco:
        –   Farm é ponto de falha e de alto custo de manutenção.
Arquiteturas
●   Então veio a Gnutella:

    ●   Março de 2000
    ●   Verdadeira rede P2P
        –   Não há servidor central.

    ●   Nó (A) deve conhecer no mínimo um nó (B) conectado à rede.
    ●   A conecta-se a B, que retorna uma lista de outros nós ativos.
    ●   A repete o processo até atingir n conexões.
    ●   A requisita arquivo aos seus nós, que propagam a requisição.
    ●   Com o retorno, A se conecta diretamente para transferência.
    ●   Ao sair, A salva suas conexões ativas para o regresso.
Arquiteturas
●   Gnutella

    ●   Ponto Forte:
        –   Totalmente distribuída, elimina pontos de falha.
        –   Protocolo aberto.

    ●   Ponto Fraco:
        –   Busca ineficiente, mensagens duplicadas na rede, nós
            inalcançáveis.
Arquiteturas
●   KaZaA:

    ●   Março de 2001
    ●   Combina o melhor do NAPSTER e Gnutella.
    ●   Organização hierárquica com super nós.

    ●   Nó deve conhecer um super nó da rede.
    ●   Nó requisita arquivo ao super nó, que busca em seus
        filhos e propaga a requisição à outros super nós.
    ●   Com o retorno, o nó se conecta diretamente para
        transferência.
Arquiteturas
●   KaZaA

    ●   Ponto Forte:
        –   Totalmente distribuída, elimina pontos de falha.
        –   Busca melhor e mais rápida.

    ●   Ponto Fraco:
        –   Busca ainda assim não cobre todos os nós.
        –   Cria-se pontos de ataque (super nós).
Arquiteturas
●   Enfrentaram problemas de copyright.
    ●   Os proprietários responsabilizavam os serviços e
        não os usuários. (É mais fácil? Os serviços têm
        culpa?)


●   Usuários buscam a anonimidade.
    ●   Ideia de rotear o tráfego por nós intermediários
        –   Não é eficiente. Lento e com muita sobrecarga.
Arquiteturas
●   BitTorrent

    ●   2001
    ●   Nova abordagem para compartilhamento
    ●   Objetivo: replicar rapidamente um arquivo na rede.
    ●   “Distribuidor de Conteúdo” ao invés de
        “Compartilhador de Arquivos”
    ●   Arquivos são divididos em partes (64kb à 4Mb) e
        que independem da ordem de transferência.
Arquiteturas
●   BitTorrent

    ●   Protocolo não indexa arquivos, isentando-o de
        responsabilidades judiciais com conteúdo ilegal.
    ●   Usuário deve buscar um “torrent” em algum lugar.
        –   Torrent: arquivo de metadados: nome, tamanho, hash e endereço do
            tracker.
    ●   Nó se conecta com tracker, obtendo a lista de nós que
        possuem partes do arquivo.
        –   Trackers são servidores que auxiliam a conexão inicial entre os nós.
    ●   Nós se conectam diretamente para transferência de arquivos,
        priorizando partes mais raras na rede.
    ●   Política Tit-for-Tat: prioriza nós que contribuem mais.
Arquiteturas
●   BitTorrent

    ●   Ponto Forte:
        –   Alta distribuição de conteúdo.
        –   Força a contribuição.

    ●   Ponto Fraco:
        –   Para arquivos grandes.
Revisão

                                           P2P




               File Listing                             Node Connections




 Centralized              Decentralized          Structured          Unstructured


 NAPSTER                      Gnutella           HyperCup              Gnutella
                              BitTorrent
Desafios de Segurança
●   Direitos autorais (?)
●   Vírus, malwares, spywares
●   Anonimidade
●   Controle de Acesso
●   Negação de Serviço
●   Integridade e Autenticação dos Dados
●   Pontuações dos Usuários
●   Consumo de Tráfego

Más contenido relacionado

La actualidad más candente

Introdução aos sistemas distribuidos
Introdução aos sistemas distribuidosIntrodução aos sistemas distribuidos
Introdução aos sistemas distribuidos
Jesse Teixeira
 
Tecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisTecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveis
Luiz Bettega
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
eliezer
 
Sistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – MiddlewareSistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – Middleware
Adriano Teixeira de Souza
 
Guia pratico-rede-e-servidores-linux
Guia pratico-rede-e-servidores-linuxGuia pratico-rede-e-servidores-linux
Guia pratico-rede-e-servidores-linux
Fernando Mendes
 

La actualidad más candente (18)

Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
Introdução aos sistemas distribuidos
Introdução aos sistemas distribuidosIntrodução aos sistemas distribuidos
Introdução aos sistemas distribuidos
 
Tecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisTecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveis
 
Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas Distribuídos
 
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
 
Clusters, o que é?
Clusters, o que é?Clusters, o que é?
Clusters, o que é?
 
Artigo Sistemas Distribuidos
Artigo Sistemas DistribuidosArtigo Sistemas Distribuidos
Artigo Sistemas Distribuidos
 
Tutorial Redes Completo
Tutorial Redes CompletoTutorial Redes Completo
Tutorial Redes Completo
 
Sistemas De Arquivos Distribuídos (SAD)
Sistemas De Arquivos Distribuídos (SAD)Sistemas De Arquivos Distribuídos (SAD)
Sistemas De Arquivos Distribuídos (SAD)
 
Apresentação da Disciplina de Sistemas Distribuídos
Apresentação da Disciplina de Sistemas DistribuídosApresentação da Disciplina de Sistemas Distribuídos
Apresentação da Disciplina de Sistemas Distribuídos
 
Sistemas Distribuídos - Clusters
Sistemas Distribuídos - ClustersSistemas Distribuídos - Clusters
Sistemas Distribuídos - Clusters
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
Trabalho de informatica slide
Trabalho de informatica slideTrabalho de informatica slide
Trabalho de informatica slide
 
Artigo Rodolfho
Artigo RodolfhoArtigo Rodolfho
Artigo Rodolfho
 
Artigo Atividade 1 Gredes
Artigo Atividade 1 GredesArtigo Atividade 1 Gredes
Artigo Atividade 1 Gredes
 
Sistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – MiddlewareSistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – Middleware
 
Capítulo 2 - Sistemas Distribuídos - Coulouris
Capítulo 2 - Sistemas Distribuídos - CoulourisCapítulo 2 - Sistemas Distribuídos - Coulouris
Capítulo 2 - Sistemas Distribuídos - Coulouris
 
Guia pratico-rede-e-servidores-linux
Guia pratico-rede-e-servidores-linuxGuia pratico-rede-e-servidores-linux
Guia pratico-rede-e-servidores-linux
 

Destacado (8)

Fluxo MPEG
Fluxo MPEGFluxo MPEG
Fluxo MPEG
 
AIX - Sistemas de Arquivos
AIX - Sistemas de ArquivosAIX - Sistemas de Arquivos
AIX - Sistemas de Arquivos
 
AIX - Gerência de Processos
AIX - Gerência de ProcessosAIX - Gerência de Processos
AIX - Gerência de Processos
 
Multimídia - Imagens
Multimídia - ImagensMultimídia - Imagens
Multimídia - Imagens
 
Loss Monitor
Loss MonitorLoss Monitor
Loss Monitor
 
Projeto Conhecendo meu município
Projeto Conhecendo meu municípioProjeto Conhecendo meu município
Projeto Conhecendo meu município
 
Projeto Minha Cidade
Projeto Minha CidadeProjeto Minha Cidade
Projeto Minha Cidade
 
Projeto folclore
Projeto folcloreProjeto folclore
Projeto folclore
 

Similar a Introdução ao P2P

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
 
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
RicardoZorekDaniel1
 
IntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresIntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadores
LinaKelly3
 
Aula 1 fundamentos de redes de computadores
Aula 1   fundamentos de redes de computadoresAula 1   fundamentos de redes de computadores
Aula 1 fundamentos de redes de computadores
wab030
 
Aula 2 Introdução a Redes I
Aula 2  Introdução a Redes IAula 2  Introdução a Redes I
Aula 2 Introdução a Redes I
wab030
 
Configurando o xp em rede
Configurando o xp em redeConfigurando o xp em rede
Configurando o xp em rede
Fabio Roberto
 

Similar a Introdução ao P2P (20)

Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
Cirrus
CirrusCirrus
Cirrus
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?
 
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 - ...
 
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
 
P2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosP2P - Sistemas Distribuídos
P2P - Sistemas Distribuídos
 
Cap01a
Cap01aCap01a
Cap01a
 
IntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadoresIntroducaoRedesInternet.ppt redes de computadores
IntroducaoRedesInternet.ppt redes de computadores
 
IntroducaoRedesInternet.ppt
IntroducaoRedesInternet.pptIntroducaoRedesInternet.ppt
IntroducaoRedesInternet.ppt
 
A Internet do Futuro, por Alex Ferreira
A Internet do Futuro, por Alex FerreiraA Internet do Futuro, por Alex Ferreira
A Internet do Futuro, por Alex Ferreira
 
Aula 1 fundamentos de redes de computadores
Aula 1   fundamentos de redes de computadoresAula 1   fundamentos de redes de computadores
Aula 1 fundamentos de redes de computadores
 
Aula 2 Introdução a Redes I
Aula 2  Introdução a Redes IAula 2  Introdução a Redes I
Aula 2 Introdução a Redes I
 
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
O futuro do Openstack, NFV, SDN e Cloud Computing - FISL 2014
 
Distribuição de Dados em Escala Global com Cassandra
Distribuição de Dados em Escala Global com CassandraDistribuição de Dados em Escala Global com Cassandra
Distribuição de Dados em Escala Global com Cassandra
 
Hadoop
HadoopHadoop
Hadoop
 
SD_Aula_02_Introdução ao SD.pdf
SD_Aula_02_Introdução ao SD.pdfSD_Aula_02_Introdução ao SD.pdf
SD_Aula_02_Introdução ao SD.pdf
 
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
 
Apresentação bit torrent
Apresentação   bit torrentApresentação   bit torrent
Apresentação bit torrent
 

Más de Jean Pimentel (7)

Snort
SnortSnort
Snort
 
Sistemas Imunológicos Artificiais
Sistemas Imunológicos ArtificiaisSistemas Imunológicos Artificiais
Sistemas Imunológicos Artificiais
 
AIX - Gerência de Memória
AIX - Gerência de MemóriaAIX - Gerência de Memória
AIX - Gerência de Memória
 
Windows Mobile
Windows MobileWindows Mobile
Windows Mobile
 
RIP - Routing Information Protocol
RIP - Routing Information ProtocolRIP - Routing Information Protocol
RIP - Routing Information Protocol
 
Redes Mesh - Protocolos de Roteamento
Redes Mesh - Protocolos de RoteamentoRedes Mesh - Protocolos de Roteamento
Redes Mesh - Protocolos de Roteamento
 
Redes Mesh - Introdução
Redes Mesh - IntroduçãoRedes Mesh - Introdução
Redes Mesh - Introdução
 

Introdução ao P2P

  • 1. Segurança em Sistemas de Computação Redes Peer-to-Peer (P2P) Jean Pimentel Rafael Lima
  • 2. Introdução ● O que é P2P? ● Sistemas Distribuídos. ● Descentralização.
  • 3. Contexto ● Estimativas para Dezembro/2010 ● População mundial: 6,76 bilhões ● Usuários: 1,802 bilhões – Fonte: internetworldstats.com ● Servidores centralizados podem ser gargalos. ● P2P é fundamental para acompanhar o ritmo.
  • 4. Princípios ● Auto-organização ● Compartilhamento de recursos ● Nós participantes: ● possuem o mesmo nível de importância ● diretamente conectados uns aos outros ● atuam como cliente e servidor.
  • 5. História ● O conceito é antigo. ● USENETS – UUCP: Unix-to-Unix Protocol ● (RFC 976, 1986 – RFC 1137, 1989) – NNTP: Network News Transfer Protocol ● (RFC 997, 1986 – RFC 3977, 2006) ● DNS – (RFC 920, 1984 – ....)
  • 6. Arquiteturas ● Até que surgiu o NAPSTER: ● Compartilhamento de Arquivos ● Junho de 1999 ● Tornou o termo P2P conhecido. ● Nó se conecta a rede e envia para um servidor central (Farm) o seu índice de MP3s. ● Nós requisitam ao Farm determinado arquivo. ● Farm retorna uma lista de nós que o possuem. ● Nó requisitante se conecta diretamente para transferência.
  • 7. Arquiteturas ● NAPSTER ● Ponto Forte: – Busca rápida e eficiente. ● Ponto Fraco: – Farm é ponto de falha e de alto custo de manutenção.
  • 8. Arquiteturas ● Então veio a Gnutella: ● Março de 2000 ● Verdadeira rede P2P – Não há servidor central. ● Nó (A) deve conhecer no mínimo um nó (B) conectado à rede. ● A conecta-se a B, que retorna uma lista de outros nós ativos. ● A repete o processo até atingir n conexões. ● A requisita arquivo aos seus nós, que propagam a requisição. ● Com o retorno, A se conecta diretamente para transferência. ● Ao sair, A salva suas conexões ativas para o regresso.
  • 9. Arquiteturas ● Gnutella ● Ponto Forte: – Totalmente distribuída, elimina pontos de falha. – Protocolo aberto. ● Ponto Fraco: – Busca ineficiente, mensagens duplicadas na rede, nós inalcançáveis.
  • 10. Arquiteturas ● KaZaA: ● Março de 2001 ● Combina o melhor do NAPSTER e Gnutella. ● Organização hierárquica com super nós. ● Nó deve conhecer um super nó da rede. ● Nó requisita arquivo ao super nó, que busca em seus filhos e propaga a requisição à outros super nós. ● Com o retorno, o nó se conecta diretamente para transferência.
  • 11. Arquiteturas ● KaZaA ● Ponto Forte: – Totalmente distribuída, elimina pontos de falha. – Busca melhor e mais rápida. ● Ponto Fraco: – Busca ainda assim não cobre todos os nós. – Cria-se pontos de ataque (super nós).
  • 12. Arquiteturas ● Enfrentaram problemas de copyright. ● Os proprietários responsabilizavam os serviços e não os usuários. (É mais fácil? Os serviços têm culpa?) ● Usuários buscam a anonimidade. ● Ideia de rotear o tráfego por nós intermediários – Não é eficiente. Lento e com muita sobrecarga.
  • 13. Arquiteturas ● BitTorrent ● 2001 ● Nova abordagem para compartilhamento ● Objetivo: replicar rapidamente um arquivo na rede. ● “Distribuidor de Conteúdo” ao invés de “Compartilhador de Arquivos” ● Arquivos são divididos em partes (64kb à 4Mb) e que independem da ordem de transferência.
  • 14. Arquiteturas ● BitTorrent ● Protocolo não indexa arquivos, isentando-o de responsabilidades judiciais com conteúdo ilegal. ● Usuário deve buscar um “torrent” em algum lugar. – Torrent: arquivo de metadados: nome, tamanho, hash e endereço do tracker. ● Nó se conecta com tracker, obtendo a lista de nós que possuem partes do arquivo. – Trackers são servidores que auxiliam a conexão inicial entre os nós. ● Nós se conectam diretamente para transferência de arquivos, priorizando partes mais raras na rede. ● Política Tit-for-Tat: prioriza nós que contribuem mais.
  • 15. Arquiteturas ● BitTorrent ● Ponto Forte: – Alta distribuição de conteúdo. – Força a contribuição. ● Ponto Fraco: – Para arquivos grandes.
  • 16. Revisão P2P File Listing Node Connections Centralized Decentralized Structured Unstructured NAPSTER Gnutella HyperCup Gnutella BitTorrent
  • 17. Desafios de Segurança ● Direitos autorais (?) ● Vírus, malwares, spywares ● Anonimidade ● Controle de Acesso ● Negação de Serviço ● Integridade e Autenticação dos Dados ● Pontuações dos Usuários ● Consumo de Tráfego