Por que algumas conexões de rede dominam outras?


15

Tenho minhas suspeitas sobre o porquê, mas quero que alguém com um background mais forte em redes explique.

Por que ao fazer o download de vários locais diferentes, certas conexões saturam a largura de banda, deixando outras conexões quase inativas até que a conexão dominante seja concluída?

Respostas:


26

Geralmente, a conexão mais rápida vence. No entanto, antes da rede do Windows 7 estar uma bagunça, o desempenho era péssimo. Tente obter mais de 20mb / s do XP, boa sorte com isso.

http://research.microsoft.com/pubs/70189/tr-2005-86.pdf

O algoritmo padrão para evitar congestionamento de TCP emprega um esquema de aumento aditivo e diminuição multiplicativa (AIMD). Quando não há perda de pacotes detectada (por meio de três ACKs duplicados ou tempo limite de retransmissão), a janela de congestionamento (cwnd) é aumentada em um Tamanho Máximo de Segmento (MSS) a cada RTT. Caso contrário, se uma perda de pacote for detectada, o remetente TCP diminui cwnd pela metade. Em uma rede de alta velocidade e longo atraso, é necessária uma janela muito grande, por exemplo, milhares de pacotes, para utilizar totalmente a capacidade do link. Portanto, o TCP padrão precisará de muitos RTTs para recuperar a taxa de envio em um único evento de perda. Além disso, é sabido agora que a janela média de congestionamento de TCP é inversamente proporcional à raiz quadrada da taxa de perda de pacotes.

Uma conexão mais rápida possui pacotes mais bem-sucedidos e, portanto, seu cwnd / mss é aumentado e obtém ainda mais da conexão total.


Isso estava de acordo com o que eu pensava, embora mais técnico.
22416 Keltari

23
20 milibits por segundo é bem baixo, mesmo para o Windows XP. : P
CodesInChaos

@codesinchaos onde está um crachá pedante quando você precisa de um ...
Ashley

1
@CodesInChaos Acho que não há realmente uma ambiguidade, já que você não pode dividir um pouco, mas Mb / s provavelmente seria melhor ;-) Um problema maior é quando as pessoas confundem "Megabit" com "Megabyte" ..
comfreak

-1

Um TCP aberto ativo testará as condições da rede medindo as respostas do servidor. Se os buffers dos roteadores estiverem saturados por outra conexão e causar um atraso alto, o cliente ajustará sua janela de envio de acordo. Se um método clássico de controle de congestionamento estiver em execução, o cliente aumentará continuamente sua taxa de envio até que ocorra uma queda. Portanto, é possível que um recém-chegado se intrometa se o dispositivo que está saturando o roteador começa a sofrer quedas graves, enquanto o recém-chegado não.

Agora existem métodos experimentais e mais inteligentes de controle de congestionamento que usam o atraso como métrica, em vez de simplesmente usar quedas para medir as condições da rede. No entanto, esses novos métodos têm o mau hábito de serem intimidados pelos métodos clássicos mais tenazes que levam a maior largura de banda possível.

Também com conexões UDP, em massa, dominará qualquer rede devido à pulverização descuidada de bits que faz. Dependendo do aplicativo, ele saturará imprudentemente os buffers dos roteadores, sem levar em consideração as condições da rede.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.