Proceedings of the 12th ACM SIGOPS Asia-Pacific Workshop on Systems | 2021

Offloading load balancers onto SmartNICs

 
 
 
 

Abstract


Load balancers are pervasively used inside today s clouds to distribute network requests across data center servers at scale. While load balancers were initially built using dedicated and custom hardware, most cloud providers now use software-based load balancers. This allows the implementations to be more agile and also enables on-demand provisioning of load balancing workload on generic servers, but it comes with increased provisioning and operating costs. We explore offloading load balancing onto programmable SmartNICs. To fully leverage the cost and energy efficiency of SmartNICs, our design proposes three key ideas. First, we argue that a full and complex TCP/IP stack is not required even for L7 load balancers and instead propose a design that uses a lightweight forwarding agent on the SmartNIC. Second, we develop connection management data structures that provide a high degree of concurrency with minimal synchronization when executed on multi-core SmartNICs. Finally, we describe how the load balancing logic could be accelerated using custom accelerators on SmartNICs. Our proof-of-concept implementations and preliminary results show that SmartNIC is a promising choice for navigating the underlying performance-cost tradeoffs.

Volume None
Pages None
DOI 10.1145/3476886.3477505
Language English
Journal Proceedings of the 12th ACM SIGOPS Asia-Pacific Workshop on Systems

Full Text