Programming Abstractions for Software-Defined Networks
Speaker: Dr. Jennifer Rexford, Princeton University
Session Description: Software-Defined Networking (SDN) is revolutionizing the way we design and manage networks. Yet, while SDN makes it possible to program the network, it does not make it easy. Today’s OpenFlow controllers offer very low-level programming interfaces that mimic the underlying switch hardware, forcing programmers to grapple with a shared table of rules that match on bit-level patterns in packets. To reach SDN’s full potential, we need a way to create sophisticated network applications from multiple, independently-written modules. The Frenetic project brings together researchers in programming languages and computer networking to identify simple and intuitive abstractions for querying network state, composing application modules, and seamlessly updating the network to a new policy. These abstractions substantially lower the barrier for innovation, and enable future networks to “mix and match” the best SDN application components from different third-party software developers.
The Frenetic project (http://www.frenetic-lang.org/) is a large collaborative project led by Nate Foster (Cornell), Arjun Guha (University of Massachusetts at Amherst), and Jennifer Rexford and David Walker (Princeton).