Skip to main content

NetKAT: semantic foundations for networks

Author(s): Anderson, Carolyn J; Foster, Nate; Guha, Arjun; Jeannin, Jean-Baptiste; Kozen, Dexter; et al

Download
To refer to this page use: http://arks.princeton.edu/ark:/88435/pr18k0x
Full metadata record
DC FieldValueLanguage
dc.contributor.authorAnderson, Carolyn J-
dc.contributor.authorFoster, Nate-
dc.contributor.authorGuha, Arjun-
dc.contributor.authorJeannin, Jean-Baptiste-
dc.contributor.authorKozen, Dexter-
dc.contributor.authorSchlesinger, Cole-
dc.contributor.authorWalker, David-
dc.date.accessioned2021-10-08T19:47:52Z-
dc.date.available2021-10-08T19:47:52Z-
dc.date.issued2014-01en_US
dc.identifier.citationAnderson, Carolyn Jane, Nate Foster, Arjun Guha, Jean-Baptiste Jeannin, Dexter Kozen, Cole Schlesinger, and David Walker. "NetKAT: semantic foundations for networks." Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages 49, no. 1 (2014): 113-126. doi:10.1145/2535838.2535862en_US
dc.identifier.urihttps://www.cs.princeton.edu/~dpw/papers/netkat-tech-report.pdf-
dc.identifier.urihttp://arks.princeton.edu/ark:/88435/pr18k0x-
dc.description.abstractRecent years have seen growing interest in high-level languages for programming networks. But the design of these languages has been largely ad hoc, driven more by the needs of applications and the capabilities of network hardware than by foundational principles. The lack of a semantic foundation has left language designers with little guidance in determining how to incorporate new features, and programmers without a means to reason precisely about their code. This paper presents NetKAT, a new network programming language that is based on a solid mathematical foundation and comes equipped with a sound and complete equational theory. We describe the design of NetKAT, including primitives for filtering, modifying, and transmitting packets; union and sequential composition operators; and a Kleene star operator that iterates programs. We show that NetKAT is an instance of a canonical and well-studied mathematical structure called a Kleene algebra with tests (KAT) and prove that its equational theory is sound and complete with respect to its denotational semantics. Finally, we present practical applications of the equational theory including syntactic techniques for checking reachability, proving non-interference properties that ensure isolation between programs, and establishing the correctness of compilation algorithms.en_US
dc.format.extent113 - 126en_US
dc.language.isoen_USen_US
dc.relation.ispartofProceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languagesen_US
dc.rightsAuthor's manuscripten_US
dc.titleNetKAT: semantic foundations for networksen_US
dc.typeConference Articleen_US
dc.identifier.doi10.1145/2535838.2535862-
pu.type.symplectichttp://www.symplectic.co.uk/publications/atom-terms/1.0/conference-proceedingen_US

Files in This Item:
File Description SizeFormat 
NetKatSemanticFoundationNetworks.pdf882.81 kBAdobe PDFView/Download


Items in OAR@Princeton are protected by copyright, with all rights reserved, unless otherwise indicated.