CMU-CS-24-129 Computer Science Department School of Computer Science, Carnegie Mellon University
Cooperative Rate Control for the Internet
Christopher Canel, Zecheng He, Elliot Lockerman, May 2024
On the Internet, rate control objectives differ between sender and receiver. For example, senders often want their service to claim as much bandwidth as possible, while receivers must balance the performance of the many services they interact with. Disconnects like this lead to conflicting expectations about rate allocation granularity, algorithm, and optimization metric. This paper explores these challenges and proposes cooperative rate control, whereby the receiver jointly enforces rate control instead of relying on the sender alone, leading to a natural union of their individual objectives. As exemplars of this cooperative approach, we design two receiver-side policies: (1) ServicePolicy, which enforces per-service rate control rather than per-flow fair shares, and (2) FlowPolicy, which ameliorates undesirable interactions between congestion control algorithms. To enable these policies, we present a general receiver mechanism for monitoring arriving packets, inferring whether a flow is adhering to the receiver's policy, and leveraging TCP's built-in flow control to transparently signal the sender to back off. Our techniques do not modify the sender, network devices, or TCP header. We show in emulation and with Internet experiments that when endpoint policies differ, cooperative rate control improves compliance with the receiver's policy by 24%–221% with an acceptable penalty to overall utilization. 42 pages
| |
Return to:
SCS Technical Report Collection This page maintained by [email protected] |