BitTorrent e as Redes P2P - ppt carregar
Apresentação em tema: "BitTorrent e as Redes P2P"— Transcrição da apresentação:
1 BitTorrent e as Redes P2P
João Pedro Francese BitTorrent e as Redes P2P Trabalho Final de Redes II Profs. Luís Henrique e Otto Duarte - GTA/UFRJ
2 Contexto De que forma as pessoas usam a Internet? Consumo de mídia
Música Vídeos Programas da ordem de gigabytes Difusão da banda larga Como distribuir tais arquivos?
HTTP e FTP Envio apenas a partir do servidor Velocidade alta e constante para poucos usuários Sobrecarga quando há muitas requisições Uso de mirrors
4 Modelo Par-a-Par Protocolos variados e sob desenvolvimento
Usuários recebem e enviam os arquivos Início e término do download lentos Escalável Servidores com papel auxiliar
5 Conceitos Cliente (client) Rastreador (tracker) Par (peer)
Pedaço (piece) Semente (seed) Bloco (block) Sanguessuga (leecher) Arquivo de metadados (metafile) Enxame (swarm)
6 Arquivo de Metadados Codificação em Bencoding Campos principais:
Strings, inteiros, listas e dicionários em texto plano Campos principais: Announce e announce-list  rastreadores Info Tamanho do pedaço Hash de cada pedaço Tamanho e nome de cada arquivo
7 Funcionamento Usuário obtém o arquivo de metadados
Cliente contata o rastreador Cliente descobre os pedaços de cada par Cliente começa a enviar requisições de blocos Para cada pedaço recebido, o hash SHA1 é calculado e comparado Ao receber todos os pedaços, o usuário torna-se uma semente
9 Algoritmo de Seleção de Pares
Objetivo: desempenho local (taxa de download) Conseqüência: melhora global Baixar de todos os pares disponíveis Enviar para os pares que fornecem melhor download Congelar (choke) envio para os outros Trocar a cada período (10s) Descongelar um par aleatório Não enviar para pares que o congelaram Semente: baseado na taxa de upload com o par
10 Algoritmo de Seleção de Pedaços
Escolha tem impacto sobre tempo de recebimento Recebimento: Rarest First – pedaço menos presente nos pares Melhora a performance global Evita que o fim do download seja demorado Diminui chances de um pedaço desaparecer do enxame Envio: Escolhido pelo par
11 Algoritmos Alternativos
Random First Piece Primeiro pedaço do download Escolha de um pedaço aleatório Objetivo: poder enviar o mais rápido possível Endgame Fim do download Requisição de todos os pedaços restantes Objetivo: evitar que a demora de um par atrase o recebimento
12 Técnicas Avançadas Torrents sem rastreadores
Fim da necessidade de servidores DHT (Distributed Hash Table) Rede sobrecamada Nós recebem ID e mantém informações sobre vizinhos para roteamento Hash do arquivo determina seu nó de armazenamento
13 Técnicas Avançadas Encriptação Broadcatching Anonimidade
Ocultação do tráfego Broadcatching Torrent + RSS Distribuição automática de conteúdo
14 Traffic Shaping Controle da rede para garantir qualidade de serviço
Detecção do protocolo Porta de conexão Análise do conteúdo Padrões de tráfego Atraso do fluxo de dados Técnicas de contenção Descarte de pacotes Encriptação e uso de portas alternativas
15 Clientes BitTorrent uTorrent Azureus BitComet Opera ...
16 Outras Redes P2P FastTrack eDonkey Cliente principal: KaZaa
Protocolo fechado Alto nível de poluição dos arquivos eDonkey Cliente principal: eMule Sistema de busca eficiente mas dependente de servidores Gama vasta de arquivos Baixa velocidade de transferência
17 Outras Redes P2P Soulseek Gnutella Duas redes centralizadas
Compartilhamento de músicas Download apenas de uma fonte Busca inclui o nome da pasta do arquivo Gnutella Cliente principal: LimeWire Roteamento através dos nós por alagamento: menos eficiente, mas dispensa servidores 40% dos usuários de P2P em 2007
18 Conclusão Bom desempenho para arquivos grandes
Uso por aplicações já estabelecidas Ex.: Ubuntu Principal adversário: Internet Capacidade dos provedores BitTorrent gasta entre 20% e 40% da banda mundial Pressão legal dos detentores de copyright Maior uso na troca de arquivos protegidos
19 Perguntas BitTorrent e as redes P2P João Pedro Francese
20 Quais informações estão presentes em um arquivo de metadados .torrent?
21 Quais informações estão presentes em um arquivo de metadados .torrent?
R.:	As informações principais são os endereços dos servidores de rastreamento, o tamanho do pedaço, o hash de cada pedaço e os nomes e tamanhos dos arquivos compartilhados.
22 Quais as funções de um servidor de rastreamento?
23 Quais as funções de um servidor de rastreamento?
R.:	Eles mantêm uma lista dos pares ativos e a repassa para aqueles que se conectarem, permitindo que todos se encontrem e possam trocar os pedaços do arquivo. Como função secundária, eles mantêm estatísticas sobre os torrents que gerenciam.
24 Como é o funcionamento básico dos algoritmos normais de escolha de pares e pedaços?
25 Como é o funcionamento básico dos algoritmos normais de escolha de pares e pedaços?
R.:	Download: tentar baixar o pedaço mais raro de todos aqueles que estiverem dispostos a enviar. Upload: enviar o pedaço requisitado para aqueles que estão lhe proporcionando a maior taxa de download.
26 O que são os modos Superseeding e Endgame?
27 O que são os modos Superseeding e Endgame?
R.:	São algoritmos de seleção de pedaços usados em ocasiões especiais. Superseeding: usado no início do compartilhamento. A semente diz que não tem pedaços, a fim de que ela possa escolher qual deles enviar. Endgame: usado no fim do recebimento. O sanguessuga pede os pedaços restantes a todos os pares simultaneamente.
28 Como funciona o Traffic Shaping e o que pode ser feito para evitá-lo?
29 Como funciona o Traffic Shaping e o que pode ser feito para evitá-lo?
R.:	O Traffic Shaping analisa o conteúdo dos pacotes ou a porta usada na conexão para detectar o protocolo ou serviço. Ele então atrasa a passagem pela rede, através do descarte de pacotes ou de técnicas de contenção. Pode-se tentar evitá-lo alterando a porta de conexão ou encriptando os pacotes.