ExoPlane: An Operating System for On-Rack Switch Resource Augmentation
summary
ExoPlane is an OS that augments a programmable switch with on-rack devices (smartNICs) and claims to let multiple stateful P4 apps share resources with low latency and high throughput. It implements a packet pinning model plus two-phase state updates and periodic sync for bounded inconsistency, compiles merged P4 programs, and uses a planner that solves an ILP with Gurobi. On a testbed with one switch and four smartNICs ExoPlane runs four apps when flows exceed ~100k, and outperforms app-pinning (app-pinning shows ~69–90% lower throughput) while avoiding transient drops when multiple externals are available.
AI-written summary · about
chapters (23)
- 0:00Intro
- 0:35Two trends in in-network computing
- 1:10Problem: Serving concurrent stateful apps on a switch
- 2:51Case for on-rack switch resource augmentation
- 4:10What should an "operating model" be?
- 4:39Strawman model 1: App pinning Pin an app to one device and process packets on that device
- 5:34Strawman model 2: Full disaggregation An app running on multi-devices and processing a packet on multi-devices
- 5:59Candidate model: Packet pinning An app running on multi-devices and processing a packet on a single device
- 6:21Our approach: Packet pinning + Union key-based flow management Union key: a union of key types of application objects
- 7:21Exoplane design overview
- 8:05Correctness under workload changes
- 8:51Problem: Incorrect state eviction
- 9:37Our solution: Two-phase state update
- 10:11Synchronizing data plane-updatable states Multiple copies of an object entry can be updated at different places
- 10:59Bounded inconsistency via periodic synchronization
- 12:08Meeting requirements across apps
- 12:36Finding optimal resource allocation using ILP
- 13:34Putting it all together
- 14:17Implementation and evaluation setup
- 14:54Does packet-pinning model work well?
- 15:46How does Exoplane work under dynamic workload?
- 16:53Limitations and future work
- 17:56Summary
related talks
12mFlightplan: Dataplane Disaggregation and Placement for P4 Programs
15mEnabling In-situ Programmability in Network Data Plane: From Architecture to Language
16mRuntime Programmable Switches
14mModular Switch Programming Under Resource Constraints
19mNet-P4ct: Enhanced WAN Bandwidth Fair Sharing Using P4 Programmable Switches
17mHiP4-UPF: Towards High-Performance Comprehensive 5G User Plane Function on P4...
24mOmniXtend cache coherence protocol for datacenter CPUs
17mMultitenant In-Network Acceleration with SwitchVM
