Safe and Modular Control Plane-aware Programming of the Network Data Plane
Persone
Chuprikov P.
(Responsabile)
Abstract
Due to growing volumes of data processed in data centers there have been a push towards offloading services to the network. Network operation consists of: data plane (DP) processing packets and control plane (CP) making high-level decision. Existing programming frameworks targeting DP pay little attention to match-action tables (MATs), the core DP primitives configured by the CP. Such omission prevents safe implementation for a class of algorithms and limits modularity. The project overcomes these limitations by introducing novel DP abstractions for interacting with MATs. These abstractions will impose structural constraints on MATs ensuring safety while reducing resource demands through polymorphic uses of MATs and improving compositional properties through MAT isolation. The project comprises: (1) identifying constraints on MATs facilitating safe, efficient, and modular DP programming; (2) designing DP programming language and type system to guarantee whole-program safety; (3) implementing constraints enforcement at the CP; (4) evaluating efficiency gains, overheads, and expressiveness. The project will provide safer means to offload services to the network and reduce resource requirements, such as memory space for MAT and fewer matching units for MAT lookups. In the bigger picture, the project takes a much needed step in the direction of tighter integration between CP and DP.