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