Costin Raiciu Advanced Topics in Distributed Systems 2011 TCP Primer Loss recovery Fast retransmit Timeouts Congestion Control Buffer sizing TCP Incast Why does it happen How bad is it ID: 478633
Download Presentation The PPT/PDF document "Fixing TCP in Datacenters" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Fixing TCP in Datacenters
Costin Raiciu
Advanced Topics in Distributed Systems
2011Slide2
TCP Primer
Loss recovery
Fast retransmit
Timeouts
Congestion Control
Buffer sizingSlide3
TCP Incast
Why does it happen?
How bad is it?Slide4
TCP
Incast
Kills Throughput
Lab Setup,
Artifical
SynchronizationSlide5
A datacenter exampleSlide6
How can we fix it?
Application level
Add jitter
Reduce response size
Use aggregationSlide7
Jitter increases mean delaySlide8
Fixing Incast
at the Transport Layer
Quickly recover after timeouts
Or just avoid the timeoutsSlide9
Quickly recover the timeouts
Remove
RTO
min
bound
Millisecond or lower time
resolution
A whole paper about this in
Sigcomm
2009
But is this enough?Slide10
Fixing Incast
at Lower Layers
Add more buffering to switches?
Expensive
Add shared buffering?Slide11
Datacenter TrafficSlide12
Datacenter Traffic (2)Slide13
DCTCP
Want to be robust to
incast
Want to avoid interference between short and long flows
Want to avoid buffer pressure
We can do all this
with
small buffer usageSlide14
How might we do that?
TCP shouldn’t blow out the buffer
Use delay?Slide15
How might we do that?
TCP shouldn’t blow out the buffer
Use delay?
Explicit Congestion Notification in switches
Switches tell you when to back offSlide16
How might we do that?
TCP shouldn’t blow out the buffer
Use delay?
Explicit Congestion Notification in switches
Switches tell you when to back off
But TCP will underutilize the network if CWND<2*BDP Slide17
DCTCP
Find out alpha fraction of packets that saw congestion
Set
cwnd
=
cwnd
* (1-alpha/2)
Alpha is estimated using ECN signals
EWMASlide18
DCTCP Convergence
Consider what happens when a new connections starts
How long does it take to reach equilibrium?
With TCP?
With DCTCP?Slide19
Conclusions
TCP is heavily used in
DCs
But sometimes its not ideal
Simple changes can fix its shortcomings
The same problem (
incast
) can be fixed at many layersSlide20
Your Presentations
Read your article very carefully, several times
Tried to understand the “gist” of it
What differentiates it from previous work
What is good about it
What is less good
Did they achieve their goals?
How would you design a solution to their problem?Slide21
Your Slides
Aim for 40-50 slides at most
Include as many animations as you can
Rehearse presentation at home a few times
Do not overcrowd your slides
2
-4 bullets per slide are ideal
Anything more is difficult to readSlide22
Do
NOT
Add outline slides very often (or at all)
Add a blank “Thank you” or “Questions” last slide
A
lways finish your talk on a slide with content
Read from slides
Stare at the screen
Put everything you have to say on the slide