Composing software-defined networks

Christopher Monsanto, Joshua Reich, Nate Foster, Jennifer Rexford, David Walker

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

241 Scopus citations

Abstract

Managing a network requires support for multiple concurrent tasks, from routing and traffic monitoring, to access control and server load balancing. Software-Defined Networking (SDN) allows applications to realize these tasks directly, by installing packet-processing rules on switches. However, today's SDN platforms provide limited support for creating modular applications. This paper introduces new abstractions for building applications out of multiple, independent modules that jointly manage network traffic. First, we define composition operators and a library of policies for forwarding and querying traffic. Our parallel composition operator allows multiple policies to operate on the same set of packets, while a novel sequential composition operator allows one policy to process packets after another. Second, we enable each policy to operate on an abstract topology that implicitly constrains what the module can see and do. Finally, we define a new abstract packet model that allows programmers to extend packets with virtual fields that may be used to associate packets with high-level meta-data. We realize these abstractions in Pyretic, an imperative, domain-specific language embedded in Python.

Original languageEnglish (US)
Title of host publicationProceedings of the 10th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2013
PublisherUSENIX Association
Pages1-13
Number of pages13
ISBN (Electronic)9781931971003
StatePublished - Jan 1 2019
Event10th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2013 - Lombard, United States
Duration: Apr 2 2013Apr 5 2013

Publication series

NameProceedings of the 10th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2013

Conference

Conference10th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2013
Country/TerritoryUnited States
CityLombard
Period4/2/134/5/13

All Science Journal Classification (ASJC) codes

  • Computer Networks and Communications
  • Control and Systems Engineering

Fingerprint

Dive into the research topics of 'Composing software-defined networks'. Together they form a unique fingerprint.

Cite this