Você está na página 1de 6

DISTRIBUIÇÃO DE ARQUIVOS PELO PROTOCOLO

BITTORRENT
Jorge Silvério da Silva – FATEC São Caetano do Sul – Antonio Russo

RESUMO
De tempos em tempos a discussão sobre a legalidade do protocolo bitTorrent, popularmente conhecido
como Torrent, retorna aos holofotes, desde seu lançamento em 2001 o protocolo tem enfrentado
críticas quanto à legalidade e fatores relacionados à proteção dos direitos de propriedade intelectual.
Este trabalho visa explicar de forma simples o funcionamento do protocolo. Serão analisadas as
particularidades desse modelo P2P e as características que as tornam tão interessantes para o
compartilhamento de arquivos.

PALAVRAS CHAVE
bitTorrent; Compartilhamento de Arquivos; Copyright e Propriedade Intelectual; Legalidade Digital;
Modelo Par a Par; Open Source Softwares; Protocolo de Compartilhamento; Protocolo Peer-to-peer ;
Torrent;

ABSTRACT
From time to time the discussion about the legality of the bitTorrent protocol, popularly known as
Torrent, returns to the spotlight, since its launch in 2001 the protocol has faced criticism regarding the
legality and factors related to the protection of intellectual property rights. This work aims to explain in
a simple way the functioning of the protocol. The particularities of this P2P model will be analyzed and
what makes them so interesting for file sharing.

INTRODUÇÃO
É possível dizer que existe a Internet antes e depois do protocolo P2P. O compartilhamento de arquivos
sempre foi uma necessidade desde o advento da internet, com o surgimento do Napster veio a
popularização dos modelos peer-to-peer , o que tornou não só possível mas também incrivelmente mais
fácil para computadores individuais trocarem mensagens e compartilharem variados tipos de
informação através da internet.

O modelo ponto a ponto tem como característica primaria computadores transferindo dados entre si
sem necessariamente existir uma função fixa de fornecimento e de consumo de dados, mas sim
assumindo ambas as funções [1]. Oferecendo uma alternativa aos serviços centralizados, eliminando
intermediários e movendo para os usuários finais toda a responsabilidade pelo gerenciamento do
conteúdo.

Em 2001, Bram Cohen lançou a primeira implementação do protocolo bitTorrent, popularmente


conhecido como Torrent, pela empresa Rainberry, Inc. O protocolo bitTorrent possibilitou o download e
o upload de arquivos entre muitos usuários de forma anônima e descentralizada, milhões de usuários
começaram a usar o protocolo bitTorrent para baixar e compartilhar arquivos e, as empresas, para

Página | 1
otimizar a distribuição de dados. Hoje o protocolo bitTorrent é responsável por uma fatia significativa do
tráfego mundial diário da Internet. Ele não é só a maior rede peer-to-peer, mas também a base da Web3
e uma das maiores comunidades globais da Internet. Isso comprova a alta relevância e a robustez da
tecnologia que, agora, conta com o poder da blockchain. [2]

MODELOS DE COMPARTILHAMENTO

Figura 1 - Modelo Cliente-Servidor- Adaptado [3] Figura 2 - Modelo Ponto a Ponto P2P- Adaptado [3]

O modelo tradicional de compartilhamento de informações utiliza um servidor como centralizador de


informações, sendo que os computadores para compartilhar informações precisam enviar requisições
de acesso e upload.

Já o modelo ponto a ponto, peer-to-peer, descentraliza a informação. Os computadores se comunicam


entre si, transferindo as informações necessárias. A transferência ocorre a cada par de computadores,
quando temos um número maior de computadores querendo a mesma informação o processo se torna
consideravelmente mais lento. [4]

O modelo peer-to-peer e o modelo tradicional trazem alguns problemas bem específicos:

 Alta utilização dos recursos de rede: Arquiteturas do tipo cliente-servidor em geral, têm
limitações geradas pelas redes que conectam o cliente ao servidor, pois os recursos de rede são
finitos. Em 2022 a SpeedTest, uma organização renomada que realiza testes de velocidade
realizou um ranking 55,18 Mbps (megabits por segundo) para 113,55 Mbps, enquanto esses
números colocam o Brasil acima da velocidade media global de 72,40 Mbps, ocupamos o 31º
lugar [5]. O acesso concorrente de vários computadores a um servidor só piora esta situação,
provocando lentidão da transferência da informação;
 Longo período de tempo para conclusão: Atualizações de sistemas operacionais e
principalmente, as atualizações de anti-malware devem ser realizadas o mais rápido possível,
uma demora na atualização pode expor toda uma rede a uma vulnerabilidade de segurança.
(vírus, worms, ataques de negação distribuída de serviço), também devemos considerar que
todo o processo deve ser realizado de uma vez enquanto as partes estiverem conectadas, caso
a conexão seja desativada por qualquer motivo o processo de transferência deve recomeçar do
zero.
 Maior sensibilidade a falhas: Arquiteturas cliente servidor ou ponto a ponto comum podem
gerar problemas quanto à disponibilidade em caso de falha na conexão ao servidor /

Página | 2
computador peer já que é também esperado que o envio da informação demore um longo
período de tempo. Particularmente o método peer-to-peer implica que você conheça e confie
na outra parte que faz a transferência, já que estes podem ser interceptados e infectados.
 Necessidade de recuperação dos dados em caso de falha na transferência: Em caso de alguma
falha (do cliente, do servidor ou da rede), todos os dados já transferidos podem ser perdidos ou
corrompidos pela interrupção.

Para contornar estas limitações, Cohen criou o protocolo bitTorrent que prometia ser mais ágil, seguro e
permitir o consumo da informação por vários computadores simultaneamente.

ANATOMIA DO BITTORRENT

Figura 3 – Arquitetura do protocolo bitTorrent - Adaptado [6]

O protocolo bitTorrent estabelece uma rede P2P, onde cada um dos seus usuários assume um papel
hibrido de servidor (que fornece a informação) e de cliente (que adquire a informação). Cada
computador que faz parte dessa rede é chamado de peer.

A transferência pelo protocolo esta associada a um arquivo de extensão “.torrent” que contém
metadados sobre arquivos e pastas, juntamente com uma lista de localizações de rede dos trackers -
computadores com um cliente bitTorrent que ajudam os participantes no sistema a encontrar o outro.
Um arquivo torrent não contém conteúdo real, ele contém apenas informações sobre esses arquivos,
como seus nomes, tamanhos estrutura de pastas e valores de hash de criptografia para verificar a
integridade de arquivos, e atua como um guia para download de peças de um arquivo a partir de outros
clientes ao permitir o compartilhamento peer-to-peer através de pontos de redistribuição da rede. [7]

Os computadores conectados nessa rede são qualificados de duas formas:

Seed Leech

Do inglês, aquele que se beneficia da informação,


mas faz pouco em consideração. É o usuário que
possui parcialmente o arquivo, podemos dizer que
Do inglês, semente, é o usuário que possui o um usuário é um leecher se ele tem entre 0,1% e
arquivo completo no seu computador. Sua função 99,9% do arquivo em seu computador. Um leech
é semeá-lo, ou seja, disponibilizar tal arquivo para faz duas tarefas ao mesmo tempo: continua
upload, visto que o download já não é mais realizando o download ao mesmo tempo em que
necessário. semeia aquilo que já possui.

Página | 3
Os computadores que participam da rede são chamados de peers enquanto que a rede de
compartilhamento é chamada de swarm, ou enxame. É possível participar de múltiplas redes de swarm
atuando como seeder e/ou leecher de forma simultânea.

O TORRENT
A arquitetura tem um aspecto muito particular comparado com o método comum P2P, durante o envio
de informações, o arquivo é dividido em pieces, em português chamado de partes. A quantidade total
de partes varia de acordo com cada torrent: o tamanho total dos arquivos contidos nesse torrent é
dividido em blocos de tamanho fixo e transmitido de forma independente das outras partes não
necessariamente na ordem, eles são escolhidos de forma a aperfeiçoar o desempenho do processo de
transferência: partes muito grande causariam ineficiência de banda de rede, enquanto partes muito
pequenas aumentariam os trechos de valores hash nos arquivos .torrent.

O processo de download de um arquivo, por parte de um peer interessado, ocorre de acordo com os
seguintes passos: [8]

 O peer faz uma consulta ao tracker, por meio do protocolo HTTP, usando os parâmetros
contidos no arquivo .torrent. Esse arquivo é previamente criado e disseminado por uma
semente inicial;
 O tracker responde com uma lista de leechers e/ou sementes em processo de
download/upload do arquivo naquele momento;
 O peer se torna parte desse conjunto de peers interessados no arquivo e tem condições de
trocar mensagens com os demais, tanto para enviar quanto para receber blocos do arquivo;
 Durante a transferência, os peers podem trocar bitfields; o bitfield é uma informação que indica
as partes que ainda não foram baixados de um arquivo em um peer particular; cada bit dessa
informação está relacionado a uma parte;
 Ao fim do download, o peer pode decidir se tornar uma semente do arquivo. Se decidir se
tornar semente, precisará informar o tracker sobre isso;

Existe um mecanismo de incentivo nomeado de tit-for-tat, esse mecanismo é utilizado para estimular a
cooperação entre os pares. A cada rodada, o par avalia quais pares remotos mais contribuíram com ele
e retribui na rodada seguinte atendendo suas requisições. Sua principal funcionalidade é encontrar
pares com melhores taxas de download e upload que as atuais, e permitir que pares iniciantes (sem
peças) possam ter a chance de inicialmente obter conteúdo para troca. [9]

DETECÇÃO DE PEÇAS CORROMPIDAS


A arquitetura bitTorrent possui proteção contra tentativas de adulteração do conteúdo. Uma peça que
contém um ou mais blocos incorretos não será aceita pelo par realizando o download, o que leva ao
descarte e novo download.

Essa proteção é possibilitada através de uma verificação de integridade, no arquivo .torrent tem a
quantidade de partes e seus hash, durante o download das partes o algoritmo compara o hash SHA-1 da
peça e compara com a que veio no arquivo .torrent.

Uma das propriedades da função SHA-1, assim como das funções hash em geral, é ser uma função
unidirecional. O que significa que é relativamente fácil detectar quando uma das partes não é aquilo que
deveria ter sido transmitido e é rapidamente substituída por uma parte de outro par que tenha o
conteúdo.

Página | 4
CONCLUSÃO
Este artigo teve como propósito apresentar de forma mais diluída as arquiteturas de compartilhamento
de arquivos e seus métodos de segurança, com ênfase no protocolo bitTorrent. As especificidades do
protocolo permitem um jeito mais ágil, relativamente mais seguro e principalmente acessível a um
grande numero de usuários.

Não é pratico para este objetivo entrar no detalhe da codificação do protocolo ou em detalhes sobre os
métodos criptográficos, mas sim de apresentar este universo e fomentar o interesse de um maior
estudo sobre esses métodos.

As redes P2P não são novidade para os usuários mais antigos da World Wide Web, mas considero
importante desmitificar os processos e as etapas que diferentes arquiteturas e em especial uma tão
relevante quando o protocolo bitTorrent.

BIBLIOGRAFIA

[1] P. C. Haddad Filho e J. C. d. Pina, Anatomia do BitTorrent a Ciência da Computação no Transmission,


São Paulo: IME-USP, 2013.

[2] Rainberry Inc, “Sobre o BitTorrent,” [Online]. Available: https://www.bittorrent.com/pt-


br/company/about-us/. [Acesso em 04 12 2022].

[3] G. B. Rossi e M. A. Filho, Uma Ferramenta para Análise e Controle de Aplicações P2P, São José dos
Campos: Instituto Nacional de Pesquisas Espaciais.

[4] R. João, D. Marco, C. Arthur, S. Eduardo, S. Guthemberg, C. Kamienski e D. Sadok, Peer-to-Peer:


Computação Colaborativa na Internet, Universidade Federal de Pernambuco.

[5] Speedtest, “Median Country Speeds,” SpeedTest Intelligence, 10 2022. [Online]. Available:
https://www.speedtest.net/global-index#fixed. [Acesso em 04 12 2022].

[6] D. M. A. Costa e G. M. Rubinstein, Protocolo BitTorrent Ciente de Localização em Redes Corporativas,


Rio de Janeiro: Sociedade Brasileira de Computação - UERJ, 2016.

[7] Sharpened, “.TORRENT File Extension,” FileInfo.com, [Online]. Available:


https://fileinfo.com/extension/torrent. [Acesso em 04 12 2022].

[8] C. N. Quental e A. d. S. P. Gonçalves, CDS-BitTorrent: Um Sistema de Disseminação de Conteúdo para


a Melhoria do Desempenho de Aplicações BitTorrent sobre MANETS, Recife: Universidade Federal de
Pernambuco.

[9] B. R. Mansilha, A. M. Konrath e P. M. Barcellos, Corrupcção, Mentiras e Isolamento:Avaliação de


impacto de ataques a BitTorrent, São Leopoldo, RS: PIPCA – Programa de Pós-Graduação em
Computação Aplicada.

Página | 5
Página | 6

Você também pode gostar