Title: Enabling Innovation Inside the Network
1Enabling Innovation Inside the Network
- Jennifer Rexford
- Computer Science DepartmentPrinceton University
- http//www.frenetic-lang.org/
With Nate Foster (Cornell), Mike Freedman
(Princeton), Dave Walker (Princeton)
2Traditional Computer Networks
Management plane Configuration
Control plane Distributed algorithms
Data plane Packet streaming
Proprietary software and vendor-specific
configuration interfaces
3Software Defined Networking (SDN)
Logically-centralized control
Smart, slow
Open API to the data plane (e.g., OpenFlow)
Dumb, fast
Switches
4Example Applications
- Seamless mobility/migration
- Dynamic access control
- Server load balancing
- Using multiple wireless access points
- Energy-efficient networking
- Adaptive traffic monitoring
- Denial-of-Service attack detection
- Network virtualization
See http//www.openflow.org/videos/
5Seamless Mobility/Migration
- See host sending traffic at new location
- Modify rules to reroute the traffic
6Programming OpenFlow Networks
- OpenFlow makes programming possible
- Network-wide view at controller
- Direct control over data plane
- The APIs do not make it easy
- Low level of abstraction
- Challenges
- Reading network state
- Composing multiple modules
- Updating an asynchronous network
Controller
Switches
7Frenetic Language and Run-Time System
- Frenetic today
- SQL-like queries of network state
- Run-time system for composing modules
- Consistent updates to network configuration
Learning Host Location
Select(packets) GroupBy(srcmac)
SplitWhen(inport) Limit(1)
8Conclusions
- Frenetic
- Programming language and run-time system
- Raises abstraction for network programming
- Enables a vibrant software ecosystem for SDN
- Ongoing work
- Heterogeneous switches
- Network virtualization
- Network appliances
- Distributed controllers