Bryce Cronkite-Ratcliff, Aran Bergman, Shay Vargaftik

Transcription

Bryce Cronkite-Ratcliff, Aran Bergman, Shay Vargaftik
Virtualized
Congestion Control
Bryce Cronkite-Ratcliff, Aran Bergman, Shay Vargaftik,
Madhusudhan Ravi, Nick McKeown, Ittai Abraham, Isaac Keslassy
11
2
Multitenant Datacenters
Tenants choose Congestion Control
Enterprise Datacenters
Can’t upgrade legacy applications
3
adapted from Judd, NSDI ‘15
10
CUBIC
DCTCP
Throughput (Gbps)
8
6
4
2
0
0
5
10
4 (seconds)
Time
15
20
Multitenant &
Enterprise Datacenters
New Congestion
Control Algorithms
pFabric
Timely
DCTCP
X
Illinois
Tahoe
Cubic
NewReno
Reno
CANIT
TFRC
Agile-SD
Zeta
Westwood+
Vegas
General
TCP
Translation
System
MP-TCP
Scalable
Hybla
FAST
Indy
BIC
YeAH
Jersey
FIT
Veno
XCP
Compound
H-TCP
LP
pFabric
HSTCP 6
Real
Timely
DCTCP
7
VM
VM
Hypervisor
VM
Updatable &
Easy to reconfigure
Datacenter Network
8
VM
Hypervisor
VM
VM
VM
Hypervisor
VM
Hypervisor
Datacenter Network
9
VM
VM
VM
VM
Overlay CC
Hypervisor
Hypervisor
Underlay CC
Datacenter Network
10
VM
VM
VM
Hypervisor
VM
Hypervisor
Datacenter Network
11
Guest Introspection
VM
Guest
VM
Memory
VM
Hypervisor
12
TCP Header Modification
SYN
VM
SACK:
0
VM
Hypervisor
SYN
SACK:
1
13
vSwitch
Buffering
VM
VM
Hypervisor
SYN
SACK:
0
vSwitch
Buffer
14
Fake ACKs
SEQ:
VM
41
42
VM
Hypervisor
vSwitch
ACK
SEQ:
41
15
TCP Proxy
VM
VM
Hypervisor
vSwitch
TCP Proxy
ACK
SYN
16
vCC Flow Modification Techniques
• Guest Introspection
• Buffering
• TCP Header Modification
• Fake ACK generation
• TCP Proxy
17
18
legacy
upgraded
upgraded
upgraded
19
20
21
120
Goodput (Mbps)
100
ECN
non-ECN
80
60
40
20
0
0
10
20
Seconds
22
30
Dropped
3
NonECN
ECN
2
Queued
1
Marked
CE
RED MIN
NonECN
23
All
Packets
Dropped
ECN
Marked
&
nonECN
Dropped
All
Packets
Queued
24
Sender
Bottleneck Link
ECN
ECN
ECN
ECN
ECN
translated
to ECN
non-ECN
Receiver
25
vCC
Virtualized Congestion Control
26
VM
VM
VM
Hypervisor
VM
Hypervisor
Datacenter Network
27
VM
SSTHRESH: 4
CWND: 2
SND_WND: 2
SYN
SSTHRESH: Slow Start Threshold
CWND:
Congestion Window
SND_WND: Send Window
Hypervisor
SYN
ECE
CWR
SSTHRESH: 4
CWND: 2
SND_WND: 2
28
VM
SSTHRESH: 4
CWND: 2
SND_WND: 2
Hypervisor
SSTHRESH: 4
CWND: 2
SND_WND: 2
ECT
29
VM
SSTHRESH: 4
CWND: 3
2
SND_WND: 3
2
Hypervisor
SSTHRESH: 4
CWND: 3
2
SND_WND: 3
2
30
VM
SSTHRESH: 10
CWND: 30
SND_WND: 15
30
Hypervisor
SSTHRESH: 10
CWND: 15
30
SND_WND: 15
30
RWIN: 15
31
VM
SSTHRESH: 10
CWND: 30
SND_WND: 15
Hypervisor
SSTHRESH: 10
CWND: 15
SND_WND: 15
CWR
32
VM
SSTHRESH: 10
CWND: 31
30
SND_WND: 16
15
Hypervisor
SSTHRESH: 10
CWND: 16
15
SND_WND: 16
15
RWIN: 16
33
Goodput (Mbps)
1.4
1.0
0.6
0.2
0
0
10
20
Seconds
34
30
vCC
100
100
Send Window (KB)
Congestion Window (KB)
Native
80
60
40
20
0
2
4
6
8
Seconds
10
80
60
40
20
0
12
35
2
4
6
8
Seconds
10
12
36
37
VM
App2
VM
App1
App1
Hypervisor
App2
Hypervisor
Datacenter Network
38
VM
App1
App2
Hypervisor
App1
vCC
Module
App2
vCC
Module
39
Throughput (% link capacity)
100
80
Unpreferred
Preferred
60
Unpreferred
40
Preferred
20
Unpreferred
0
0
10
20
Time (seconds)
40
30
Illinois
Tahoe
Cubic
NewReno
Reno
CANIT
TFRC
Agile-SD
Zeta
Westwood+
Vegas
General
TCP
Translation
System
MP-TCP
Scalable
Hybla
FAST
Indy
BIC
YeAH
Jersey
FIT
Veno
XCP
Compound
H-TCP
LP
pFabric
HSTCP41
Real
Timely
DCTCP
42
ECN Experiments in this Presentation:
Linux 3.19 mininet testbed
vCC implemented as a kernel patch
Public vCC Code:
Linux patch and mininet test suite available on Github
Public Code and Extended Paper:
http://webee.technion.ac.il/~isaac/vcc/
Our Paper:
ECN unfairness, virtual-ECN vCC, ESX app-level
throttling vCC, technique survey, future
implementation analysis
43
Thank You!
44
vCC
Virtualized Congestion Control
Translate between Congestion Control Algorithms
in the Hypervisor
in order to
• Achieve uniform congestion control in
multitenant and enterprise datacenters
• Programatically assign congestion control to
fine-grained flow signatures
• Simplify rollout of new congestion control
algorithms
45

Similar documents