Abstract
Programmable data planes allow for sophisticated applications that give operators the power to customize the functionality of their networks. Deploying these applications, however, often requires tedious and burdensome optimization of their layout and design, in which programmers must manually write, compile, and test an implementation, adjust the design, and repeat. In this paper we present Parasol, a framework that allows programmers to define general, parameterized network algorithms and automatically optimize their various parameters. The parameters of a Parasolprogram can represent a wide variety of implementation decisions, and may be optimized for arbitrary, high-level objectives defined by the programmer. Furthermore, optimization may be tailored to particular environments by providing a representative sample of traffic. We show how we implement the Parasolframework, which consists of a sketching language for writing parameterized programs, and a simulation-based optimizer for testing different parameter settings. We evaluate Parasolby implementing a suite of ten data-plane applications, and find that Parasolproduces a solution with comparable performance to hand-optimized P4 code within a two-hour time budget.
Original language | English |
---|---|
Journal | IEEE/ACM Transactions on Networking |
DOIs | |
State | Accepted/In press - 2024 |
Keywords
- P4
- Software defined networking
- data structures
- hardware
- programmable data plane
All Science Journal Classification (ASJC) codes
- Software
- Computer Science Applications
- Computer Networks and Communications
- Electrical and Electronic Engineering