1 Seminar on “Clean Slate Design for the Internet” Nick McKeown [email protected] [email protected].
Nick McKeown, "Software-defined Networking"
-
Upload
cameroon45 -
Category
Technology
-
view
2.787 -
download
1
Transcript of Nick McKeown, "Software-defined Networking"
![Page 2: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/2.jpg)
Part 1: Inside the box
Switch and Router Design
Part 2: Outside the box
Software-defined networking
![Page 3: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/3.jpg)
HardwareDatapathHardwareDatapath
Router
Software Control
Software Control
Management: CLI, SNMPRouting Protocols: OSPF, ISIS, BGP
Per-packet: Lookup, switch, buffer
![Page 4: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/4.jpg)
IP Address Lookup
& Classification
CrossbarScheduler
How big should buffers be? [1/√N]
How to build really fast buffers? [Nemo]
Which schedulers give 100% throughput? [MWM]
Which schedulers are practical in hardware? [iSLIP]
How to schedule multicast? [ESLIP]
How to run the scheduler slower? [PPS]
How to avoid scheduling altogether? [VLB]
How to emulate an output queued switch? [MUCFA]
How to lookup quickly in hardware? [24-8]
Heuristic classification algorithms [HiCuts]
![Page 5: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/5.jpg)
Three Open Topics
1. There’s something special about “2x speedup”
2. Deterministic (instead of probabilistic) switch design
3. Making routers simpler
![Page 6: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/6.jpg)
Three Open Topics
1. There’s something special about “2x speedup”
A maximal match crossbar scheduler gives 100% throughput [Dai&Prabhakar]
Makes a Clos network strictly non-blocking [Clos]
Allows a CIOQ switch to precisely emulate an output-queued switch [Chuang]
![Page 7: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/7.jpg)
Three Open Topics
1. There’s something special about “2x speedup” (contd.)
Allows a parallel stack of small switches to precisely emulate one big switch [Iyer]
Valiant Load-Balanced switch (or network) can give 100% throughput [Valiant]
![Page 8: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/8.jpg)
Related observations
“2x speedup” is key for both deterministic & probabilistic systems
A maximum size bipartite match is at most twice the size of a maximal match
A switch has two simultaneous constraints: input and output
Local “selfish” routing decisions cost twice as much as “global” ones [Roughgarden]
![Page 9: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/9.jpg)
Three Open Topics
1. There’s something special about “2x speedup”
2. Deterministic (instead of probabilistic) switch designWe need more analytical tools for “mimicking”
Generalized pigeon-hole principles
3. Making routers simpler
![Page 10: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/10.jpg)
Three Open Topics
1. There’s something special about “2x speedup”
2. Deterministic (instead of probabilistic) switch design
1. Making routers simpler
![Page 11: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/11.jpg)
Million of linesof source code
5389 RFCs Barrier to entry
500M gates10Gbytes RAM
Bloated Power Hungry
Many complex functions baked into the infrastructureOSPF, BGP, multicast, differentiated services,Traffic Engineering, NAT, firewalls, MPLS, redundant layers, …
We have lost our way
HardwareDatapathHardwareDatapath
Router
Software Control
Software Control
![Page 12: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/12.jpg)
Process of innovation
Almost no technology transferfrom academia
DeploymentIdea Standardize
Wait 10 years
![Page 13: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/13.jpg)
Personal regret
I wish I had said it sooner and louder
Our “dumb, minimal” datapath turned into a
bloated 1960s mainframe!
![Page 14: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/14.jpg)
The essence of my talk (1 of 2)
Hardware Substrate The PC industry found a simple, common, hardware substrate (x86 instruction set)
Software-definitionInnovation exploded on top (applications) and in the infrastructure itself (operating systems, virtualization)
Open-source100,000s of developers blew apart the standards process, accelerated innovation
![Page 15: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/15.jpg)
The essence of my talk (2 of 2)
It is up to us to make it happen.
Until we (someone) does, it remains ossified.
Let’s define the substrate.
HardwareSubstrate
Open SourceCulture
Software-DefinedNetwork
Innovation!
![Page 16: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/16.jpg)
Part 1: Inside the box
Part 2: Outside the boxThe need for a substrate
The inevitability of software-defined networking
![Page 17: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/17.jpg)
Computer
Application
Computer
Application Application
OS
OS abstracts hardware substrate Innovation in applications
![Page 18: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/18.jpg)
x86(Computer)
Windows(OS)
ApplicationApplication
LinuxMacOS
x86(Computer)
Windows(OS) or or
ApplicationApplication
Simple, common, stable, hardware substrate below+ Programmability+ Competition Innovation in OS and applications
![Page 19: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/19.jpg)
LinuxMacOS
x86(Computer)
Windows(OS)
or or
ApplicationApplication Windows(OS)
Windows(OS)
LinuxMacOS
x86(Computer)
Windows(OS)
AppApp
LinuxLinuxMacOS
MacOS
Virtualization
App
Simple, common, stable, hardware substrate below+ Programmability + Strong isolation model+ Competition above Innovation in infrastructure
![Page 20: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/20.jpg)
A simple stable common substrate
1. Allows applications to flourish Internet: Stable IPv4 lead to the web
2. Allows the infrastructure on top to be defined in softwareInternet: Routing protocols, management, …
3. Rapid innovation of the infrastructure itselfInternet: er...? What’s missing? What is the
substrate…?
![Page 21: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/21.jpg)
Mid-1990s: “To enable innovation in the
network, we need to program on top of a simple hardware
datapath”
Problems: isolation, performance, complexity
Active networking
![Page 22: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/22.jpg)
Late-1990s: “To enable innovation in the
network, we need the datapath substrate to be programmable”
Problem: Accelerated complexity of the datapath substrate
Network processors
![Page 23: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/23.jpg)
(Statement of the obvious)
In networking, despite several attempts…
We’ve never agreed upon a clean separation between:1. A simple common hardware substrate
2. And an open programming environment on top
But things are changing fast in data centers and service provider networks.
![Page 24: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/24.jpg)
Observations
Prior attempts have generally
1. Assumed the current IP routing substrate is fixed, and tried to program it externally
Including the routing protocols
2. Defined the programming and control model up-front
But to pick the right x86 instruction set, Intel didn’t define Windows XP, Linux or VMware
![Page 25: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/25.jpg)
We need…
1. A clean separation between the substrate and an open programming environment
2. A simple hardware substrate that generalizes, subsumes and simplifies the current substrate
3. Very few preconceived ideas about how the substrate will be programmed
4. Strong isolation
![Page 26: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/26.jpg)
New function!
Operators, users, 3rd party developers, researchers, …
Step 1: Separate intelligence from datapath
![Page 27: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/27.jpg)
We need…
1. A clean separation between the substrate and an open programming environment
2. A simple hardware substrate that generalizes, subsumes and simplifies the current substrate
3. Very few preconceived ideas about how the substrate will be programmed
4. Strong isolation
![Page 28: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/28.jpg)
Step 2: Cache decisions in minimal flow-based datapath
“If header = x, send to port 4”
FlowTableFlowTable
“If header = ?, send to me”“If header = y, overwrite header with z, send to ports 5,6”
![Page 29: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/29.jpg)
1.
Unicast
2.Multicast
![Page 30: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/30.jpg)
4.
Waypoints Middleware Intrusion detection …
3.Multipath Load-balancing Redundancy
![Page 31: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/31.jpg)
Types of action
Allow/deny flow Route & re-route flow Isolate flow Make flow private Remove flow
What is a flow?
Application flow All http Jim’s traffic All packets to Canada …
![Page 32: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/32.jpg)
Packet-switching substrate
PayloadPayloadEthernetDA, SA, etc
EthernetDA, SA, etc
IPDA, SA, etc
IPDA, SA, etc
TCPDP, SP, etc
TCPDP, SP, etc
Collection of bits to plumb flows (of different granularities)
between end points
![Page 33: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/33.jpg)
Properties of a flow-based substrate
We need flexible definitions of a flowUnicast, multicast, waypoints, load-balancing
Different aggregations
We need direct control over flowsFlow as an entity we program: To route, to make private, to move, …
Exploit the benefits of packet switchingIt works and is universally deployed
It’s efficient (when kept simple)
![Page 34: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/34.jpg)
Substrate: “Flowspace”
PayloadPayloadEthernetDA, SA, etc
EthernetDA, SA, etc
IPDA, SA, etc
IPDA, SA, etc
TCPDP, SP, etc
TCPDP, SP, etc
Collection of bits to plumb flows (of different granularities)
between end points
PayloadPayloadHeaderUser-defined flowspace
HeaderUser-defined flowspace
![Page 35: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/35.jpg)
Flowspace: Simple example
IP SA
IP DA
Single flow All flows from A
A
All flows between two
subnets
![Page 36: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/36.jpg)
Flowspace: Generalization
Field 2
Field 1
Single flowSet of flows
Field n
![Page 37: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/37.jpg)
Properties of Flowspace
Backwards compatibleCurrent layers are a special case
No end points need to change
Easily implemented in hardwaree.g. TCAM flow-table in each switch
Strong isolation of flowsSimple geometric construction
Can prove which flows can/cannot communicate
![Page 38: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/38.jpg)
A substrate
Flow-based
Small number of actions for each flow Plumbing: Forward to port(s)
Control: Forward to controller
Routing between flow-spaces: Rewrite header
Bandwidth isolation: Min/max rate
External open API to flow-table
![Page 39: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/39.jpg)
OpenFlow as a strawman flow-based substrate
![Page 40: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/40.jpg)
Our Approach1. Define the substrate
OpenFlow is an open external API to a flow-table
Version 1.0Defined to be easy to add to existing hardware switches, routers, APs, …Timeframe: Now
Version 2.0OpenFlow-optimized hardwareGeneral “flowspace”Timeframe: 2011
![Page 41: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/41.jpg)
Our Approach2. Deploy
Deploy on college campuses
Deploy in national research backbone networks
Enable researchers to freely innovate on top
![Page 42: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/42.jpg)
OpenFlow Hardware
Cisco Catalyst 6k
NEC IP8800
HP Procurve 5400
Juniper MX-series WiMax (NEC)
PC Engines
Quanta LB4G More coming soon...
![Page 43: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/43.jpg)
An OpenFlow Controller
MartinCasado
ScottShenker
“Nicira” created NOX controllerAvailable at http://NOXrepo.org
Controller
![Page 44: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/44.jpg)
OpenFlow Basics
![Page 45: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/45.jpg)
Ethernet SwitchEthernet Switch
![Page 46: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/46.jpg)
Data Path (Hardware)Data Path (Hardware)
Control PathControl PathControl Path (Software)Control Path (Software)
![Page 47: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/47.jpg)
Data Path (Hardware)Data Path (Hardware)
Control PathControl Path OpenFlowOpenFlow
OpenFlow ControllerOpenFlow Controller
OpenFlow Protocol (SSL)
![Page 48: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/48.jpg)
OpenFlow Basics (1)
Rule(exact & wildcard)
Action Statistics
Rule(exact & wildcard)
Action Statistics
Rule(exact & wildcard)
Action Statistics
Rule(exact & wildcard)
Default Action Statistics
Exploit the flow table in switches, routers, and chipsets
Flow 1.
Flow 2.
Flow 3.
Flow N.
![Page 49: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/49.jpg)
Flow Table EntryOpenFlow Protocol Version 1.0
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Rule Action Stats
1. Forward packet to port(s)2. Encapsulate and forward to controller3. Drop packet4. Send to normal processing pipeline
+ mask what fields to match
Packet + byte counters
![Page 50: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/50.jpg)
Examples
Switching
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* 00:1f:.. * * * * * * * port6
Flow Switching
port3
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
00:2e.. 00:1f.. 0800 vlan1 1.2.3.4 5.6.7.8 4 17264 80 port6
Firewall
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Forward
* * * * * * * * 22 drop
![Page 51: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/51.jpg)
ExamplesRouting
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* * * * * 5.6.7.8* * * port6
VLAN
*
SwitchPort
MACsrc
MACdst
Ethtype
VLANID
IPSrc
IPDst
IPProt
TCPsport
TCPdport
Action
* * * vlan1 * * * * *
port6, port7,port9
![Page 52: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/52.jpg)
OpenFlowSwitch.org
Controller
OpenFlow Switch
PC
OpenFlow UsageDedicated OpenFlow Network
OpenFlow Switch
OpenFlow Switch
OpenFlowProtocol
Peter’s code
Rule Action Statistics
Rule Action Statistics Rule Action Statistics
Peter
![Page 53: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/53.jpg)
Usage examples
Peter’s code:Static “VLANs”His own new routing protocol: unicast, multicast, multipath, load-balancingNetwork access controlHome network managerMobility managerEnergy managerPacket processor (in controller)IPvPeterNetwork measurement and visualization…
![Page 54: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/54.jpg)
Separate VLANs for Production and Research Traffic
Normal L2/L3 Processing
Flow Table
Production VLANs
Research VLANs
Controller
![Page 55: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/55.jpg)
Virtualize OpenFlow Switch
Normal L2/L3 Processing
Flow Table
Flow Table
Flow TableResearcher A VLANs
Researcher B VLANs
Researcher C VLANs
Production VLANs
Controller A
Controller B
Controller C
![Page 56: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/56.jpg)
OpenFlow Switch
OpenFlowProtocolOpenFlowProtocol
OpenFlow FlowVisor & Policy Control
Craig’sController
Heidi’sControllerAaron’s
Controller
OpenFlowProtocolOpenFlowProtocol
Virtualizing OpenFlow
OpenFlow Switch
OpenFlow Switch
![Page 57: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/57.jpg)
OpenFlowProtocol
OpenFlowFlowVisor & Policy Control
BroadcastMulticast
OpenFlowProtocol
httpLoad-balancer
Virtualizing OpenFlow
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch
![Page 58: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/58.jpg)
Windows(OS)
Windows(OS)
LinuxMacOS
x86(Computer)
Windows(OS)
AppApp
LinuxLinuxMacOS
MacOS
Virtualization
App
Simple, common, stable, hardware substrate below+ Programmability + Strong isolation model+ Competition above Faster innovation
Controller 1
AppApp
Controller2
Virtualization (FlowVisor)
App
OpenFlow
Controller 1
Controller 1
Controller2
Controller2
![Page 59: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/59.jpg)
OpenFlow Deployment
![Page 60: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/60.jpg)
OpenFlow Deployments
Stanford DeploymentsWired: CS Gates building, EE CIS building, EE Packard building
WiFi: 100 OpenFlow APs across SoE
WiMAX: OpenFlow service in SoE
Other deploymentsInternet2 (NetFPGA switches)
JGN2plus, Japan (NEC switches)
10-15 research groups have switches
![Page 61: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/61.jpg)
OpenFlow DeploymentsPlans in 2009-10
Campus deploymentsLab + production use
“Enterprise GENI” (NSF/GPO)
Backbone deploymentsNational research backbones
Research + Production use
![Page 62: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/62.jpg)
How to get involved (1)
Visit http://OpenFlowSwitch.org
Experiment with reference switchesLinux soft switch
NetFPGA hardware switch
Explore with your network administrator/CIO about trial production deployment
Look at prototype commercial hardware
![Page 63: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/63.jpg)
How to get involved (2)
Experiment with controllersSimple test controllers
NOX: http://NOXrepo.org
Add a new experiment/feature
Run a class
![Page 64: Nick McKeown, "Software-defined Networking"](https://reader036.fdocuments.us/reader036/viewer/2022081418/554badb5b4c905b8618b568d/html5/thumbnails/64.jpg)
Thank You!