Abstract

Modern network software is implemented across two tiers: the data plane, which contains packet-processing rules implemented efficiently on switching hardware, and the control plane, which implements fundamental algorithms, policies, and business rules that determine what the data plane should do. Thus, programming the network is akin to programming a two-tier, massively distributed system, where each node has heterogeneous processing capabilities. In addition, the persistent store on the controller represents a third tier. This splitting across tiers leads to both correctness and performance errors.In response, we have designed a language, Flowlog, for programming networks in a tierless way that unifies descriptions of control, data, and external state. Tierless programming not only simplifies programming but also makes it easier to express and reason about invariants that cross-cut tiers. In this talk I will discuss applications of Flowlog to both Software-Defined Networking and programming Internet of Things networks. I will also discuss a variety of analysis tasks.This talk describes joint work with Tim Nelson, Andrew Ferguson, Michael Scheer, and Rodrigo Fonseca.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.