ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Functional reactive programming, continued
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
Lambda in Motion: Controlling Robots with Haskell
PADL '99 Proceedings of the First International Workshop on Practical Aspects of Declarative Languages
Gigascope: a stream database for network applications
Proceedings of the 2003 ACM SIGMOD international conference on Management of data
Adaptive functional programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
OpenFlow: enabling innovation in campus networks
ACM SIGCOMM Computer Communication Review
NOX: towards an operating system for networks
ACM SIGCOMM Computer Communication Review
Practical declarative network management
Proceedings of the 1st ACM workshop on Research on enterprise networking
Communications of the ACM - Scratch Programming for All
Flapjax: a programming language for Ajax applications
Proceedings of the 24th ACM SIGPLAN conference on Object oriented programming systems languages and applications
Can the production network be the testbed?
OSDI'10 Proceedings of the 9th USENIX conference on Operating systems design and implementation
Embedding dynamic dataflow in a call-by-value language
ESOP'06 Proceedings of the 15th European conference on Programming Languages and Systems
Nettle: taking the sting out of programming network routers
PADL'11 Proceedings of the 13th international conference on Practical aspects of declarative languages
Frenetic: a network programming language
Proceedings of the 16th ACM SIGPLAN international conference on Functional programming
Hot-ICE'12 Proceedings of the 2nd USENIX conference on Hot Topics in Management of Internet, Cloud, and Enterprise Networks and Services
Hierarchical policies for software defined networks
Proceedings of the first workshop on Hot topics in software defined networks
Verification of computer switching networks: an overview
ATVA'12 Proceedings of the 10th international conference on Automated Technology for Verification and Analysis
Participatory networking: an API for application control of SDNs
Proceedings of the ACM SIGCOMM 2013 conference on SIGCOMM
Corybantic: towards the modular composition of SDN control programs
Proceedings of the Twelfth ACM Workshop on Hot Topics in Networks
Computer Networks: The International Journal of Computer and Telecommunications Networking
Network virtualization in multi-tenant datacenters
NSDI'14 Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation
Hi-index | 0.00 |
Most interfaces for programming network devices are defined at the low level of abstraction supported by the underlying hardware, which leads to complicated programs that are prone to errors. This paper proposes a high-level programming language for OpenFlow networks based on ideas originally developed in the functional programming community. Our language, called Frenetic, includes a rich pattern algebra for classifying packets, a "program like you see every packet" abstraction, and a run-time system that automatically generates the low-level packet-processing rules. We describe the design and implementation of Frenetic, and show how to use it to implement common management tasks.