Perché alcune connessioni di rete dominano altre?


15

Ho i miei sospetti sul perché, ma voglio spiegarlo a qualcuno con un background più forte nel networking.

Perché quando si scaricano da più posizioni diverse, alcune connessioni saturano la larghezza di banda, lasciando altre connessioni quasi inattive fino al termine della connessione dominante?

Risposte:


26

Generalmente, la connessione più veloce vince. Tuttavia, prima che la rete di Windows 7 fosse un disastro e le prestazioni erano orribili dappertutto. Prova a ottenere più di 20 mb / s da XP buona fortuna con quello.

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

L'algoritmo TCP standard per evitare la congestione impiega uno schema di aumento additivo e diminuzione moltiplicativa (AIMD). Quando non viene rilevata alcuna perdita di pacchetti (mediante tre ACK duplicati o timeout di ritrasmissione), la finestra di congestione (cwnd) viene aumentata di una dimensione massima del segmento (MSS) ogni RTT. Altrimenti, se viene rilevata una perdita di pacchetti, il mittente TCP riduce della metà i cwnd. In una rete ad alta velocità e a lungo ritardo, richiede una finestra molto grande, ad esempio migliaia di pacchetti, per sfruttare appieno la capacità del collegamento. Pertanto, al TCP standard occorreranno molti RTT per recuperare la velocità di invio su un singolo evento di perdita. Inoltre, è ormai noto che la finestra di congestione TCP media è inversamente proporzionale alla radice quadrata del tasso di perdita di pacchetti.

Una connessione più veloce ha pacchetti più riusciti e quindi la sua cwnd / mss è aumentata e ottiene ancora di più della connessione totale.


Questo era in linea con quello che stavo pensando, anche se più tecnico.
Keltari,

23
20 millibit al secondo è piuttosto basso, anche per Windows XP. : P
Codici InCos

@codesinchaos dov'è un badge pedante quando ne hai bisogno ...
Ashley,

1
@CodesInChaos Penso che non ci sia davvero un'ambiguità, dal momento che non puoi dividere un po ', ma Mb / s probabilmente leggerebbe meglio ;-) Un problema più grande è quando le persone confondono "Megabit" con "Megabyte" ..
comfreak

-1

Un TCP aperto attivo testerà le condizioni della rete misurando le risposte dal server. Se i buffer dei router sono saturati da un'altra connessione e causano un ritardo elevato, il client ottimizzerà la finestra di invio di conseguenza. Se è in gioco un classico metodo di controllo della congestione, il client aumenterà continuamente la velocità di invio fino a quando non si verifica un calo. Quindi è possibile che un nuovo arrivato si faccia strada se il dispositivo che sta saturando il router inizia a subire gravi cadute mentre il nuovo arrivato non lo fa.

Esistono ora metodi di controllo della congestione sperimentali e più intelligenti che utilizzano il ritardo come metrica anziché utilizzare semplicemente le gocce per misurare le condizioni della rete. Tuttavia, questi nuovi metodi hanno la cattiva abitudine di essere vittima di bullismo con i metodi classici più tenaci che prendono più larghezza di banda possibile.

Anche con le connessioni UDP, se in massa, dominerà qualsiasi rete a causa della spruzzatura disattenta dei bit che fa. A seconda dell'applicazione, saturerà incautamente un buffer dei router senza tener conto delle condizioni della rete.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.