Bryce Cronkite-Ratcliff, Aran Bergman, Shay Vargaftik, Madhusudhan Ravi, Nick McKeown, Ittai Abraham and Isaac Keslassy,
"Virtualized Congestion Control,"
ACM SIGCOMM'16, Brazil, August 2016.
New congestion control algorithms are rapidly improving
datacenters by reducing latency, overcoming incast, increasing
throughput and improving fairness. Ideally, the operating
system in every server and virtual machine is updated
to support new congestion control algorithms. However,
legacy applications often cannot be upgraded to a new operating
system version, which means the advances are offlimits
to them. Worse, as we show, legacy applications can
be squeezed out, which in the worst case prevents the entire
network from adopting new algorithms.
Our goal is to make it easy to deploy new and improved congestion control algorithms into multitenant datacenters, without having to worry about TCP-friendliness with nonparticipating virtual machines. This paper presents a solution we call virtualized congestion control. The datacenter owner may introduce a new congestion control algorithm in the hypervisors. Internally, the hypervisors translate between the new congestion control algorithm and the old legacy congestion control, allowing legacy applications to enjoy the benefits of the new algorithm. We have implemented proof-of-concept systems for virtualized congestion control in the Linux kernel and in VMware's ESXi hypervisor, achieving improved fairness, performance, and control over guest bandwidth allocations.
Repository 1 of Aran Bergman with all the scripts.
Repository 2 of Bryce Cronkite-Ratcliff with the modified kernel.
Extended version of the paper with two extended results in the appendix: