T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
1
Towards a Framework forNetwork Control Composition
T. S. Eugene Ng
Rice University
Hong Yan
Carnegie Mellon University
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
2
Many Network Controls Manage Network State
Best effort routing
Traffic engineering
QoS routing
VPN tunneling
Packet filtering
Planned maintenance
Policy based inter-domain routing
Implemented by a variety of
Distributed protocols
Remote configurations
How do they coordinate?
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
3
Comparing Network Controls to Processes
Internet Control Plane
Operating System
ProcessesDist. protocols, remote config.
Process scheduling?
Process synchronization??
Inter-process communication???
Memory management????
vs
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
4
“Inter-Process Communication”
ISP Y is thepreferred egress
How to “tell” OSPFthis policy?
B3
B2
B1
C3
C2
C1
A2
A1
A4
A3
B4
ISP Y
ISP Z
ISP X
Overload semanticsof OSPF link weight
Prone to policyviolations
Traffic engineering,link failure, etc
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
5
“Process Scheduling”
A packet filterneeds to beplaced on theflow path
OSPF re-routeswhen networkchanges
B3
B2
B1
C3
C2
C1
A2
A1
A4
A3
B4
ISP Y
ISP Z
ISP X
Who “schedules”the packet filtercontrol to runafter routingchanges?
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
6
“Process Synchronization”
Want to performplannedmaintenance on C1
How to re-confignetwork in asystematic manner?
How to ensure re-config is completedbefore taking downC1?
B3
B2
B1
C3
C2
C1
A2
A1
A4
A3
B4
ISP Y
ISP Z
ISP X
QoS Routed
Traffic
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
7
“Memory Management”
Hardware tables shared by allnetwork controls
What does each networkcontrol see?
All table space?
Only free table space?
How to share limited physicalspace?
Virtual table abstraction?Paging?
Packet filter
Action
Spec 1
Forward
Spec 2
Drop
Spec 3
MPLS
Spec 4
Tunnel
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
8
Operating Platform Approach
Re-factor existing nuts and bolts network controls intosimple control applications
Applications are not distributed protocols
Run control applications on operating platform toachieve control objectives
Distributed nature of network control handled byunderlying system
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
9
4D-like Architecture
Network Control Applications
Node 1
Node 2
Node 3
Meta Management System
Operating Platform
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
10
Operating Platform Services
Network and node abstractions
Topology, hardware tables, link characteristics, load, etc
Interfaces for writing network state
Control coordination
Inter-process communication
Synchronization
Scheduling
Resource management
Coordinated sharing of hardware resources
Network protection
Prevent exceeding hardware resource limits
Link bandwidth, hardware tables, etc
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
11
Operating Platform
Operating Platform
Network View Virtualization
QoS Routing
Inter-Domain
Routing Policy
Shortest Path Routing
Network
Maintenance
Meta Management Interface
B3
B2
B1
C3
C2
C1
A2
A1
A4
A3
B4
ISP Y
ISP Z
ISP X
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
12
Potential Benefits
Remove implicit dependencies between controls
Prevent unintended side-effects of ad hoc controlcomposition
Network control re-configurations are triggeredsystematically
Protect network from faulty network controls
A better environment for innovation and evolution
T. S. Eugene Ngeugeneng at cs.rice.edu           Rice University
13
Summary
Ad hoc network control composition leads tounwanted complexity and fragile systems
It is time to move towards a more principledframework analogous to an operating system
Challeges: Develop abstractions and services for anetwork control platform
Network abstractions and interfaces
Inter-process communication
Scheduling
Synchronization
Resource management
Protection