State-Compute Replication: Parallelizing High-Speed Stateful Packet Processing
summary
Introduces state-compute replication that replicates only the state-update code and attaches compact per-packet histories so each core fast-forwards private state without locks, implemented as a packet history sequencer on programmable NIC/switch hardware. Prototype uses XDP applications and hardware described as Tophino and net fpj, stores histories in an on‑chip ring buffer, and shows near-linear throughput scaling with cores across three real traces and even a single large flow. Limits appear when state compute dominates CPU or when bandwidth caps are hit (token bucket stalls ~11 cores).
AI-written summary · about
chapters (11)
- 0:00State-compute replication intro
- 1:52Scaling stateful packet processing
- 3:39Sharing and sharding approaches
- 5:27SCR overview
- 7:13Packet processing time breakdown
- 8:17SCR with programmable NICs
- 10:03Sequencer hardware design
- 11:27SCR performance evaluation
- 13:17SCR limitations and bottlenecks
- 14:41Loss recovery in SCR
- 15:25Conclusion and benchmarks
related talks
16mWaverunner: An Elegant Approach to Hardware Acceleration of State Machine Replication
16mA High-Speed Stateful Packet Processing Approach for Tbps Programmable Switches
19mDisaggregating Stateful Network Functions
14mEmpower Programmable Pipeline for Advanced Stateful Packet Processing
17mSwiSh: Distributed Shared State Abstractions for Programmable Switches
21mAccelTCP: Accelerating Network Applications with Stateful TCP Offloading
39mTrust Deterministic Execution to Scale & Simplify Your Systems
31mFlow-based Packet Processing Framework on DPDK and VPP
