Se usamos Bit-Torrent para transferir, pela Internet, imagens de DVDs de Linux e outros conteúdos, por que não usarmos esse protocolo para transferir grandes massas de dados entre vários computadores numa rede local? Essa é a proposta desse trabalho, apresentado no 11o Fórum Internacional de Software Livre (FISL), entre os dias 21 e 24 de julho de 2010.
- 1. Bit-Torrent em redes locais Ricardo Jurczyk Pinheiro Soluo
para transferir imagens de instalao
2. Objetivo da palestra
- Altamente experimental.
- Cuidado! Se sacudir, explode! 3. Nada de perguntas
escabrosas!
- Ser que funciona mesmo? 4. Motivao Arrumar uma maneira mais
eficiente de compartilhar arquivos grandes numa rede esparsa, de
forma eficiente e principalmente... Rpida.
5. E quem esse chato?
- Professor:
- FAETEC (desde 1999). 6. Faculdades (UERJ, UniverCidade,
Paraso).
- Matemtico e professor de matemtica, pela UFRJ. 7. Mestre em
Cincia da Computao, pela UFF. 8. Unix desde 1991, Linux desde
1998.
9. Esse cara entende de Linux?
- Entusiasta do software livre:
- Conectiva, Red Hat, Fedora, Ubuntu, Gentoo, OpenWRT, Debian,
CentOS...Tem prompt, estamos chegando junto!
- Palestrante no 5o Frum de SL do RJ (2007) e no 6o CONISLI
(2008). 10. Membro do colegiado do curso de Tecnologia em Redes da
UniverCidade. 11. Colunista ( polmico ) do site
Guanabara.info.
12. Protocolo Bittorrent
- Criado por Bram Cohen, em 2003.
- Objetivo original: distribuir imagem ISO de distros Linux.
- Maximiza a velocidade de transferncia dividindo um arquivo
grande em pedaos, e cada parte pode ser recebida a partir de
diferentes clientes. 13. Objetivo: Replicar um arquivo grande por
vrios clientes.
14. Download - forma tradicional
- Um servidor fornece o arquivo. 15. Vrios clientes recebem esse
arquivo.
- Desempenho mximo limitado pelo nmero de clientes - gargalo. 16.
Perda de robustez se o servidor cai, perde-se o acesso ao
arquivo.
17. Download em redes P2P
- Usa um programa para achar quem fornece o arquivo desejado. 18.
Resolve (em parte) o problema da robustez, e diminui o gargalo.
- Se s um cliente fornecer o arquivo desejado, o problema
continua.
19. Como funciona? (Sim, tem gente que no sabe...)
- Oarquivo logicamente dividido em pedaos de 256 Kb, em mdia. 20.
Uso de arquivos .torrent como apontadores. 21. O tracker (num
servidor) aponta outros clientes (seeders e leechers) que baixam o
mesmo arquivo. 22. O leecher baixa diferentes partes, de diferentes
origens, e envia o que j recebeu para outros leechers.
23. Vantagens
- Sem filas de envio. 24. Otimiza o desempenho geral da rede. 25.
Quanto mais usurios, mais largura de banda disponvel. 26. Segurana
s fornece os arquivos que esto indicados no arquivo .torrent. 27.
Sem sobrecarga no servidor central pode at deixar de fornecer o
arquivo.
28. Desvantagens
- Falta de anonimato melhora se usar criptografia, mas o
desempenho cai. 29. Leechers que abandonam o barco - Pessoas que
baixam o arquivo e no continuam fornecendo-o a longo prazo o
arquivo deixa de estar disponvel.
- Em termos de downloads, arquivos .torrent tem vida curta.
30. Glossrio
- Hash Cdigo verificador de cada bloco - garante a integridade do
arquivo. 31. Tracker daemon que roda num servidor, fazendo o papel
de ponteiro para os clientes. 32. Leecher cliente que est baixando
o arquivo. 33. Seeder cliente que j baixou todo o arquivo e
continua fornecendo-o.
34. Crescimento
- 2001: Primeiros rascunhos do protocolo. 35. 2003: Primeiro
cliente, em Python. 36. 2005: 30% do trfego da Internet.
- 60% - vdeos: 46% - filmes e TV.
- 2010: 55% do trfego de Internet (estimativa).
- Trfego mdio por usurio: 25 Gb/ms. 37. Trfego mundial por ms: 1
Exabyte = 2 60bytes.
38. Mitos sobre o Torrent
- O Torrent est acabando com o cinema.
- Crescimento no faturamento dos cinemas em 5 anos: De US$ 23,1
bi para US$ 29,9 bi.
- O Bittorrent rastreado, voc pode ser preso por isso.
- possvel achar o IP, data, horrio do download e informaes do
provedor usado pelo usurio. Mas s quando o arquivo muito
grande.
39. Problema (o local)
- Escola Tcnica Estadual Repblica.
- Rede FAETEC (Rio de Janeiro) 40. Mais de 4000 alunos, em 6
cursos tcnicos. 41. Cerca de 250 computadores. 42. 130 computadores
em 10 laboratrios de informtica e 1 laboratrio de montagem e
manuteno. 43. Windows e Linux em (quase) todos os desktops, e Linux
nos servidores.
44. Problema (a imagem de instalao)
- Uso nas mquinas da escola.
- 8 imagens diferentes. 45. 4 imagens de instalao de laboratrio.
- Exatos 9,4 Gb (386 partes de 25 Mb cada). 46. Windows (XP SP3)
e Linux (Ubuntu 10.04). 47. Mais de 40 programas para uso em aula,
de diferentes licenas (sim, tem pirataria).
48. Problema (estrutura de rede)
- 10 laboratrios de informtica interligados entre si Gigabit
Ethernet. 49. 13 mquinas por laboratrio Fast Ethernet. 50. Em
condies normais:
- 13 mquinas descem e restauram a imagem em 30 minutos, em mdia.
51. 10 laboratrios prontos em 6 horas, em mdia.
52. Soluo padro
- Uso de FTP. 53. 4 servidores fornecem as imagens. 54. Script
escolhe o servidor (round-robin), e baixa a imagem.
55. Telas do script 56. Critrios do teste
- Mquinas usadas: 3 (trs)
- Rede: Fast Ethernet
- Roteador: Linksys WRT54GL com OpenWRT 8.09 (Kamikaze)
- Arquivos:
- 1024 arquivos gerados com /dev/urandom (total de 1 Gb). 57. 1
arquivo com 1 Gb.
58. Critrios do teste (cont.)
- Testes:
- 2 tipos de arquivos. 59. 1 mquina ou as 3, simultaneamente.
- Transferncia via FTP (vsftpd e ncftpget) 60. Transferncia via
bittorrent (Bti-Tracker e ctorrent)
- Cada teste foi executado 5 vezes. 61. Tomada de tempo obtida
com o comando time.
62. Grficos FTP 1 mquina 63. Grficos FTP 1 mquina 64. Grficos
FTP 3 mquinas 65. Grficos FTP 3 mquinas 66. Sobre o torrent
- Ferramentas usadas:
- Tracker: btitracker. 67. Criao do torrent: mktorrent. 68.
Cliente torrent: ctorrent. 69. Medio de tempo: time.
- Arquivos torrent:
- 4096 hashes. 70. Diviso em pedaos de 256 Kb cada.
71. Grficos torrent 1 mquina 72. Grficos torrent 1 mquina 73.
Grficos torrent 3 mquinas 74. Grficos torrent 3 mquinas 75.
Comparativo FTP e torrent 1 mquina 76. Comparativo FTP e torrent 1
mquina 77. Comparativo FTP e torrent 3 mquinas 78. Comparativo FTP
e torrent 3 mquinas 79. Comparativo FTP e torrent - mdias 80.
Comparativo FTP e torrent - mdias 81. Concluses
- 1 mquina: Desempenho pouco pior do que o FTP (perto de 10% mais
lento). 82. 3 mquinas simultneas: Desempenho melhor (algo como 35%
mais rpido). 83. Tendncia de melhora com o uso de mais mquinas (o
quanto vai cair o tempo?). 84. Facilidade com o uso da linha de
comando, que o maior barato (Estdio Livre).
85. Perspectivas
- Mais testes com mais mquinas. 86. Implementao no sistema em uso
no trabalho
- Script de gerao e restaurao implementado dentro de uma verso
customizada do System Rescue CD.
- Pensar sobre o uso de torrents trackerless.
Dominao mundial (ops, isso ainda no!). 87. Dvidas?
[email_address] Momento jab: http://retrocomputaria.blogspot.com
88. Fim! Por enquanto... Maiores novidades para breve! Questo
legal:
- Esta apresentao distribuda segundo a licenaCreative Commons
ShareAlike 2.5 (http://u.nu/97ied) , logo:
- Pode copiar, distribuir, exibir, etc., e criar derivaes. 89.
obrigatrio dar crdito ao autor original (ou seja, eu). 90. No
possvel us-la comercialmente. 91. A licena viral, se mantm para
trabalhos derivados. 92. Procure por uma cpia dessa apresentao
futuramente em http://www.slideshare.net.