How SDN will shape networking
https://www.youtube.com/watch?v=c9-K5O_qYgA
Last updated
https://www.youtube.com/watch?v=c9-K5O_qYgA
Last updated
1980s
Specialized applications, specialized OS, specialized hardware
Vertically integrated, closed, proprietary
Then
Open interface, rapid innovation, huge industry
Availability of merchant switching chips
On top of there: multiple control planes
SDN
Example
Interesting comparisons across OSPF (245 pages), Distributed System (101 pages), Dijkstra's Algorithm (4 pages)
Start by building a distributed system!
Replication comes at a cost (complexity, not elegant)
Instead
Being refactored through different abstractions and different interfaces; make it easier to introduce new functionalities over time
Openflow Forwarding Abstraction
Standardization have the benefits to give abstractions (but in a pragmatic way; perfection is not the goal here)
Match Action Table
Actually all layers of the network is doing this
As general as possible to match any header that you define
How to use minimal sets of actions (meaningful set of primitives); leaving rooms for chip vendors to be able to implement it in hardware, and box vendors to differentiate by adding additional features / capabilities
Protocol independent
Backward compatible
Technology independent
Switches, routers, WiFi APs
SDN in development
Customize networks to local needs
e.g. Add distributed load balancing
What if we can jointly optimize path and server?
Easy for testing
Eliminate unneeded features
Features not needed in the network, can increase reliability
Creation of virtual, isolated networks
Isolate sets of users, multi-tenancy
Innovation at software speed
Define the operations in software
Can start doing much of the testing in software
E.g. Mininet: Rapid for prototyping
Light weight emulation; take any of these pieces, move them over machines and cores
Fast
Emulate network with 10s of switches on one laptop
Emulate network with 1000s of switches in server rack
Rapid transfer
Deploy unmodified code directly into live network
Standards (if any) will follow software development
Technology exchange with partners
Across boundaries, combine the boundaries use BGP etc.
Technology transfer from universities
A variety of software suppliers
Common hardware abstraction, with extensions
Standardized forwarding abstraction
Provable network properties at every step
E.g. header space analysis: static checking
Network transfer function: set of Bollean expressions
Only relies on <match, action>
Can prove reachability