Rate Control Protocol (RCP): Congestion Control to Make Flows Complete Quickly

Nandita Dukkipati
Computer Systems Laboratory
Department of Electrical Engineering

Stanford University Ph.D. Oral Examination
Gates Building, Room 104
3:00 - 4:00 pm, Thursday, 5 October 2006
(Refreshments at 2:45 pm)


Users typically want their flows to complete as quickly as possible. This makes Flow Completion Time (FCT) an important - arguably the most important - performance metric for the user. Yet research on congestion control focuses entirely on maximizing link throughput, utilization and fairness, which matter more to the operator than the user. This talk is about a new congestion control algorithm - Rate Control Protocol (RCP) - designed for fast download times (i.e. aka user response times, or flow-completion times). Whereas other modifications/replacements to TCP (e.g. STCP, Fast TCP, XCP) are designed to work for specialized applications that use long-lived flows (scientific applications and supercomputer centers), RCP is designed for the typical flows of typical users in the Internet today.

I will show that with typical Internet flow sizes, existing (TCP Reno) and newly proposed (XCP) congestion control algorithms make flows last much longer than necessary - often by one or two orders of magnitude. In contrast, RCP makes flows finish close to the minimum possible, leading to a perceptible improvement for web users, distributed computing, and distributed file-systems. I will also talk about a few of the many addressed issues under RCP - stability of a RCP network, coping with sudden network changes such as flash-crowds (the main weakness under RCP), RCP's router buffer-size requirements, proportional bandwidth-sharing with RCP and implementation of RCP in routers and end-hosts.

Thesis Committee:

Nick McKeown , Balaji Prabhakar (Committee Chair), Scott Shenker, Mendel Rosenblum

Slides: PDF [3 MB]