Flightplan: Dataplane Disaggregation and Coordination for In-network Computing
Nik Sultana, University of Pennsylvania
1-2pm 2nd Jul 2019
Today’s datacenter networks are built from a diverse set of devices that range from fully programmable CPUs and FPGAs, to programmable, network-optimized NPUs, to high-throughput programmable dataplane ASICs. But currently these devices have different capabilities and are programmed disjointly as independent entities, and this complicates the implementation and composition of more sophisticated in-network services. As a solution, we introduce Flightplan, a framework that enables a cohesive approach to extend complex dataplane programs across heterogeneous hardware. Flightplan automatically splits a single program into a distributed system running on multiple interconnected dataplanes. It introduces a new, portable meta-programming construct to delimit dataplane subprograms and exploits automated code generation to simplify the writing and debugging of complex in-network services.
We implement a Flightplan prototype for P4 and illustrate it using a new suite of in-network functions that target diverse hardware. We show that Flightplan allows P4 programs to exploit heterogeneous programmable dataplanes to improve overall performance, while still retaining a simple and portable programming model.
Nik is a post-doc at the University of Pennsylvania where he works on programmable networking and program transformation. His research interests include design and implementation of programming languages, security, formal methods, and data networking. For his PhD at Cambridge University he developed a compiler-based approach to translating formal proofs between logics.