DC.p4: Programming the forwarding plane of a data-center switch

Anirudh Sivaraman, Changhoon Kim, Ramkumar Krishnamoorthy, Advait Dixit, Mihai Budiu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The P4 programming language [29, 16] has been recently proposed as a high-level language to program the forwarding plane of programmable packet processors, spanning the spectrum from software switches through FPGAs, NPUs and reconfigurable hardware switches. This paper presents a case study that uses P4 to express the forwarding plane behavior of a data-center switch, comparable in functionality to single-chip shared-memory switches found in many data centers today. This case study allows us to understand how specific P4 constructs were useful in modeling specific data-center switch features. We also outline additional language constructs that needed to be added to P4 to support certain features of a data-center switch. We discuss several lessons that we learned in the process and distill these into a proposal for how P4 could evolve in the future.

Original languageEnglish (US)
Title of host publicationSymposium on Software Defined Networking (SDN) Research, SOSR 2015
PublisherAssociation for Computing Machinery, Inc
ISBN (Electronic)9781450334518
DOIs
StatePublished - Jun 17 2015
Event1st ACM SIGCOMM Symposium on Software Defined Networking Research, SOSR 2015 - Santa Clara, United States
Duration: Jun 17 2015Jun 18 2015

Publication series

NameSymposium on Software Defined Networking (SDN) Research, SOSR 2015

Other

Other1st ACM SIGCOMM Symposium on Software Defined Networking Research, SOSR 2015
Country/TerritoryUnited States
CitySanta Clara
Period6/17/156/18/15

Keywords

  • Datacenter switch
  • Language design
  • Programmable forwarding planes

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Software

Fingerprint

Dive into the research topics of 'DC.p4: Programming the forwarding plane of a data-center switch'. Together they form a unique fingerprint.

Cite this