Cloud computing has fundamentally transformed the landscape of computing by leveraging the widespread accessibility of network connectivity. In this space, serverless computing platforms have emerged as key facilitators, promising cost-effective cloud computing capabilities for users. However, existing serverless platforms face several challenges, particularly in the data plane they use for communication between serverless functions. These data plane mechanisms conflict with the event-driven philosophy of serverless computing. They do not help meet the desired low-latency requirements crucial for a variety of services using the cloud. For example, 5G cellular networks are transitioning to a cloud-native design, adopting a Service-based Architecture, to simplify the development and deployment of 5G systems in the cloud. However, this comes with trade-offs, as it may limit performance and hinder the execution of low-latency operations in 5G cellular core network (5GC).
Our first contribution focuses on assessing the overhead of container network interface, the essential networking component in the serverless data plane. Our investigation revealed that current serverless platforms treat inter-function networking as though each function were isolated by a network link in the kernel, a methodology fraught with overhead. We recognize the imperative of facilitating seamless communication within nodes via shared memory processing and design SPRIGHT. SPRIGHT is the first serverless framework that leverages the extended Berkeley Packet Filter (eBPF), an in-kernel event-driven networking subsystem, to supplant long-running stateful components typically used in current serverless platforms. We also optimize the placement engine in the serverless control plane to account for heterogeneity and fairness across competing functions, ensuring overall resource efficiency, and minimizing resource fragmentation.
We then show how an improved serverless design (called LIFL) can be suitable to support fast and efficient model aggregation in Federated Learning (FL), which typically involves varying numbers of heterogeneous clients locally training machine learning models. LIFL adopts the streamlined data plane from SPRIGHT. We further introduce locality-aware placement in LIFL to maximize the benefits of shared memory processing. LIFL precisely scales and carefully reuses server resources for hierarchical aggregation to achieve the highest degree of parallelism while minimizing aggregation time and resource consumption. Our open-source implementation of LIFL achieves significant improvement in resource efficiency and aggregation speed for supporting FL at scale, compared to existing serverful as well as serverless FL systems.
Our last contribution introduces L25GC+, a 3GPP-compliant 5G Core designed to support low-latency control plane operations and high-performance user plane packet transmissions. In the control plane, L25GC+ leverages the 3GPP-specified Service-Based Interface (SBI) for exchanging control events between 5G functions. L25GC+ addresses this by redesigning the SBI using shared memory processing instead of kernel networking. We augment asynchronous shared memory I/O with synchronous data exchange primitives and stateful processing to differentiate across user sessions. The optimized design seamlessly integrates with the 3GPP-compliant SBI, demonstrating improved latency, scalability, and user experience on commercial 5G testbeds. In the 5GC data plane, packet classification becomes expensive with a growing number of user sessions. We devise faster packet classification approaches in the 5GC data plane, ensuring high data plane performance, even with an increasing number of user sessions.