14 Oct 2015

A Compiler and Run time System for Network Programming Languages

https://www.cs.princeton.edu/~dpw/papers/ncore-popl12.pdf

compilation algorithms for NetCore (expressing packet-processing policies … using ordinary functional programs, reactive specification) and couple them with a run-time system that issues rule installation commands and traffic-statistics queries to switches … together, the compiler and run-time system generate efficient rules whenever possible …

data plane that buffers, forwards, drops, tags, rate limits, and collects statistics about packets at high speed.

Open Networking foundation proposal
eliminate the control plane from network devices
contribution
NetCore semantics, high-level abstractions that obviate the need for programming low-level details of individual switches
compiling algorithms: classifier generation, reactive specification (synthesizing efficient TCAM wildcard rules) general-purpose algorithms for synthesizing low-level switch classifiers that use wildcard rules to the extent possible