OpenFlow: Enabling Innovation in Campus Networks

advertisement
OpenFlow:
Enabling Innovation in Campus Networks
ACM SIGCOMM Computer Communication Review 2008
Nick McKeown
Tom Anderson
Hari Balakrishnan
Stanford University
University of Washington
MIT
Guru Parulkar
Larry Peterson
Jennifer Rexford
Stanford University
Princeton University
Princeton University
Scott Shenker
Jonathan Turner
University of California, Berkeley
Washington University in St. Louis
101064541
2013/5/30
葉幸宜
Outlines
• Introduction and Motivation
• OpenFlow
– Goal
– Concepts
– Network Architecture
– Flow Table Structure
– Controller
– More Examples
• Conclusion
2013/5/30
1/14
Introduction and Motivation
• Experiments we’d like to do
– Mobility Management
– New Naming/Addressing Schemes
– Network Access Control
• If we design our own prototypes …
– Closed network
– No way to test the prototypes
2013/5/30
2/14
Introduction and Motivation
• Why Internet is closed for innovations?
– Commercial vendor won’t open software and
hardware development environment
• Complexity to support
• Market protection & Barrier-to-entry for competitors
• Existing Solutions
– Software only
• Performance is not good
– Hardware/Software
• Fanout too small
2013/5/30
3/14
OpenFlow
• Goal
– Open Platform
• For researchers to test new ideas at scale production
networks
• Without requiring vendors to expose internal workings
– Bring future Internet to legacy Internet
2013/5/30
4/14
OpenFlow’s Concept
OpenFlow Controller
OpenFlow Protocol (SSL)
Ethernet
Switch
Control
Plane
OpenFlow
Software
 Control
Plane
Hardware  Data Plane
2013/5/30
5/14
OpenFlow Network Architecture
OpenFlow Switch specification
OpenFlow-enable
Commercial Switch
2013/5/30
Normal
SW
Software
Secure
Channel
HW Normal
Datapath
Flow
Table
PC
OpenFlow
Controller
6/14
OpenFlow Flow Table Structure
OpenFlow Switch
Rule
Action
Statistics
SW
Normal
Software
Secure
Channel
HW
Normal
Datapath
Flow
Table
Packet + byte counters
1.
2.
3.
4.
Switch
Port
2013/5/30
MAC
src
MAC
dst
Forward packet to port(s)
Encapsulate and forward to controller
Drop packet
Send to normal processing pipeline
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
7/14
OpenFlow Flow Table Structure
OpenFlow Switch
Rule
Action
Statistics
SW
Normal
Software
Secure
Channel
HW
Normal
Datapath
Flow
Table
Packet + byte counters
1.
2.
3.
4.
Switch
Port
2013/5/30
MAC
src
MAC
dst
Forward packet to port(s)
Encapsulate and forward to controller
Drop packet
Send to normal processing pipeline
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
7/14
OpenFlow Flow Table Example
• Ethernet Switching
Switch MAC MAC
Eth
Port
src
dst
type
*
*
00:2D.. *
• IP Routing
Switch MAC
Port
src
*
*
MAC
dst
*
Eth
type
*
VLAN
ID
*
IP
Src
*
IP
Dst
*
IP
Prot
*
TCP
TCP
Action
sport dport
*
*
Port5
VLAN
ID
*
IP
IP
IP
Src
Dst
Prot
* 140.114.. *
TCP
TCP
Action
sport dport
*
*
Port3
IP
Src
*
TCP
TCP
Action
sport dport
*
22 Drop
• Application Firewall
Switch MAC
Port
src
*
*
2013/5/30
MAC
dst
*
Eth
type
*
VLAN
ID
*
IP
Dst
*
IP
Prot
*
8/14
OpenFlow Controller
• Centralized intelligential agency
– Allow multiple researchers create their accounts
to control the flows independently
– Add or remove flow-entries
• NOX is an open-source OpenFlow Controller
NOX Controller
2013/5/30
OpenFlow Switch
OpenFlow Switch
OpenFlow Switch
9/14
Secure Channel
•
•
•
•
SSL Connection
Controller discovery protocol
Encapsulate packets for controller
Send link/port state to controller
2013/5/30
10/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
Rules
Flow OpenFlow
Table
Switch
PC
Controller
2013/5/30
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
PC
Controller
2013/5/30
Amy
Flow OpenFlow
Table
Switch
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
PC
Controller
2013/5/30
Amy
Flow OpenFlow
Table
Switch
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
PC
Controller
2013/5/30
Amy
Flow OpenFlow
Table
Switch
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
PC
Controller
2013/5/30
Amy
Flow OpenFlow
Table
Switch
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
PC
Controller
2013/5/30
Amy
Flow OpenFlow
Table
Switch
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
PC
Controller
2013/5/30
Amy
Flow OpenFlow
Table
Switch
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
PC
Controller
2013/5/30
Bob
Flow OpenFlow
Table
Switch
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
Flow
Table
OpenFlow
Switch
11/14
OpenFlow Operation Example
Amy
Access
Control
Scheme!
If Rule = x, send to port 4
If Rule = y, drop it
If Rule = ?, send to controller
Else, send to normal pipeline
Flow OpenFlow
Table
Switch
PC
Controller
2013/5/30
Flow
OpenFlow
Table
Switch
Flow OpenFlow
Table
Switch
O-Flow
Table
Flow
Table
Bob
OpenFlow
Switch
11/14
More Examples for OpenFlow
Switch MAC
Port
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
TCP
Action
sport dport
• Network Management and Access Control
– Ex: Phones can only use HTTP service
• VLANs
• Mobile wireless VoIP clients
– Allowing seamless handover
• Non-IP network
– OpenFlow packets could be any kinds of formats
• Processing packets rather than flows
2013/5/30
12/14
OpenFlow Products
• NEC
• HP
• Pronto
2013/5/30
23
13/14
Conclusion
• OpenFlow
– Standard way to control flow-tables in commercial
switches and routers
– An open development environment for all
researchers
– Real environment for Future Internet Technologies
2013/5/30
14/14
Download