Shao Liu, Milan Vojnović, and Dinan Gunawardena
The current Internet features traffic from diverse applications; ranging from delay-sensitive web browsing to delay-insensitive data file transfers. This motivates service differentiation, yet router-centric solutions, e.g. diffserv, have not been widely deployed. The current practice relies on a limited service differentiation at network edges (e.g. through traffic managing middle-boxes or by the end-hosts). End-hosts often implement such emulators of low priority service to differentiate low and normal priority traffic. A low priority service may fit well for some applications, e.g., software updates, but may not be adequate for bulk file transfers that aim at large throughputs. A scenario motivating home users is that of many simultaneous bulk transfers. This is a common feature of peer-to-peer file sharing applications. We develop a novel end-to-end congestion control that emulates a different service differentiation than the common low-normal priority. We call the new protocol 4CP (Competitive, Considerate Congestion Control). The target service differentiation enables provisioning of per-flow average bandwidth guarantees to "normal" traffic, but not at the expense of potentially starving the "low" priority traffic (4CP). It thus features incentive compatibility to file-transfer applications that are throughput-greedy but want to be considerate to other traffic. 4CP is implemented and configured as a sender-only adaptation of standard TCP, and requires no special network feedback. Configuration of the bandwidth guarantee is either, statically configured or automatically adjusted by 4CP. The automatic mode aims to be TCP-friendly over appropriately large timescale. We provide analytical results for configuration of the controller parameters. Further, we establish properties of equilibria rates for 4CP automatic and demonstrate feasibility of the design objective through extensive simulations and some Internet experiments.