SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
BitTorrent

Davi Felipe Russi
 Vitor da Silva
Introdução

. Criado e implementado por Bram Cohen em 2001;

. Alternativa ao FTP (File Transfer Protocol);

. Auxilia no problema de banda limitada dos servidores;

. Distribuição colaborativa de arquivos via Internet;

. Melhor caracterizado como um protocolo peer-to-peer (P2P),
embora possua elementos altamente centralizados;

. Apesar de ser largamente utilizado e já ter sido implementado
para várias plataformas, não possui uma especificação formal.
Terminologia

Tracker
É um servidor central que possui informação sobre torrents e
seus respectivos swarms. Possibilita a entrada de novos peers
em swarms.

Peer
É um nó da rede que participa do compartilhamento. Pode ser
um cliente e servidor simultaneamente.
Terminologia

Arquivo de Metainformação
Arquivo de texto que possui informação sobre a URL do
Tracker responsável pelo seu Swarm.


Swarm
É um conjunto de Peers (download / upload) que opera em um
torrent.
Características

- O Tracker serve de intermediário entre dois peers. Após os
peers se comunicarem ele não irá mais intermediar a
comunicação. E com isso diminui a sua carga.
- Nada impede de o Cliente conectar-se novamente ao Tracker
para solicitar novos peers do swarm.
- Tit-for-Tat quanto mais compartilha maior será a velocidade
de download.
- Para melhorar o uso da internet, o protocolo faz pipeline da
transmissão de dados, Bittorrent baixa pedaços de arquivo
de múltiplos usuários.
Funcionamento
BitTorrent

Em redes P2P os usuários que compartilham os arquivos.

- No BitTorrent o compartilhamento é dado por:
  ● Publicações de Torrents
  ● Download de Torrents
Publicação de Torrents

- É necessário ter um tracker online.

- Crie um arquivo com metainformação contendo a informação
do tracker, informação sobre a estruturação do arquivo a ser
compartilhado, etc.

- Necessariamente um usuário com o arquivo inteiro deve estar
online para que o arquivo possa ser compartilhado na rede.
Download de Torrents

- Usuário baixa um arquivo com metainformação. Que está
sendo publicado num site indexador de torrents, o cliente se
conecta ao tracker periodicamente, requesitando informação
sobre peers no swarm.

- Cliente se conecta aos peers e então são transferidas partes
do arquivo através do protocolo Peer Wire Protocol (PWP) até
que o arquivo inteiro chegue ao cliente.
Cliente uTorrent 2.2.1- Download
Arquivo de metainformação

Arquivo de texto contem informações do torrent tais como:
 ● Endereço do tracker
 ● Endereço de tracker auxiliares (opcional)
 ● Comentário feito pelo autor do arquivo (opcional)
 ● Nome do Cliente usado na criação do arquivo (opcional)
 ● Data de criação do arquivo de metainformação (opcional)
 ● Info:
     ○ identificação de todos os arquivos que fazem parte do
       torrent
     ○ tamanho das partes
     ○ nome do arquivo
     ○ tamanho em bytes
Arquivo de Metainformação
Tracker HTTP Protocol (THP)

- Faz uso do HTTP, utilizado para gerenciar os swarms,
apresentando novos peers que desejam participar do processo
de download.
- Através de requests e responses notifica os peers sobre
novos peers participantes.
- Está característica que diferencia o BitTorrent dos protocolos
P2P.
- Caso o Tracker seja desligado ou reiniciado, os peers já
existentes no swarm continuam interagindo entre si
normalmente, apenas não se comunicam com novos peers.
Peer Wire Protocol (PWP)

- Responsável pela comunicação de peers vizinhos.
- Define como o peer vai se comportar em relação ao
compartilhamento, isso ocorre após fazer a comunicação com
o tracker através do THP, tornando-se parte do swarm.
- É construído sobre o protocolo TCP, gerenciando sua
comunicação por mensagens assíncronas.
- Deve ser otimizado para maximar disponibilidade de
determinadas partes de arquivos no swarm.
- Para evitar que um torrent "morra", o PWP identifica as partes
menos disponíveis no swarm e quais peers possuem essas
partes e então prioriza a tranferência das mesmas.
Animação

http://www.youtube.com/watch?v=w8_JHgVNsA8
Na prática

- Responsável por 27% a 55% de todo o tráfego da internet
- Extensivamente utilizado por grandes companhias:
  ● Facebook e Twitter: Updates nos servidores são feitos
    através de BitTorrent.

 ● Activision-Blizzard: Atualizações de jogos como Starcraft II
   e World of Warcraft são baixadas através de um cliente
   BitTorrent proprietário chamado Blizzard Downloader.

 ● Projetos Open-Source: A maioria dos projetos open-source
   incentiva o download de conteúdo via BitTorrent devido ao
   limite de tráfego dos servidores imposto a downloads via
   HTTP ou FTP.
Conclusão

É uma solução muito boa, uma vez que maximiza a velocidade
de transferência de arquivos, pois baixa partes do arquivo
simultaneamente de peers diferentes, o que torna ele o
protocolo preferido para compartilhamento de arquivos
grandes.
Referências

http://www.bittorrent.com/

http://jonas.nitro.dk/bittorrent/bittorrent-rfc.html

http://en.wikipedia.org/wiki/BitTorrent_%28protocol%29

http://computer.howstuffworks.com/bittorrent.htm

Contenu connexe

Tendances

Explicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando WiresharkExplicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando WiresharkEuler Neto
 
Material de apoio livro kurose cap01
Material de apoio   livro kurose cap01Material de apoio   livro kurose cap01
Material de apoio livro kurose cap01ErikHR
 
NFS – Network File System
NFS – Network File SystemNFS – Network File System
NFS – Network File SystemMarlon Munhoz
 
Aula06 camada de transporte
Aula06 camada de transporteAula06 camada de transporte
Aula06 camada de transporteTiago Tda
 
Artigo Denis Rebelo
Artigo Denis RebeloArtigo Denis Rebelo
Artigo Denis Rebelodenisbelo
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicaçãosergiocef96
 
Redes I -7.Introdução ao TCP/IP
Redes I -7.Introdução ao TCP/IPRedes I -7.Introdução ao TCP/IP
Redes I -7.Introdução ao TCP/IPMauro Tapajós
 
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoResolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoRonildo Oliveira
 
Camada de aplicação
Camada de aplicaçãoCamada de aplicação
Camada de aplicaçãoPjpilin
 
Aula01 - protocolos da camada de aplicação
Aula01 - protocolos da camada de aplicaçãoAula01 - protocolos da camada de aplicação
Aula01 - protocolos da camada de aplicaçãoCarlos Veiga
 
Capítulo 3 funcionalidades e protocolos da camada de aplicação
Capítulo 3   funcionalidades e protocolos da camada de aplicaçãoCapítulo 3   funcionalidades e protocolos da camada de aplicação
Capítulo 3 funcionalidades e protocolos da camada de aplicaçãoSimba Samuel
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicaçãoJoel Saramago
 
Pmmrei Comandos E Utilitariso Tcp Ip
Pmmrei   Comandos E Utilitariso Tcp IpPmmrei   Comandos E Utilitariso Tcp Ip
Pmmrei Comandos E Utilitariso Tcp Ipmfsr1970
 
Protocolos de Redes: TFTP e DHCP
Protocolos de Redes: TFTP e DHCPProtocolos de Redes: TFTP e DHCP
Protocolos de Redes: TFTP e DHCPDaniel Brandão
 

Tendances (20)

Protocolo UDP
Protocolo UDPProtocolo UDP
Protocolo UDP
 
Tcp udp
Tcp udpTcp udp
Tcp udp
 
Imap
ImapImap
Imap
 
Explicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando WiresharkExplicando segurança e privacidade utilizando Wireshark
Explicando segurança e privacidade utilizando Wireshark
 
Material de apoio livro kurose cap01
Material de apoio   livro kurose cap01Material de apoio   livro kurose cap01
Material de apoio livro kurose cap01
 
NFS – Network File System
NFS – Network File SystemNFS – Network File System
NFS – Network File System
 
Aula06 camada de transporte
Aula06 camada de transporteAula06 camada de transporte
Aula06 camada de transporte
 
Artigo Denis Rebelo
Artigo Denis RebeloArtigo Denis Rebelo
Artigo Denis Rebelo
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicação
 
Redes I -7.Introdução ao TCP/IP
Redes I -7.Introdução ao TCP/IPRedes I -7.Introdução ao TCP/IP
Redes I -7.Introdução ao TCP/IP
 
Trabalho camada de transporte
Trabalho camada de transporteTrabalho camada de transporte
Trabalho camada de transporte
 
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoResolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
 
Camada de aplicação parte1
Camada de aplicação parte1Camada de aplicação parte1
Camada de aplicação parte1
 
Camada de aplicação
Camada de aplicaçãoCamada de aplicação
Camada de aplicação
 
Aula01 - protocolos da camada de aplicação
Aula01 - protocolos da camada de aplicaçãoAula01 - protocolos da camada de aplicação
Aula01 - protocolos da camada de aplicação
 
Capítulo 3 funcionalidades e protocolos da camada de aplicação
Capítulo 3   funcionalidades e protocolos da camada de aplicaçãoCapítulo 3   funcionalidades e protocolos da camada de aplicação
Capítulo 3 funcionalidades e protocolos da camada de aplicação
 
Protocolos de aplicação
Protocolos de aplicaçãoProtocolos de aplicação
Protocolos de aplicação
 
Camada de transporte parte1
Camada de transporte parte1Camada de transporte parte1
Camada de transporte parte1
 
Pmmrei Comandos E Utilitariso Tcp Ip
Pmmrei   Comandos E Utilitariso Tcp IpPmmrei   Comandos E Utilitariso Tcp Ip
Pmmrei Comandos E Utilitariso Tcp Ip
 
Protocolos de Redes: TFTP e DHCP
Protocolos de Redes: TFTP e DHCPProtocolos de Redes: TFTP e DHCP
Protocolos de Redes: TFTP e DHCP
 

Similaire à Como funciona o protocolo BitTorrent

Similaire à Como funciona o protocolo BitTorrent (20)

GlossáRio De Internet
GlossáRio De InternetGlossáRio De Internet
GlossáRio De Internet
 
GlossáRio De Internet
GlossáRio De InternetGlossáRio De Internet
GlossáRio De Internet
 
http
httphttp
http
 
Fundamentos a rede de compuradores
Fundamentos a rede de compuradoresFundamentos a rede de compuradores
Fundamentos a rede de compuradores
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
Wiki
WikiWiki
Wiki
 
Cirrus
CirrusCirrus
Cirrus
 
Artigo Denis Rebelo
Artigo Denis RebeloArtigo Denis Rebelo
Artigo Denis Rebelo
 
Glossário
GlossárioGlossário
Glossário
 
1º Artigo De GerêNcia De Redes
1º Artigo De GerêNcia De Redes1º Artigo De GerêNcia De Redes
1º Artigo De GerêNcia De Redes
 
Coisas Boas
Coisas BoasCoisas Boas
Coisas Boas
 
GlossáRio Da Internet
GlossáRio Da InternetGlossáRio Da Internet
GlossáRio Da Internet
 
GlossáRio Da Internet
GlossáRio Da InternetGlossáRio Da Internet
GlossáRio Da Internet
 
Computadores
ComputadoresComputadores
Computadores
 
Internet
InternetInternet
Internet
 
Cynthia Artigo
Cynthia  ArtigoCynthia  Artigo
Cynthia Artigo
 
Cynthia Artigo2
Cynthia  Artigo2Cynthia  Artigo2
Cynthia Artigo2
 
Protocolos
ProtocolosProtocolos
Protocolos
 
Protocolos
ProtocolosProtocolos
Protocolos
 
1 ficheiro
1 ficheiro1 ficheiro
1 ficheiro
 

Plus de Davi Felipe Russi

Plus de Davi Felipe Russi (9)

Atalhos no windows 7
Atalhos no windows 7Atalhos no windows 7
Atalhos no windows 7
 
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros OnlineDesafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
Desafio – O Maléfico mundo dos Jogos - (Evil Game Design) Mario Bros Online
 
Sistemas Colaborativos Conhecimento Coletivo
Sistemas Colaborativos Conhecimento ColetivoSistemas Colaborativos Conhecimento Coletivo
Sistemas Colaborativos Conhecimento Coletivo
 
Titanium appacelerator
Titanium appaceleratorTitanium appacelerator
Titanium appacelerator
 
Monitor de asfalto
Monitor de asfaltoMonitor de asfalto
Monitor de asfalto
 
App banjo android
App banjo androidApp banjo android
App banjo android
 
Problema da parada
Problema da paradaProblema da parada
Problema da parada
 
Haskell
HaskellHaskell
Haskell
 
2 maquina de post
2 maquina de post2 maquina de post
2 maquina de post
 

Como funciona o protocolo BitTorrent

  • 2. Introdução . Criado e implementado por Bram Cohen em 2001; . Alternativa ao FTP (File Transfer Protocol); . Auxilia no problema de banda limitada dos servidores; . Distribuição colaborativa de arquivos via Internet; . Melhor caracterizado como um protocolo peer-to-peer (P2P), embora possua elementos altamente centralizados; . Apesar de ser largamente utilizado e já ter sido implementado para várias plataformas, não possui uma especificação formal.
  • 3. Terminologia Tracker É um servidor central que possui informação sobre torrents e seus respectivos swarms. Possibilita a entrada de novos peers em swarms. Peer É um nó da rede que participa do compartilhamento. Pode ser um cliente e servidor simultaneamente.
  • 4. Terminologia Arquivo de Metainformação Arquivo de texto que possui informação sobre a URL do Tracker responsável pelo seu Swarm. Swarm É um conjunto de Peers (download / upload) que opera em um torrent.
  • 5. Características - O Tracker serve de intermediário entre dois peers. Após os peers se comunicarem ele não irá mais intermediar a comunicação. E com isso diminui a sua carga. - Nada impede de o Cliente conectar-se novamente ao Tracker para solicitar novos peers do swarm. - Tit-for-Tat quanto mais compartilha maior será a velocidade de download. - Para melhorar o uso da internet, o protocolo faz pipeline da transmissão de dados, Bittorrent baixa pedaços de arquivo de múltiplos usuários.
  • 7. BitTorrent Em redes P2P os usuários que compartilham os arquivos. - No BitTorrent o compartilhamento é dado por: ● Publicações de Torrents ● Download de Torrents
  • 8. Publicação de Torrents - É necessário ter um tracker online. - Crie um arquivo com metainformação contendo a informação do tracker, informação sobre a estruturação do arquivo a ser compartilhado, etc. - Necessariamente um usuário com o arquivo inteiro deve estar online para que o arquivo possa ser compartilhado na rede.
  • 9. Download de Torrents - Usuário baixa um arquivo com metainformação. Que está sendo publicado num site indexador de torrents, o cliente se conecta ao tracker periodicamente, requesitando informação sobre peers no swarm. - Cliente se conecta aos peers e então são transferidas partes do arquivo através do protocolo Peer Wire Protocol (PWP) até que o arquivo inteiro chegue ao cliente.
  • 11. Arquivo de metainformação Arquivo de texto contem informações do torrent tais como: ● Endereço do tracker ● Endereço de tracker auxiliares (opcional) ● Comentário feito pelo autor do arquivo (opcional) ● Nome do Cliente usado na criação do arquivo (opcional) ● Data de criação do arquivo de metainformação (opcional) ● Info: ○ identificação de todos os arquivos que fazem parte do torrent ○ tamanho das partes ○ nome do arquivo ○ tamanho em bytes
  • 13. Tracker HTTP Protocol (THP) - Faz uso do HTTP, utilizado para gerenciar os swarms, apresentando novos peers que desejam participar do processo de download. - Através de requests e responses notifica os peers sobre novos peers participantes. - Está característica que diferencia o BitTorrent dos protocolos P2P. - Caso o Tracker seja desligado ou reiniciado, os peers já existentes no swarm continuam interagindo entre si normalmente, apenas não se comunicam com novos peers.
  • 14. Peer Wire Protocol (PWP) - Responsável pela comunicação de peers vizinhos. - Define como o peer vai se comportar em relação ao compartilhamento, isso ocorre após fazer a comunicação com o tracker através do THP, tornando-se parte do swarm. - É construído sobre o protocolo TCP, gerenciando sua comunicação por mensagens assíncronas. - Deve ser otimizado para maximar disponibilidade de determinadas partes de arquivos no swarm. - Para evitar que um torrent "morra", o PWP identifica as partes menos disponíveis no swarm e quais peers possuem essas partes e então prioriza a tranferência das mesmas.
  • 16. Na prática - Responsável por 27% a 55% de todo o tráfego da internet - Extensivamente utilizado por grandes companhias: ● Facebook e Twitter: Updates nos servidores são feitos através de BitTorrent. ● Activision-Blizzard: Atualizações de jogos como Starcraft II e World of Warcraft são baixadas através de um cliente BitTorrent proprietário chamado Blizzard Downloader. ● Projetos Open-Source: A maioria dos projetos open-source incentiva o download de conteúdo via BitTorrent devido ao limite de tráfego dos servidores imposto a downloads via HTTP ou FTP.
  • 17. Conclusão É uma solução muito boa, uma vez que maximiza a velocidade de transferência de arquivos, pois baixa partes do arquivo simultaneamente de peers diferentes, o que torna ele o protocolo preferido para compartilhamento de arquivos grandes.