Congestion Control

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/27

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

28 Terms

1
New cards

What is congestion?

The packets coming into a router are faster than they leave

2
New cards

What are the two methods to deal with congestion?

avoidance and control

3
New cards

What is congestion avoidance?

pre allocate resources to avoid congestion

4
New cards

What is congestion control?

control congestion if and when it occurs

5
New cards

What are the properties we want from congestion control?

fairness and optimizing power, where power the ratio of throughput to delay

6
New cards

What happens if you increase a load too much?

packet losses increase and queueing delay increase

7
New cards

What is the idea of TCP congestion control?

each source determines network capacity by itself using implicit feedback

ACKs pace transmission (self-clocking sliding window)

8
New cards

How does self-clocking work?

sender sends packets, the packets get sent over a slow link that the receiver gets them from

receiver sends ACKs back at the same speed that they were sent, so we see how much time it took to send packets over the slow link

then the sender can send packets in at the same rate that the slow link sends them

9
New cards

If the window is W and the round-trip delay is RTT, what is the throughput of TCP assuming the bottleneck link is NOT the first link of the host?

W/RTT

10
New cards

What is the baseRTT?

RTT minus the queueing delay

11
New cards

Whats the capacity of the network? This is where no packets are in the queues.

bandwidth * baseRTT

12
New cards

What do we want our optimal window size to be?

the capacity of the network, ie bandwidth * baseRTT

13
New cards

Does TCP know the baseRTT?

no, network does not share the bandwidth

14
New cards

How does the source know if the network is congested?

a timeout or fast retransmit occurs

15
New cards

How does the source know if the network is NOT congested?

TCP just assumes this

16
New cards

What should the sender do based off congestion?

adjust to the available capacity

17
New cards

How can a sender adjust to available capacity of a network?

limit how much data is in transit using:

MaxWin = MIN(CongestionWindow, AdvertisedWindow)

18
New cards

How does MaxWindow relate to LastByte sent and Acked?

LastByteSent - LastByteAcked <= MaxWindow

19
New cards

When do we increase and decrease the CongestionWindow?

increase when congestion goes down

decrease when congestion goes up

20
New cards

How does the AIMD algorithm work?

increment CongestionWindow by one packet per RTT

when timeout occurs, divid CongestionWindow by two

21
New cards

How does AIMD work in practice?

increment the window for each ACK received

CongestionWindow = CongestionWindow + Increment

22
New cards

What is the increment in AIMD?

MSS * (MSS/CongestionWindow)

where MSS = maximum packet size

23
New cards

What happens if the initial congestion window value is too small?

waste bandwidth waiting for it to grow

24
New cards

What happens if the initial congestion window value is too big?

cause congestion immediately

25
New cards

What happens if the initial congestion window value is just right?

can still cause congestion by dumping all the bytes into the network at once

26
New cards

What should we do with congestion window size when we start?

we have a slow start to determine the available capacity by doubling it each RTT after receiving an ACK

27
New cards

What do we do to the congestion window when a timeout occurs?

enter congestion control mode

set slow start threshold, SSThresh = CongestionWindow/2

set CongestionWindow = 1

use slow start and let CW grow exponentially until = SSThresh

back to congestion avoidance w/ additive increase of CW

28
New cards

After a fast retransmission occurs, fast recovery can occur. What is fast recovery?

receiver misses a packet and sends duplicate ACKs

on receiving the third ACK, the sender retransmits that packet

halves the congestion window size

exits recovery when ACK for missing packet is received

enters slow start to gradually increase window size