Qual é a diferença entre os rastreadores de torrent UDP e HTTP?

3

No contexto do bittorrent, qual é a diferença entre os rastreadores http e udp? O HTTP é um protocolo da camada de aplicação e o UDP é um protocolo da camada de transporte para que os conceitos pareçam não se sobrepor. Eu encontrei este artigo mas ele não diz por que o UDP é mais rápido que o HTTP, isso não faz sentido porque o HTTP pode acontecer sobre o UDP.

    
por Celeritas 21.11.2014 / 09:15

1 resposta

1

Anúncio do UDP - até onde eu sei - requer um único pacote para cima e um para baixo. Nenhuma conexão persistente é negociada ou estabelecida. O servidor não precisa se lembrar de qual ip: porta o anúncio veio, apenas para o breve momento em que decide o que responder.

O anúncio HTTP, no entanto, funciona em uma conexão TCP. Isso significa que a conexão precisa ser negociada, usada e depois demolida. Todas essas etapas exigem mais de dois pacotes:   - Negociação: um SYN para cima, um SYN-ACK para baixo e um ACK para cima.   - uso. Se tivermos sorte, a solicitação HTTP se encaixa em um único pacote upstream. O servidor, em seguida, responde com um pacote ACK, em seguida, envia sua resposta em um pacote separado. O cliente também responde com um pacote ACK. Naturalmente, como não é o cliente que dita como o fluxo TCP é dividido em pacotes, mas no sistema operacional, tanto a solicitação quanto a resposta podem ser fragmentadas em vários pacotes, cada um exigindo um ACK em resposta. Além disso, outras complicações, como saturações de MTU, podem forçar o servidor e o cliente a reenviar esses pacotes fragmentados em tamanhos menores.   - Derrubar a conexão também leva três pacotes: FIN, FIN-ACK e ACK.

Assim, os anúncios HTTP exigem 10 pacotes no mínimo, mas potencialmente mais do que isso, além de alguns aguardarem se a rede decidir descartar um pacote. Durante todo esse tempo, o servidor (e o cliente também, mas isso não importa realmente para o cliente, não é o único que tem que lidar com mais de mil anúncios por segundo) tem que manter os detalhes da conexão na RAM . Para a quantidade de anúncios que um único cliente faz, a diferença é insignificante (até mesmo a navegação leve gera mais tráfego), mas no lado do servidor, soma-se a quantias em que uma diminuição de 5 vezes significa muito.

    
por 22.11.2014 / 10:00