segunda-feira, 29 de outubro de 2007

Compartilhamento de Arquivos

Nos primordios da Internet, quando alquém precisava de um arquivo, usava o protocolo de FTP para baixar o arquivo de um servidor. Com o passar do tempo, a função de baixar arquivo também foi incorporado ao web browser, tornando esta função mais fácil para o usuário.

Com o aumento do tamanho dos arquivos, e o aumento da quantidade de usuários da grande rede, estes métodos se tornam insuficientes para a distribuição em massa de programas, filmes, música, enfim, de arquivos em geral. Portanto foram elaborados algumas outras maneiras de compartilhar arquivos, utilizando a banda disponível de todos os usuários.

Basicamente o procedimetno é o seguinte: se divide o arquivo em vários pedacinhos (EX. pedaços de 4KB, ou 8KB) e distribui os pedacinhos. Cada cliente baixa os pedacinhos e junta-os para fazer novamente o arquivo completo. Uma vez baixada um pedacinho, esse pedacinho pode ser disponibilizado para outros usuários.

Vamos supor o seguinte cenário: Um produtor quer lançar um filme através da Internet, mas não tem recursos para instalar um super servidor. Então, ele disponibiliza o arquivo pelo método de compartilhamento de arquivos P2P. Quando o primeiro cliente pede um pedacinho do arquivo, ele oferece o primeiro pedacinho. Quando o segundo cliente pede um pedacinho, ele oferece o segundo. Quando o primeiro cliente termina de baixar o primeiro pedacinho e solicitar o segundo pedacinho, o cliente vai buscar, não no servidor, mas no segundo cliente que baixou o segundo pedacinho. O segundo cliente, por sua vêz, quando terminar de baixar o segundo pedacinho e for buscar o primeiro, vai baixar do primeiro cliente.

Desta forma, com a troca de pedacinhos entre si, a banda do servidor principal é economizada. Não fica sobrecarregado.

Posteriormente, quando um novo cliente chegar, pedindo um pedacinho, poderá ser direcionado para um dos outros clientes que já tem pedacinhos disponíveis, e pode baixar os pedacinhos em qualquer ordem, e depois juntar todos os pedacinhos, formando o todo.

Uma das redes P2P é a rede do BitTorrent. Nessa rede existem alguns bancos de dados (um dos mais completos está no site: www.mininova.org ) que mantem a lista dos torrents, ou seja a lista de quem tem quais pedacinhos. Esses bancos de dados são chamdos de "trackers". Os "seeders" (seeds, seeder, sementes) são os sites que já tem uma cópia completa do arquivo e estão disponibilizando para a rede. Os "leechers" (leech, leacher, sugador) são os que estão baixando os pedacinhos, mas ainda não tem o arquivo completo.

É importante ajustar os limites de download e de upload no seu cliente, para não ocupar toda sua banda, caso contrário vai ter muita dificuldade em navegar a outros sites, enquanto está baixando um arquivo pela rede P2P.

Como em qualquer rede compartilhada, existem usuários de todos os níveis e interesses. Alguns só se interessam em baixar o arquivo e não querem compartilhar com os outros. Outros querem divulgar seus programas, e até virus, mascarados pela rede P2P. Todo cuidado é pouco quando se baixa algum arquivo pela rede.