Merlin: A Language for Provisioning Network Resources
arXiv:1407.1199
Abstract
This paper presents Merlin, a new framework for managing resources in software-defined networks. With Merlin, administrators express high-level policies using programs in a declarative language. The language includes logical predicates to identify sets of packets, regular expressions to encode forwarding paths, and arithmetic formulas to specify bandwidth constraints. The Merlin compiler uses a combination of advanced techniques to translate these policies into code that can be executed on network elements including a constraint solver that allocates bandwidth using parameterizable heuristics. To facilitate dynamic adaptation, Merlin provides mechanisms for delegating control of sub-policies and for verifying that modifications made to sub-policies do not violate global constraints. Experiments demonstrate the expressiveness and scalability of Merlin on real-world topologies and applications. Overall, Merlin simplifies network administration by providing high-level abstractions for specifying network policies and scalable infrastructure for enforcing them.
References in corpus (1)
Cited by in corpus (10)
- Event-Driven Network Programming
- Network Hardware-Accelerated Consensus
- WNetKAT: A Weighted SDN Programming and Verification Language
- (FPT-)Approximation Algorithms for the Virtual Network Embedding Problem
- Decentralized Consistent Network Updates in SDN with ez-Segway
- OSDF: An Intent-based Software Defined Network Programming Framework
- Accelerating the Development of Software-Defined Network Optimization Applications Using SOL
- The Mathematical Foundations for Mapping Policies to Network Devices (Technical Report)
- Optimistic Aborts for Geo-distributed Transactions
- DeltaPath: dataflow-based high-performance incremental routing