Fortsetter TCP Cwnd å øke hvis overføringen er begrenset av Rwnd?
On februar 13, 2021 by adminJeg prøver å forstå hva som skjer med TCP Congestion Window (Cwnd) hvis overføringshastigheten er begrenset av mottaksvinduet (Rwnd). Jeg vet at overføringshastigheten er minimum Rwnd og Cwnd. Jeg vet også at Cwnd øker for hver mottatt ACK. Anta at mottaksbufferen er veldig liten, så Rwnd forblir alltid veldig lav, men alle pakkene blir mottatt og ACKed. Betyr dette at Cwnd bare fortsetter å øke for alltid? Er det noen grenser for det?
Kommentarer
- Hjalp noe svar deg? Hvis ja, bør du godta svar slik at spørsmålet ikke ' ikke dukker opp for alltid og leter etter et svar. Alternativt kan du legge ut og godta ditt eget svar.
Svar
Det avhenger av hvilken mekanisme du bruker, og ja Cwnd fortsetter å øke til ditt første pakkedråpe skjer, du kan lese mer om treg start og annen mekanisme i lenkene b elow.
Grunnleggende treg start [rediger] Algoritmen begynner i den eksponensielle vekstfasen, innledningsvis med en Congestion Window Size (CWND) på 1, 2 eller 10 [2] segmenter og øker den med en Segment Size (SS) for hver ny ACK mottatt. Hvis mottakeren sender en ACK for hvert segment, dobler denne oppførselen vindusstørrelsen effektivt hver rundtur i nettverket. Hvis mottakeren støtter forsinkede ACK-er, er økningshastigheten lavere, men øker fortsatt med minst en MSS hver rundturstid. Denne oppførselen fortsetter til overbelastningsvinduets størrelse (CWND) når størrelsen på mottakerens annonserte vindu eller til et tap oppstår.
Kommentarer
- Hei, takk for svaret. Det vil hjelpe hvis du kan legge til sitater fra sidene du linket til for å støtte svaret.
- Ja, jeg leste det, men jeg tror ikke ' det ' er veldig klart. " Denne oppførselen " betyr antagelig en fordobling av Cwnd. OK, så forutsatt at det ikke oppstår noe tap, hva skjer når Cwnd når Rwnd? Det ' t eksplisitt si. I løpet av overbelastningsfasen øker fortsatt Cwnd med 1 for hver RTT, uavhengig av Rwnd?
- Nei hvis det ikke er noe tap, øker CWND til den når RWND, så CWND øker med 1 for hver RTT til den når grensen som er RWND.
- Hele ideen med en CWND er hvordan man skal nå maksimal overføringsgrense uten å skape overbelastning, så forskjellig algoritme oppfører seg annerledes, men det gjelder for dem alle hvis det ikke er noen overbelastning, økes vinduene til grensen som er annonsert av mottakeren. Tenk på det på denne måten, hva er poenget med å sende flere pakker hvis den tiltenkte mottakeren ikke kan håndtere dem og må slippe dem.
Legg igjen en kommentar