TY - JOUR
T1 - Languages for software-defined networks
AU - Foster, Nate
AU - Guha, Arjun
AU - Reitblatt, Mark
AU - Story, Alec
AU - Freedman, Michael Joseph
AU - Katta, Naga Praveen
AU - Monsanto, Christopher
AU - Reich, Joshua
AU - Rexford, Jennifer L.
AU - Schlesinger, Cole
AU - Walker, David P.
AU - Harrison, Robert
PY - 2013
Y1 - 2013
N2 - Modern computer networks perform a bewildering array of tasks, from routing and traffic monitoring, to access control and server load balancing. However, managing these networks is unnecessarily complicated and error-prone, due to a heterogeneous mix of devices (e.g., routers, switches, firewalls, and middleboxes) with closed and proprietary configuration interfaces. Softwaredefined networks are poised to change this by offering a clean and open interface between networking devices and the software that controls them. In particular, many commercial switches support the OpenFlow protocol, and a number of campus, data center, and backbone networks have deployed the new technology. However, while SDNs make it possible to program the network, they does not make it easy. Today's OpenFlow controllers offer low-level APIs that mimic the underlying switch hardware. To reach SDNs¿ full potential, we need to identify the right higher-level abstractions for creating (and composing) applications. In the Frenetic project, we are designing simple and intuitive abstractions for programming the three main stages of network management: monitoring network traffic, specifying and composing packet forwarding policies, and updating policies in a consistent way. Overall, these abstractions make it dramatically easier for programmers to write and reason about SDN applications.
AB - Modern computer networks perform a bewildering array of tasks, from routing and traffic monitoring, to access control and server load balancing. However, managing these networks is unnecessarily complicated and error-prone, due to a heterogeneous mix of devices (e.g., routers, switches, firewalls, and middleboxes) with closed and proprietary configuration interfaces. Softwaredefined networks are poised to change this by offering a clean and open interface between networking devices and the software that controls them. In particular, many commercial switches support the OpenFlow protocol, and a number of campus, data center, and backbone networks have deployed the new technology. However, while SDNs make it possible to program the network, they does not make it easy. Today's OpenFlow controllers offer low-level APIs that mimic the underlying switch hardware. To reach SDNs¿ full potential, we need to identify the right higher-level abstractions for creating (and composing) applications. In the Frenetic project, we are designing simple and intuitive abstractions for programming the three main stages of network management: monitoring network traffic, specifying and composing packet forwarding policies, and updating policies in a consistent way. Overall, these abstractions make it dramatically easier for programmers to write and reason about SDN applications.
UR - http://www.scopus.com/inward/record.url?scp=84873907522&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84873907522&partnerID=8YFLogxK
U2 - 10.1109/MCOM.2013.6461197
DO - 10.1109/MCOM.2013.6461197
M3 - Article
AN - SCOPUS:84873907522
SN - 0163-6804
VL - 51
SP - 128
EP - 134
JO - IEEE Communications Magazine
JF - IEEE Communications Magazine
IS - 2
M1 - 6461197
ER -