Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming 2015
DOI: 10.1145/2784731.2784761
|View full text |Cite
|
Sign up to set email alerts
|

A fast compiler for NetKAT

Abstract: High-level programming languages play a key role in a growing number of networking platforms, streamlining application development and enabling precise formal reasoning about network behavior. Unfortunately, current compilers only handle "local" programs that specify behavior in terms of hop-by-hop forwarding behavior, or modest extensions such as simple paths. To encode richer "global" behaviors, programmers must add extra state-something that is tricky to get right and makes programs harder to write and main… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
42
0

Year Published

2016
2016
2023
2023

Publication Types

Select...
5
2
1

Relationship

3
5

Authors

Journals

citations
Cited by 48 publications
(42 citation statements)
references
References 27 publications
(33 reference statements)
0
42
0
Order By: Relevance
“…model checking to represent large state spaces compactly. A variant called Forwarding Decision Diagrams (FDDs) [45] was previously developed specifically for the networking domain, but only supported deterministic behavior. In this work, we extended FDDs to probabilistic FDDs.…”
Section: Native Backendmentioning
confidence: 99%
“…model checking to represent large state spaces compactly. A variant called Forwarding Decision Diagrams (FDDs) [45] was previously developed specifically for the networking domain, but only supported deterministic behavior. In this work, we extended FDDs to probabilistic FDDs.…”
Section: Native Backendmentioning
confidence: 99%
“…While loops are useful for implementing higher level abstractions such as network virtualization in NetKAT (Smolka et al 2015).…”
Section: Syntaxmentioning
confidence: 99%
“…The functionality described above is also provided by standard NetKAT [35]. The key distinguishing feature of our Stateful NetKAT is a special global vector-valued variable called state, which allows the programmer to represent a collection of NetKAT programs.…”
Section: Stateful Netkatmentioning
confidence: 99%
“…The function shown in Figure 5 gives the standard NetKAT program p k corresponding to each value k of the state vector (for conciseness, we only show the non-trivial cases). We can use the NetKAT compiler [35] to generate forwarding tables (i.e. configurations) corresponding to these, which we denote C( p k ).…”
Section: Stateful Netkatmentioning
confidence: 99%
See 1 more Smart Citation