Foundations of Databases: The Logical Level
Foundations of Databases: The Logical Level
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
Spin model checker, the: primer and reference manual
Spin model checker, the: primer and reference manual
Reactors: A data-oriented synchronous/asynchronous programming model for distributed applications
Theoretical Computer Science
Practical declarative network management
Proceedings of the 1st ACM workshop on Research on enterprise networking
Communications of the ACM - Scratch Programming for All
FlowChecker: configuration analysis and verification of federated openflow infrastructures
Proceedings of the 3rd ACM workshop on Assurable and usable security configuration
The margrave tool for firewall analysis
LISA'10 Proceedings of the 24th international conference on Large installation system administration
Debugging the data plane with anteater
Proceedings of the ACM SIGCOMM 2011 conference
Frenetic: a network programming language
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
A compiler and run-time system for network programming languages
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A NICE way to test openflow applications
NSDI'12 Proceedings of the 9th USENIX conference on Networked Systems Design and Implementation
Procera: a language for high-level reactive network control
Proceedings of the first workshop on Hot topics in software defined networks
Splendid isolation: a slice abstraction for software-defined networks
Proceedings of the first workshop on Hot topics in software defined networks
A security enforcement kernel for OpenFlow networks
Proceedings of the first workshop on Hot topics in software defined networks
Verifiably-safe software-defined networks for CPS
Proceedings of the 2nd ACM international conference on High confidence networked systems
Machine-verified network controllers
Proceedings of the 34th ACM SIGPLAN conference on Programming language design and implementation
VeriFlow: verifying network-wide invariants in real time
nsdi'13 Proceedings of the 10th USENIX conference on Networked Systems Design and Implementation
NetKAT: semantic foundations for networks
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Tierless programming and reasoning for software-defined networks
NSDI'14 Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation
Hi-index | 0.00 |
Configuration languages for traditional network hardware are often fairly limited and hence easy to analyze. Programmable controllers for software-defined networks are far more flexible, but this flexibility results in more opportunities for mis-configuration and greatly complicates analyses. We propose a new network-programming paradigm that strikes a balance between expressive power and analysis, providing a highly analyzable core language while allowing the re-use of pre-existing code written in more complex production languages. As the first step we have created FlowLog, a declarative language for programming SDN controllers. We show that FlowLog is expressive enough to build some real controller programs. It is also a finite-state language, and thus amenable to many types of analysis, such as model-checking. In this paper we present FlowLog, show examples of controller programs, and discuss analyzing them.