Download - How SDN will shape networking
How SDN will shape networking
Nick McKeownStanford University
With: Martín Casado, Teemu Koponen, Scott Shenker… and many others
With thanks to: NSF, GPO, Stanford Clean Slate Program, Cisco, DoCoMo, DT, Ericsson, Google, HP, Huawei, NEC, Xilinx
Outline
SDN: An industry change
How SDN will shape networking1. Empower network owners/operators2. Increase the pace of innovation3. Diversify the supply chain4. Build a robust foundation
Vertically integratedClosed, proprietary
Slow innovationSmall industry
SpecializedOperatingSystem
SpecializedHardware
App
App
App
App
App
App
App
App
App
App
App
SpecializedApplications
HorizontalOpen interfacesRapid innovation
Huge industry
Microprocessor
Open Interface
LinuxMacOS
Windows
(OS)or or
Open Interface
Vertically integratedClosed, proprietary
Slow innovation
App
App
App
App
App
App
App
App
App
App
App
HorizontalOpen interfacesRapid innovation
ControlPlane
ControlPlane
ControlPlane or or
Open Interface
SpecializedControlPlane
SpecializedHardware
SpecializedFeatures
MerchantSwitching Chips
Open Interface
Control Program Control Program
Network OS
1. Open interface to packet forwarding
2. At least one Network OSprobably many.
Open- and closed-source
Software Defined Network (SDN)
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Global Network View
Simple example
OSPF– RFC 2328: 245 pages
Distributed System– Builds consistent, up-to-date map of the network: 101 pages
Dijkstra’s Algorithm– Operates on map: 4 pages
1. Why SDN?2. The Consequences
– For industry– For research– For standards and protocols
Example
Custom Hardware
OS
OSPF IS-IS
DistributedSystem
DistributedSystem
OSPF(Dijkstra) IS-IS
Network OS
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Distributed System
New!
Control Program A Control Program B
Network OS
OpenFlow Forwarding Abstraction
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
FlowTable(s)
FlowTable(s)
“If header = p, send to port 4”
“If header = ?, send to me”
“If header = q, overwrite header with r, add header s, and send to ports 5,6”
OpenFlow Forwarding Abstraction<Match, Action>
Match
– Match on any header, or new header– Allows any flow granularity
Action– Forward to port(s), drop, send to controller– Overwrite header with mask, push or pop– Forward at specific bit-rate
10
HeaderHeader DataDataMatch: 1000x01xx0101001x
OpenFlow Forwarding Abstraction
Protocol Independent– Construct Ethernet, IPv4, VLAN, MPLS, …– Construct new forwarding methods
Backward Compatible– Run in existing networks
Technology Independent– Switches, routers, WiFi APs– Cellular basestations– WDM/TDM circuits
SDN in development
Domains• Data centers• Public clouds• Enterprise/campus• Cellular backhaul• Enterprise WiFi• WANs• Home networks
Products
• Switches, routers: About 15 vendors
• Software: 8-10 vendors and startups
New startups. Lots of hiring in networking.
Outline
SDN: An industry change
How SDN will shape networking1. Empower network owners/operators2. Increase the pace of innovation3. Diversify the supply chain4. Build a robust foundation
How SDN will shape networking
1. Empower network owners and operators– Customize networks to local needs– Eliminate unneeded features– Creation of virtual, isolated networks
2. Increase the pace of innovation– Innovation at software speed– Standards (if any) will follow software deployment– Technology exchange with partners– Technology transfer from universities
Example 1Example 1
Example 1. Customizing the network
Add distributed load-balancingNikhil Handigol, Mario Flajslik, Srini Seetharaman
LOAD-BALANCER
Load-balancerNetwork OS: NOX
Experimental Setup
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Nikhil’s Experiment: <500 lines of codeFeature Feature
Network OS: NOX
More videosopenflow.org/videos
How SDN will shape networking
1. Empower network owners and operators– Customize networks to local needs– Eliminate unneeded features– Creation of virtual, isolated networks
2. Increase the pace of innovation– Innovation at software speed– Standards (if any) will follow software deployment– Technology exchange with partners– Technology transfer from universities
Example 2Example 2
Example 2. Innovation at software speed
Mininet: Rapid prototyping
Brandon Heller, Bob Lantz, Nikhil Handigol, Vimal Jeyakumar
userkernel
Mininet: Rapid PrototypingLoad-balancer
Network OS: NOX, Beacon, …
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Processes with network namespace
Open vSwitch in kernel
Network OS
OpenFlow
veth
Mininet: Rapid Prototyping
Fast – Emulate network with 10s of switches on one laptop– Processes easily mapped to cores and servers– Emulate network with 1000s of switches in server rack
Rapid transfer– Deploy unmodified code directly into live network
Code available– openflow.org/mininet
How SDN will shape networking
3. Diversify the supply chain– A variety of software suppliers– Vendors, homegrown, outsourced, open-source– Common hardware abstraction, with extensions
4. Build a robust foundation– Standardized forwarding abstraction– Provable network properties at every step Example 3Example 3
Example 3. Provable network properties
Header Space Analysis
Peyman Kazemian
Header Space Analysis:Static checking
In today’s networks, simple questions are hard– Can A talk to B?– What are all the packet headers from A that can reach B?– Are there any loops in the network?– Is VLAN X (or ‘slice’) isolated totally from VLAN Y?
Step 1: Model packet header as a point in {0,1}L
Step 2: Model all switches as transforms of {0,1}L
Step 3: Analyze reachability, loops, slice isolation, …
Protocol independent, general, and surprisingly fast
< Match, Action >
Basic ModelHeader Data
L0110101…010110101…01
Match
L011XXX…X1011XXX…X1
ActionSend to port 1, andRewrite with: 100XX00..1XSend to port 1, andRewrite with: 100XX00..1X
+
PacketForwarding
PacketForwarding
Network Transfer Function
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Properties
Network transfer function: set of Boolean expressionsOnly relies on <Match, Action>
– Subsumes Ethernet, IPv4, firewalls, NAT, …
Can prove reachability, isolation and find loops
Used to find faults in real networks– e.g. Analyzed Stanford backbone in 10mins
Code publicly available
Outline
SDN: An industry change
How SDN will shape networking1. Empower network owners/operators2. Increase the pace of innovation3. Diversify the supply chain4. Build a robust foundation
Thank you!
Backup
ExperimentNetwork OS: NOX
Experimental Setup with Slicing
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Slicing Layer: FlowVisor
ExperimentNOX
ExperimentNOX
ExperimentNOX
Control Program A Control Program B
Software Defined Network (SDN)
Global Network View
Network Virtualization
ControlPrograms
ControlPrograms
ControlPrograms
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
PacketForwarding
Network OS
Abstract Network View
Example: New Data Center
Cost200,000 serversFanout of 20 10,000 switches$5k vendor switch = $50M$1k commodity switch = $10M
Savings in 10 data centers = $400M
Control
More flexible controlTailor network for servicesQuickly improve and innovate
Consequences for research
Ease of trying new ideas– Existing tools: NOX, Beacon, switches, Mininet– More rapid technology transfer– GENI, Ofelia and many more
A stronger foundation to build upon– Provable properties of forwarding– New languages and specification tools
Consequences for standards
Standards will define the interfaces
The role of standards will change:– Network owners will define network behavior– Features will be adopted without standards
Programming world– Good software is adopted, not standardized
Summary
Networks becoming– More programmatic– Defined by owners and operators, not vendors– Faster changing, to meet operator needs– Lower opex, capex and power
Abstractions– Will shield programmers from complexity– Make behavior more provable– Will take us places we can’t yet imagine