posted on 2019-02-01, 00:00authored byMuhammad Usama Chaudhry
Background applications (e.g., cloud-sync, software and firmware updates), which previously relied on wired or Wi-Fi networks, are starting to rely on cellular networks to transfer vast amounts of data. While wired and Wi-Fi networks do not enforce network objectives and rely solely on end-to-end congestion control to achieve their network objectives, cellular networks employ in-network schedulers that provide weighted fairness at short time granularity of few milliseconds (Transmission Time Intervals (TTIs)). Although in-network schedulers are more effective than end-to-end schemes in achieving fairness, the schedulers do not differentiate between time-sensitive foreground traffic and time insensitive background traffic. Therefore, the scheduler's policy conflicts with network management or performance objectives (e.g., favor foreground traffic over background traffic) and degrades the performance of both foreground and background applications. We propose TCP Chicago, which leverages cellular schedulers' strength of providing fairness at short-time granularity (TTIs) to achieve the desired high-level performance objectives. Unlike existing state-of-the-art schemes, which rely on round-trip times or one-way delays, we accurately estimate network load and capacity by observing packet inter-arrivals (i.e., the schedule). Our scheme schedules background traffic only using spare capacity without affecting foreground performance, thereby realizing the providers' objectives on a purely end-to-end fashion.