RingLeader: Efficiently Offloading Intra-Server Orchestration to NICs
summary
Claims that intra-server orchestration moves from a CPU bottleneck to the NIC by implementing a hardware load balancer and scheduler, a shallow per-core software priority queue, and a light-weight dataplane OS interface that cooperatively reassigns cores. Prototype is a 100 Gbps FPGA NIC with a DPDK-like userspace driver and ~800 lines of Rust OS glue. Introduces JBSRQ rank-based steering and a non-blocking NIC-host eligibility mask, and measures much higher throughput and lower tail latency than Shinjuku and Caladan (software-only orchestration limited to ~3–5M RPS).
AI-written summary · about
chapters (14)
- 0:00Intro
- 0:22Three requirements of online cloud services
- 1:25Intra-server orchestration is necessary
- 4:34Ringleader Overview
- 5:47Design questions of offloading scheduling and load balancing
- 6:23Division of labor between the host and NIC
- 7:59Coordination between the software scheduler and the NIC load balancer
- 10:44Architecture of the on-NIC load balancer and scheduler
- 12:04Non-blocking interface between the on-NIC load balancer and scheduler
- 12:51Implementation
- 13:16Evaluation
- 13:35Q1: How Ringleader's design decision contributes to its overall performance
- 14:51Q2: How does Ringleader compared to the CPU- based orchestration
- 15:22Conclusion
related talks
18mDisentangling the Dual Role of NIC Receive Rings
18mRoCE BALBOA: Service-Enhanced RDMA Offload Engine for Data Center SmartNICs
14mODRP: On-Demand Remote Paging with Programmable RDMA
13mLive in the Express Lane
18mKeepON: Supporting Deterministic Traffic on Standard NICs
16mTowards Optimal Rack-scale μs-level CPU Scheduling through In-Network Workload...
28mLoom: Flexible and Efficient NIC Packet Scheduling
12mPreview: Networking
