Location of Repository

A Balance of Power: Expressive, Analyzable Controller Programming

By Daniel J. Dougherty, Tim Nelson, Kathi Fisler, Arjun Guha and Shriram Krishnamurthi


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 proposeanew network-programmingparadigmthat strikesabalancebetweenexpressivepowerandanalysis,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

Topics: Categories and Subject Descriptors C.2.3 [Computer-Communication Networks, Network Operations—Network management, D.2.4 [Software Engineering, Software/Program Verification—Model checking, D.3 [Programming Languages, Miscellaneous General Terms Design, Languages, Verification Keywords Software-DefinedNetworks, OpenFlow, Verification, Network- Programming Languages
Year: 2014
OAI identifier: oai:CiteSeerX.psu:
Provided by: CiteSeerX
Download PDF:
Sorry, we are unable to provide the full text but you may find it at the following location(s):
  • http://citeseerx.ist.psu.edu/v... (external link)
  • http://conferences.sigcomm.org... (external link)
  • Suggested articles

    To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.