CongestionControlLesson6 Flashcards

1
Q

What is congestion Control

A

Fill the pipes without overflowing them

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is congestion collapse

A

Increase in load -> decrease in useful work

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Cause of congestion collapse

A

Spurious re-transmission, Undelivered packets

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Solution to Congestion Collapse

A

Congestion Control

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Goals of congestion control

A

Use network efficiently, Preserve fair allocation of resource, Avoid congestion collapse

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Two Approaches to congestion control

A

end-to-end, Network Assited

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

End-to-End Congestion Control

A

No feedback from network, congesting inferred by loss and delay

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Network Assisted Congestion Control

A

Routers provide feedback, single bit, explicit rates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What kind of congestion control does TCP use

A

end-to-end

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

How does TCP handle congestion control

A

Send keeps increasing their rate until getting a packet drop. Decrease rate when this happends

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Why do packet drops occure

A

Packets are coming in at a rate that is faster than the rate that a router on the network can drain its buffer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a dropped packet?

A

The buffer on the router is full so no new incoming packets can be added.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the two parts of congestion control

A

Increase, Decrease

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Purpose of the Increase part of Congestion control

A

test the network to determine rate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Purpose of the decrease part of congestion control

A

Slow rate to avoid packet drops

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Two approaches to adjusting Rates

A

Window-Based, Rate-Based

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Window-based rate control

A

sender can only have n packets in flight. Send uses ACKs to clock rate

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

In window-based rate how does the sender increase the rate?

A

Increase the windows size

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

When can a new packet be sent when using Window-based

A

When an acknowledgement is received

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Another name for window-based rate limiting

A

AIMD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What should happen to the sending window size on successful round trip?

A

increase window size by one “additive increase”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What should happen to sending window size on roundtrip failure?

A

Decrease the window size by half “multiplicative decrease”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Rate-Based

A

Send monitors loss rate an uses a timer to adjust modulation

24
Q

What is fairness in congestion control

A

everyone gets a fair-share

25
Q

What is efficency in congestion control

A

network resources are used well

26
Q

Phase Plot

A

Taking two users x1 and x2 the line x1 + x2 = c where C is the capacity of the netowrk. Anything to the left of the line is under utilization anytning to the right is overload

27
Q

Key features of AIMD

A

Distributed, fair, efficent

28
Q

What is the variable Wm in the AIMD saw tooth

A

Saturation point

29
Q

What is Wm/2

A

multiplicative decrease from the saturation point

30
Q

What does 3/4 * Wm represent in the sawtooth

A

the rate of the TCP sender. The midpoint between Wm and Wm/2

31
Q

Throughput formula

A

lambda(x) = (k/RTT) * (sqrt(p))

32
Q

Loss Rate

A

Wm ~ (k * sqrt(p)) ^ -1

33
Q

What is high fan-in

A

High amount of connection from the leafs of the tree to the root. From the racks up to the switches

34
Q

What are some of the realities of data centers

A
  • High “fan-in” - High bandwidth, low latency

request in parallel with relatively small amount of data per request

35
Q

switch constraint in data center

A

relatively small buffer size

36
Q

TCP Incast happens

A

All servers make request. This overfills the switch buffers. Switches start burst retransmission which causes TCP timeouts. Senders will have to wait since RTT is significantly less than the timeout.

37
Q

One solution to incast problem

A

Uses fine grain TCP retransmission timers on the order of microseconds. Timers need to be close to or equivalent to the RTT

38
Q

Barrier Synchronization

A

A barrier for a group of threads or processes in the source code means any thread/process must stop at this point and cannot proceed until all other threads/processes reach this barrier.

39
Q

Challenges of Multimedia and streaming

A
  • large volumes, - Data volume varies overtime, - low volume for delay variation, - low volume for delay period
40
Q

Digitizing Audio and video

A

We sample the analog signal at a fixed interval and Quantize the amplitude

41
Q

Video Compression

A
  • Image Compression spatial redundancy - Compression across images -> temporal redundancy
42
Q

Explain use of anchor frames

A

Take a reference frame (anchor) and a derived frame (p) the derived frame is the anchor frame with motion vectors related to some blocks (the ones moving)

43
Q

How does the streaming client achieve seamless playback

A

The server will send back start times for each frame so the client will know when to play the data.

44
Q

What requirement from the server does the streaming client have

A

Frames must arrive quickly

45
Q

How does the streaming client handle variations in transmission times.

A

Client should have a playout buffer that is a few frames ahead of the one currently playing. The initial frame is delay while the buffer is initialized

46
Q

Which pathologies can streaming audio and video tolerate

A

Start Delay and Packet loss

47
Q

Is TCP a good fit for streaming? Why?

A

NO. Reliable delivery, slowing down upon loss, Protocol overhead

48
Q

Is UDP a good fit for streaming? Why?

A

YES. no retransmission, no sending rate adaptation

49
Q

Youtube flow

A

Request are routed to a CDN close to the receiver. Streaming is over TCP/HTTP to keep things simple.

50
Q

Skype flow

A

A to D (P2P) Voice traffic is routed through one another. Uses 67 bytes/pkt 140pps ~ 40kbps

51
Q

QoS Marking

A

For example if you had a outgoing voip and ftp traffic, we set the audio packets in with a higher priority then the ftp packets. Perhaps using a priority queue.

52
Q

Weighted fair queuing

A

The queue with the higher priority packets is processes more often

53
Q

Admission control

A

An application declares its needs in advance and the network will block traffic if the application cannot satisfy the needs (think of a busy signal)

54
Q

Commonly used QoS for streaming audio and Video

A

Marking Packets and Scheduling

55
Q

QoS

A

Quality of Service

56
Q

AIMD

A

Additive increase Multiplicative Decrease

57
Q

Buffer Bloat

A

Buffer bloat occurs when large packets cause high latency and jitter due to excess packet buffering