IEEE Access (Jan 2024)
Exploiting SRv6 for Stateless and Per-Connection-Consistent Load Balancing
Abstract
This paper proposes a new load-balancing method that supports Per-Connection Consistency (PCC) by leveraging ECMP with standardized routing protocols for operational simplicity. Load balancers must consistently deliver packets of a flow to one of the backend servers, even when the backend server pool changes. Achieving this property—PCC—is not a straightforward task and usually introduces additional complexity into networks, such as special packet forwarding mechanisms, synchronizing states across load balancers, and often complicated orchestration. Our approach, VRF-shadowing, achieves PCC on ECMP of routers without additional control plane systems by exploiting Segment Routing over IPv6 (SRv6). VRF-shadowing employs the daisy-chaining concept, achieving PCC in a stateless manner with a standardized SRv6-based Layer-3 VPN (L3VPN). VRF-shadowing is composed of two components: a minimal new feature for software of SRv6 routers and a new SRv6 End behavior at servers. We implemented the former in a commercial router and the latter in Linux and evaluated VRF-shadowing on an SRv6 L3VPN network built with only standardized routing protocols. The evaluation results demonstrate that VRF-shadowing preserves connections from being disrupted when the ECMP next-hops change. In the most severe scenario, VRF-shadowing reduced the failed HTTP requests rate from 77% to 0.7% compared to traditional ECMP.
Keywords