October 19, 2012
Kirkbride Lecture Hall 004
University of Delaware
Frenetic: A Programming Language for Software Defined Networks
Professor, Department of Computer Science, Princeton University
Today's network administrators must manage their networks through closed and proprietary interfaces to heterogeneous devices, such as routers, switches, firewalls, and load balancers. During the past several years, the emergence of Software Defined Networking (SDN) has led to cleaner interfaces between network 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. Yet, while SDN makes it possible to program the network, it does not make it easy.
In our Frenetic project, we are raising the level of abstraction for programming OpenFlow networks. Frenetic supports seamless composition of multiple tasks, such as routing, access control, and traffic monitoring, by automatically generating switch-level rules that enforce all of the policies. A simple "see every packet" abstraction shields programmers from reasoning about asynchronous events and complex timing issues in the underlying network, while the run-time system ensures data packets stay in the "fast path" through the underlying switches. Frenetic also transitions the switches from one network-wide policy to another, while ensuring consistent handling of all traffic during the change. These abstractions enable programmers to write OpenFlow programs that are short, simple, and efficient.
Frenetic (http://www.frenetic-lang.org) is a joint project with Nate Foster (Cornell), Dave Walker (Princeton), Michael Freedman (Princeton), Rob Harrison (US Military Academy), Chris Monsanto (Princeton), Josh Reich (Princeton), Mark Reitblatt (Cornell), Cole Schlesinger (Princeton), and Alec Story (Cornell).
Jennifer Rexford is a Professor in the Computer Science department at Princeton University. From 1996-2004, she was a member of the Network Management and Performance department at AT&T Labs--Research. Jennifer is co-author of the book "Web Protocols and Practice" (Addison-Wesley, May 2001). She served as the chair of ACM SIGCOMM from 2003 to 2007. Jennifer received her BSE degree in electrical engineering from Princeton University in 1991, and her MSE and PhD degrees in computer science and electrical engineering from the University of Michigan in 1993 and 1996, respectively. She was the 2004 winner of ACM's Grace Murray Hopper Award for outstanding young computer professional.