Postado originalmente por
rubem
Vai no uTorrent, em Preferências > Largura de banda, e veja quantas conexões simultâneas o software faz por default. São 200 por default.
Um gerenciador de download típico faz umas 10 conexões simultâneas por download, ele divide o download em 10 partes pra "acelerar ele". Mas p2p faz centenas de pequenas conexões. Alias, p2p não, ed2k zoneia menos a rede.
Torrent quebra o arquivo em partes de, digamos 16kB a 4MB, no uTorrent isso fica na aba INFO de cada arquivo. Aqui um:
Pra fazer um download de uma dessas partes de 16kB uma conexão de 3Mbps leva 0,04 segundos (Ou, faz 23 downloads dele por segundo, 16kB são 128kb, 3000kbps/128kb = ~23), se ele fizesse o pedido de um por um, em série, assim seria. Mas... ficar pedindo novos arquivos demora, como VOCÊ disse pro software (Quem deixa software no default é responsável pela configuração igual) que ele pode fazer até 200 conexões simultâneas, então ele prefere fazer isso, ao invés de 1 conexões por vez, que demora alguns instantes pra ser completada, ele vai fazendo centenas de conexões simultâneas com o MESMO usuário remoto ou com vários usuários.
Aqui um exemplo, um arquivo que já baixei completo, então não teria motivo nenhum pra fazer mais download dele. Mas o uTorrent exibe as vezes pequenos tráfegos do download:
E isso na verdade é requisição desse cliente chegando (Perguntando que partes do arquivo eu tenho, essas coisas), como é dado CHEGANDO ele exibe como download, na prática não há download de ARQUIVO NOVO, mas isso é uma conexão extra feita, é um pacote de uns 100 ou 200 bytes chegando, e talvez um de 800 ou 1000B saindo. CADA arquivo meu dá isso a cada 8 ou 10 segundos em média, se tiver 100 arquivos serão pelo menos 10 arquivos trocando dados com outros usuário SEM fazer download ou upload de conteúdo dos arquivos! Essa lista aí na verdade é feita com dados trocados com esses usuários, são 6 pares dados como ativos, pra ver se estão ativos o uTorrent PERGUNTA (Manda um pacote, recebe outro) a cada X segundos.
Fora que o software verifica no rastreador a cada 30 minutos se o arquivo ainda existe, essa verificação envia hash grande, ACHO que come uma duzia de pacotes.
Enfim, p2p gera duzias de pacotes mesmo, se o software está mal configurado (Isso é, no default, do jeito que o instalador colocou) até é comum essas 200 conexões simultâneas travarem uns modens vagabundos (Model ADSL de R$ 35), o modem roteando CADA pacote desse trabalha muito, são centenas de pacotes que ele recebe de um IP local, GUARDA na ram enquanto a resposta do IP público não chega, é a situação onde um pacote de 1450 bytes pesa tanto quando um pacote de 50 bytes.
Ah, o tamanho limite do pacote é o MTU, default em roteadores hoje é 1472 a 1500 bytes, pega como média uns 1480 bytes, e 200 conexões com pacotes de 1480 bytes em tese pesa muito, mas na prática em p2p você troca pacotes com pessoas com conexões domésticas, longe de você, é comum trocar pacotes com IP's a 300 ou 400ms de distância, e... 300ms é 1/3 de um segundo! Ou seja, se enviar e receber um pacote depois do outro esse par distante trocará pouco mais de 3 pacotes por segundo! Isso é 10x menos tráfego que alguém na sua cidade ou perto, com ping de digamos 30ms. Tamanho do pacote não pesa tanto quanto a distância dele, pacote distante o roteador de saída precisa ficar segurando por mais tempo (Todo pacote em ethernet ou internet é respondido com um checksum, você envia o pacote, o par responde um "recebido", e depois vem a resposta do pedido do pacote (Se o dado saiu de um p2p, é o outro p2p que responde), essa resposta também gera uma resposta ("Recebi"), você envia, guarda na ram, e só descarta depois que o par responder o "recebido". Depois de a conexão ser feita em definitivo isso vira uma conexão ativa, um redirecionamento dinâmico, e tudo que chega daquele IP externo vai pra aquele IP interno, mas ainda assim existe o checksum de cada pacote).