ALCC: Migrating Congestion Control to the Application Layer in Cellular Networks
TCP is known to perform poorly in cellular network environments. Yet, most mobile applications are explicitly built on the conventional TCP stack or implicitly leverage TCP tunnels to various cellular middleboxes, including performance-enhancing proxies, application-specific edge proxies, VPN proxies and NAT boxes. Despite significant advances in the design of new congestion control (CC) protocols for cellular networks, deploying these protocols without bypassing the underlying TCP tunnels has remained a challenging proposition. This paper proposes the design of a new \emph{Application Layer Congestion Control (ALCC)} framework that allows any new CC protocol to be implemented easily at the application layer, within or above an application-layer protocol that sits atop a legacy TCP stack. It drives it to deliver approximately the same as the native performance. The ALCC socket sits on top of a traditional TCP socket. Still, it can leverage the large congestion windows opened by TCP connections to carefully execute an application-level CC within the window bounds of the underlying TCP connection. This paper demonstrates how ALCC can be applied to three well-known cellular CC protocols: Verus, Copa, and Sprout. For these protocols, ALCC can achieve comparable throughput and delay characteristics (within 3-10\%) as the native protocols at the application layer across different networks and traffic conditions. ALCC allows a server-side implementation of these protocols with no client modifications and with zero bytes overhead. The ALCC framework can be easily integrated with off-the-shelf applications such as file transfers and video streaming.
Code (0)
등록된 구현이 없습니다.
Similar Papers 제목 키워드 기반
MACC: Cross-Layer Multi-Agent Congestion Control with Deep Reinforcement Learning
Congestion Control (CC), as the core networking task to efficiently utilize network capacity, received great attention and widely used in various Internet communication applications such as 5G, Internet-of-Things, UAN, a…
Deep Reinforcement LearningManagementMulti-agent Reinforcement Learningreinforcement-learning+2Analog Lagrange Coded Computing
A distributed computing scenario is considered, where the computational power of a set of worker nodes is used to perform a certain computation task over a dataset that is dispersed among the workers. Lagrange coded comp…
Distributed ComputingIntelligent Active Queue Management Using Explicit Congestion Notification
As more end devices are getting connected, the Internet will become more congested. Various congestion control techniques have been developed either on transport or network layers. Active Queue Management (AQM) is a para…
ManagementReinforcement LearningAQUILA: A QUIC-Based Link Architecture for Resilient Long-Range UAV Communication
The proliferation of autonomous Unmanned Aerial Vehicles (UAVs) in Beyond Visual Line of Sight (BVLOS) applications is critically dependent on resilient, high-bandwidth, and low-latency communication links. Existing solu…
Robust Change Captioning in Remote Sensing: SECOND-CC Dataset and MModalCC Framework
Remote sensing change captioning (RSICC) aims to describe changes between bitemporal images in natural language. Existing methods often fail under challenges like illumination differences, viewpoint changes, blur effects…
Semantic Segmentation