Congestion Control
3 important questions on Congestion Control
What is TCP Congestion Control?
- originally there was no congestion control
- host could send packets when adv window allowed
- congestion results in dropped packets
- retransmission made for even more congestion
TCP congestion control:
- each source determines network capacity for itself
- based on implicit feedback
- use ACKs to pace transmission
- only assumes best effort network with FIFO routers
Challenge
- determining availability of router
- adjusting to changes in the available capacity
Solution: Additive Increase / Multiplicative Decrease (AIMD)
What is Fast Retransmit? And Fast Recovery?
Fast Retransmit: use duplicate ACKs to trigger retransmission sooner
- receiver always responds with an ACK
- if packet arrives out of order: receiver resends previous ACK
- sender retransmits missing packet after receiving three duplicate ACKs
Fast Recovery
- skip the Slow Start phase between Fast Retransmit and Additive Increase
- go directly to half the last sucessful CongestionWindow
- Slow Start is only used initially and after coarse-grained timeout
What is TCP Vegas?
ExpectedRate = CongWindow / BaseRTT
Diff = ExpectedRate - ActualRate
if Diff > alpha --> increase CongWindow
if Diff < beta --> increase CongWindow
TCP proposes delay comes from congestion. This doesnt hold for wireless networks where many things can act up to cause timeouts. Thats why TCP needs to be finetuned for different occasions
The question on the page originate from the summary of the following study material:
- A unique study and practice tool
- Never study anything twice again
- Get the grades you hope for
- 100% sure, 100% understanding