Observando o Universo BitTorrent Através de Telescópios Rodrigo Brandão Mansilha, Alan Mezzomo, Giovani Facchini, Luciano Paschoal Gaspary, Marinho Pilla Barcellos UFRGS - 2010 XXVIII Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos Apresentação por Leandro Guadagnin Universidade Federal do Paraná Sumário • Objetivo • Motivação • Introdução • O Universo BitTorrent • Arquitetura, estratégias, lentes do telescópio • Avaliação • Resultados • Conclusão • Trabalhos Futuros • Análise Crítica 25/10/2010 Observando o universo BitTorrent através de Telescópios 2 Objetivo Propor uma arquitetura flexível para monitorar de forma eficiente o ”Universo BitTorrent” através da combinação de diferentes estratégias de observação de acordo com informações desejadas. 25/10/2010 Observando o universo BitTorrent através de Telescópios 3 Motivação Responsável por 45% a 78% de todo o compartilhamento P2P, dependendo da localização Pouco se sabe sobre o funcionamento do BitTorrent e padrões de comportamento de seus usuários Métodos de observação pobres em detalhe, exatidão e/ou cobertura Vantagens do BitTorrent: 25/10/2010 Campanhas de marketing baseadas em conteúdo, estimar perdas financeiras com cópias ilegais – pirataria, auxiliar Internet Service Providers na investigação de métodos que minimizem o custo de tráfego, combate a pedofilia, possibilidade de intercâmbio de informações entre comunidade científica Observando o universo BitTorrent através de Telescópios 4 Introdução Bram Cohen, 2003 O BitTorrent nasceu de uma implementação que foi incrementada, estendida e testada por usuários Escala: planetária. Milhões de usuários operando sobre uma camada de aplicação Dimensão, complexidade, heterogeneidade e incerteza Formado por milhões de ”pequenas” redes sobrepostas (overlays) desconexas chamadas de enxames. 25/10/2010 Desafio: chegar ao enxame desejado Observando o universo BitTorrent através de Telescópios 5 O Universo BitTorrent Constituído por: Enxames Pares Rastreadores (pontos de encontro) Conteúdos (conteúdo digital) Ex.: um par é um agente de usuário que executa o protocolo e participa de um ou mais enxames, de acordo com o conteúdo que deseja compartilhar 25/10/2010 Observando o universo BitTorrent através de Telescópios 6 O Universo BitTorrent Par: semeador ou sugador Para ingressar em um enxame o par contata um rastreador e recebe uma lista de ips dos pares participantes daquele enxame Para participar de um enxame um agente de usuário usa um arquivo de torrent que contém as informações sobre os fragmentos dos arquivos Para distribuir um conteúdo o par deve gerar um torrent e torná-lo público, geralmente publicando-o em websites chamados de comunidades. Comunidades: abertas ou fechadas; agregadoras Ex: BJ Share http://www.bj-share.net 25/10/2010 Observando o universo BitTorrent através de Telescópios 7 O Universo BitTorrent - Download 25/10/2010 Observando o universo BitTorrent através de Telescópios 8 Exemplo do Universo BitTorrent 25/10/2010 Observando o universo BitTorrent através de Telescópios 9 Estratégias para extração de informação 3 tipos de acordo com a fonte de informação Comunidades: conteúdo, rastreadores e pares Rastreadores: logs, listas de ips Pares: pacotes, conexão com pares Custo das estratégias O custo da combinação das estratégias é definido pelo produto do custo com relação a cobertura, riquesa de detalhe e exatidão. Métricas: uso de cpu, uso de memória e recursos de rede. 25/10/2010 Observando o universo BitTorrent através de Telescópios 10 Escolhendo as estratégias Monitoramento Comunidades: economia de recursos, não possui informação sobre os pares Rastreadores: população de pares, menor intrusividade e menor custo, ausência de informação sobre conteúdo Pares: riqueza de detalhes, maior custo Monitoramento ativo e passivo PROPOSTA: COMBINAÇÃO DE TODAS AS ESTRATÉGIAS 25/10/2010 Observando o universo BitTorrent através de Telescópios 11 Modelo de informações - TorrentU Modelo que fornece uma estruturação e ligação a respeito das comunidades, pares, rastreadores e demais elementos do universo BitTorrent 25/10/2010 Observando o universo BitTorrent através de Telescópios 12 Arquitetura TorrentU Observer Front-end ou gerente da aplicação Configuração do sistema Observação dos dados coletados Composto por: User Interface, Requester, Strategist e Observer Repository TorrentU Telescope Responsável pelo monitoramento do Universo BitTorrent Resposta ao Observer Composto por: Provider, Telescope Repository e Monitor Monitor: divido em ”lentes”: 25/10/2010 Community Lens Tracker Lens Peer Lens Observando o universo BitTorrent através de Telescópios 13 Exemplo de Arquitura 25/10/2010 Observando o universo BitTorrent através de Telescópios 14 Lentes do Telescópio Community lens Monitoramento da publicação de arquivos torrents em websites. Utilização de parsers específicos para as comunidades Estrutura clara para facilitar a elaboração dos parsers Crawler focado: utilizado para obter arquivos torrent de comunidades que possuem mecanismo de busca. 25/10/2010 Observando o universo BitTorrent através de Telescópios 15 Lentes do Telescópio Tracker Lens Monitoramento dos rastreadores Extração da quantidade de pares (sugadores e semeadores), endereços IP, portas e informações sobre os próprios rastreadores O tracker lens se anuncia ao rastreador que retorna um subconjunto de sua lista de pares Frequência de monitoramento de acordo com a carga e entrada de novos pares 25/10/2010 Observando o universo BitTorrent através de Telescópios 16 Lentes do Telescópio Peer lens Monitoramento dos pares Extração de informações como nível de popularidade de determinado agente de usuário, sua versão, taxas de download/upload, quantidade de fragmentos baixados Round Robin 25/10/2010 A cada rodada a lente tenta se comunicar com n pares dispostos em uma fila circular. Firewall: inalcançáveis. Aguarda a comunicação. Observando o universo BitTorrent através de Telescópios 17 Avaliação Protótipo em Java 1.6 SGBD MySQL Atendimento aos requisitos Escalabilidade: recursos X componentes utilizados Escalável verticalmente e horizontalmente Flexibilidade 25/10/2010 Parâmetros para definir a riqueze de detalhes, cobertura e exatidão Observando o universo BitTorrent através de Telescópios 18 Ocupação de Recursos 25/10/2010 Observando o universo BitTorrent através de Telescópios 19 Avaliação Estratégia vs. Eficiência Valores estimados Tam. arquivo torrent: 20 KB Número de pares por rastreador: 50 Tam. mensagem HAVE de um par: 7 bytes Tam. mensagem handshake: 136 bytes Tam. Mensagem bitfield de um par: 180 bytes. Cenário 25/10/2010 Total de pares: 100.000 Total de torrents: 100 Quantidade de peças por torrent: 500 Observando o universo BitTorrent através de Telescópios 20 Avaliação Exemplo: Com base neste cenário, deseja-se saber ”quais os conteúdos compartilhados”. O custo possível varia de 2 MB a 384 MB Tamanho total em torrents das comunidades Tamanho total em torrents + todas as msgs do protoc. 384 MB = 2 MB + .... Carga do monitoramento no decorrer de 2 dias 25/10/2010 2 MB = 100 arquivos de torrent * 20 KB = 2.000 KB Entre 0,09 kbps e 17,68kbps Observando o universo BitTorrent através de Telescópios 21 Avaliação Conclusão do exemplo 25/10/2010 Como o TorrentU é flexível na escolha de suas estratégias e, tomando-se o resultado dos cálculos anteriores, o custo é minimizado utilizando-se apenas a técnica Community Lens. Desta forma, serão baixados apenas 2 MB, economizando-se o tempo de download dos outros 382 MB. Observando o universo BitTorrent através de Telescópios 22 Avaliação Estudo de caso Agenda de lançamentos do seriado “Family Guy” Comunidades: 25/10/2010 BTJunkie IsoHunt TorrentDownloads Período de observação: pouco mais de 22 horas, iniciando 4 horas antes da estréia do episódio Observando o universo BitTorrent através de Telescópios 23 Avaliação 25/10/2010 Observando o universo BitTorrent através de Telescópios 24 Avaliação Amostras do monitoramento em diferentes horários de observação 25/10/2010 Observando o universo BitTorrent através de Telescópios 25 Trabalhos Futuros Projeto e implementação do BitTorrent Observer 25/10/2010 Determinar a quantidade de telescópios, para onde ”apontarão” e quais estratégias usar para atender determinado objetivo de observação Implementação de múltiplas instâncias do protótipo e efetuar observações de longo prazo na Internet (Planet Lab) Estender a arquitetura do TorrentU Observando o universo BitTorrent através de Telescópios 26 Conclusão do Trabalho Além de definir o ”Universo BitTorrent” e seus elementos, este trabalho demonstra diferentes estratégias de extração de informações que, combinadas de acordo com a disponibilidade dos recursos, fornece resultados com diferentes graus de exatidão para a observação deste universo quase que imensurável, o BitTorrent. 25/10/2010 Observando o universo BitTorrent através de Telescópios 27 Análise Crítica É desenvolvido um protótipo e realizado um estudo de caso que validam a idéia do autor Necessidade de explicitar melhor os resultados com relação a observação das ”lentes” A solução é aplicável para quaisquer tipos de redes p2p. O que mudaria seria qual o tipo de lentes e serem utilizadas e como seriam utilizadas. 25/10/2010 Observando o universo BitTorrent através de Telescópios 28 OBRIGADO! 25/10/2010 Observando o universo BitTorrent através de Telescópios 29