Thursday, August 16, 2018 - 10:00am to 11:00am
Location:ASA Conference Room 6115 Gates Hillman Centers
Speaker:AKSHAY NARAYAN, Ph.D. Student https://akshayn.xyz/
Restructuring Endpoint Congestion Control
We describe the implementation and evaluation of a Congestion Control Plane (CCP), a new way to structure congestion control functions at the sender by removing them from the datapath. With CCP, each datapath such as the Linux Kernel TCP, UDP-based QUIC, or kernel-bypass transports like mTCP/DPDK summarizes information about the round-trip time, packet receptions, losses, ECN, etc. via a well-defined interface, and algorithms running atop CCP can use this information to control the datapath’s congestion window or pacing rate. We show that CCP enables, for the first time, congestion control algorithms to be written once and run on multiple datapaths. It also improves both the pace of development and ease of maintenance of congestion control algorithms by providing better, modular abstractions, and enables new capabilities such as aggregate congestion control across groups of connections, all with one-time changes to datapaths. Experiments with our user-level Linux CCP implementation show that CCP algorithms behave similarly to kernel algorithms, and incur modest CPU overhead of a few percent. They also demonstrate new capabilities enabled by CCP, such as Copa in Linux TCP, several algorithms run for the first time on QUIC and mTCP/DPDK, a congestion manager from outside the datapath, and sophisticated congestion control using signal processing running on Linux TCP.
Akshay Narayan is a second-year PhD student at MIT advised by Hari Balakrishnan and Mohammad Alizadeh. His research interests are in computer networking, especially congestion control, datacenter architecture, (co)flow scheduling, and high-performance end-host stacks. He completed his BS from UC Berkeley with High Honors in 2015 and has received the NSF Graduate Research Fellowship and Jacobs Presidential Fellowship.
Faculty Host: Justine Sherry