- 高速通訊與計算實驗室
Download
Report
Transcript - 高速通訊與計算實驗室
A Hot Topic in Computer
Networks Today: SoftwareDefined Networking
Prof. Jang-ping Sheu
High-Speed Communication & Computing Laboratory
National Tsing Hua University
國立清華大學高速通訊與計算實驗室
NTHU High-Speed Communication & Computing Laboratory
Outline
Background and motivation
What is SDN ?
An open standard- OpenFlow
The applications of SDN
Challenges
Research resources
2
Outline
Background and motivation
What is SDN ?
An open standard - OpenFlow
The applications of SDN
Challenges
Research resources
3
Internet in Recent Decade
Data increasing continuously: Data Center, Cloud
Computing, and Big Data
E-business, Video on demand, MOOCs (Massive Open
Online Courses)
More protocols created with Heterogeneity networks
developing
VANET (Vehicular Ad-hoc NETwork), WSN (Wireless
Sensor Network), CRN (Cognitive Radio Network)
4
Source: Intel 2012 March
5
Traditional Networks - Features
Closed equipment
Over specified
Software bundled with hardware
Vendor-specific interface
Only vendors can develop for its constrained environments
Various and complex protocols: OSPF, BGP, DiffServ, NAT,
MPLS, and so on.
No uniform standardization
Buggy software in the equipment
Routers are with million of lines of source code
Cascading failures, vulnerabilities is popular
6
Traditional Networks - inconvenience
Operating a network is too complex and expensive
To add or move any device, network must be reconfigured,
such as router, switch and firewall
Too expensive to change the topology of network
Not easy to control the communications
User cannot write the control code except equipment
vendors
Long delays to introduce new features
Difficult to customize:
Even vendors and third parties are not able to provide
customized cost effective solutions to address their
customers’ problems
7
We Need Modify Existing Equipment
Routing, management, mobility management,
access control, VPNs, …
Feature
Feature
Operating
System
Specialized Packet
Forwarding Hardware
Million of lines
of source code
Billions of gates,
Switch
6,000 RFCs(Request For Comments)
Bloated,
Power Hungry
Vertically integrated, complex, closed, proprietary
Not suitable for experimental ideas
8
AppAppAppAppAppAppAppAppAppAppApp
Specialized
Applications
Specialized
Operating
System
Specialized
Hardware
Vertically integrated
Closed, proprietary
Slow innovation
Small industry
Open Interface
Windows
(OS)
or
Linux
or
Mac
OS
Open Interface
Microprocessor
Horizontal
Open interfaces
Rapid innovation
Huge industry
9
AppAppAppAppAppAppAppAppAppAppApp
Specialized
Features
Specialized
Control
Plane
Specialized
Hardware
Vertically integrated
Closed, proprietary
Slow innovation
Open Interface
Control
Plane
or
Control
Plane
or
Control
Plane
Open Interface
Merchant
Switching Chips
Horizontal
Open interfaces
Rapid innovation
10
Outline
Background and motivation
What is SDN ?
An open standard- OpenFlow
The applications of SDN
Challenges
Research resources
11
Software-Defined Networking
(SDN)
SDN is an approach to networking in
which control is decoupled from hardware and
given to a software application called a controller
Allows network engineers to support a switching
fabric across multi-vendor hardware and applicationspecific integrated circuit
Allows a stronger intellectual foundation to networking
Allows us to define the right abstractions in different
layers
Allows us to transfer technology much faster, in both
directions (academic and Industry)
Closing the gap with industry
12
SDN from Traditional Network Device
Ethernet Switch
13
SDN from Traditional Network Device
Controller (Software)
Data Path (Hardware)
14
SDN from Traditional Network Device
Controller
OpenFlow Protocol (SSL)
Control Path
OpenFlow
Data Path (Hardware)
15
SDN from Traditional Network Device
Controller
OpenFlow Protocol (SSL)
Ethernet Switch
16
More Detail in SDN
Control Programs
Network Operating System
App App
App
Operating
System
Specialized
Packet
Forwarding
Hardware
App App
App App
Operating
System
Specialized
Packet
Forwarding
Hardware
App
Operating
System
Specialized
Packet
Forwarding
Hardware
App App
App App
Operating
System
Specialized
Packet
Forwarding
Hardware
App
App
App
Operating
System
Specialized
Packet
Forwarding
Hardware
17
More Detail in SDN
Control Programs
Network Operating System
Simple Packet
Forwarding
Hardware
Simple Packet
Forwarding
Hardware
Simple Packet
Forwarding
Hardware
Simple Packet
Forwarding
Hardware
Simple Packet
Forwarding
Hardware
18
Packets Delivering in SDN
Controller
User’sSwitch
Rule
OpenFlow
User’s code
PC
Decision?
User’sSwitch
Rule
OpenFlow
OpenFlow
Protocol
User’sSwitch
Rule
OpenFlow
19
Potential Application Model in SDN
Data Centers
Public and private clouds
WANs
Google WAN
Eventually, public WANs
Enterprise networks
Greater control, fewer middle boxes
Home networks
Outsourced management
Cellular Networks
Separation of service from physical infrastructure
Research and Education Networks
National backbones
College campus networks
20
Outline
Background and motivation
What is SDN ?
An open standard- OpenFlow
The applications of SDN
Challenges
Research resource
21
OpenFlow - What is it ?
An open standard for that enables researchers to
run experimental protocols in the campus
networks we use every day
Network
administrators
can
remotely
control forwarding tables by it
Currently being implemented by major vendors
Enabled switches now commercially available
22
OpenFlow
Controller
OpenFlow Switch
SW
Secure
Channel
HW
Flow
Table
PC
23
OpenFlow - Controller
A controller adds and removes flow entries from the
Flow Table on behalf of experiments
• A static controller might be a generalization of
VLANs.
• More sophisticated controllers that dynamically
add/remove flows as an experiment progresses
Researchers might control the complete network of
OpenFlow Switches and be free to decide how all
flows are processed
24
OpenFlow - Switch
Flow Table, with an action associated with each flow
entry, to tell the switch how to process the flow
Secure Channel that connects the switch to controller,
allowing commands and packets to be sent between a
controller and the switch
OpenFlow Protocol, which provides an open and
standard way for a controller to communicate with a
switch
25
OpenFlow - Flow Table Entry
Rule
Action
Stats
Packet + byte counters
1.
2.
3.
4.
Switch MAC
Port
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
26
OpenFlow - Cache flow decisions in datapath
“If header = x, send to port 4”
“If header = y, overwrite header with z, send to ports 5,6”
“If header = ?, send to me”
Flow
Table
27
Deployment Modes
In-network: OpenFlow-enabled network infrastructure
(upgraded or green-field)
Overlay: Legacy network infrastructure with smart edge
devices
New boxes, such as gateways
Enhanced kernel bridge (e.g., OpenVSwitch in x86 hypervisors)
Examples:
In-network: Google uses OpenFlow-enabled controllers switches to
interconnect their data centers
Overlay: AT&T, NTT, eBay, Fidelity Investments, and Rackspace
use OpenStack Quantum and Nicira NVP controller to manage the
virtual networks in their clouds
Hybrid: Genesis hosting uses NEC controller in intra-data-center
28
scenario
Outline
Background and motivation
What is SDN ?
An open standard - OpenFlow
The applications of SDN
Challenges
Research resource
29
Benefits from SDN
Network Virtualization
Switch based Firewall
Multipath Forwarding
Congestion Control
Identify bugs
30
Network Virtualization in SDN
The process of combining hardware and software
network resources to be some virtual networks
31
Virtualization in Traditional Network
L2 virtualization: VLAN
Networks can only support a finite number of
VLANS
32
SDN-based Network Virtualization
Each tenant can run his virtual network with
controller in SDN.
OpenFlow network removes limitations, allowing
administrators to create a flow-based virtual network
abstraction.
Computer virtualization
Network Virtualization
33
SDN-based Network Virtualization
34
Switch based Firewall in SDN
OpenFlow switches can emulate Firewall by
assigning rules to switches. Flow Classifer
H1
Controller
This packet needs to block
Cloud
H2
Block this flow
H3
35
Traditional Switch Path Forwarding
In traditional switches, forwarding packets use
spanning tree algorithm to solve looping problem
36
Multipath Forwarding in SDN
Forwarding by rule and central controller’s decision.
Controller
37
Congestion Control by SDN
Controller can get SDN switches information to know
if congestion happened.
Controller
Controller gets switches status
to decide flow rate
38
Identify Bugs by SDN
Identify bugs with systematically tracking down
their root cause
When an operational network misbehaves, it is very hard to
find the root cause
Allows users to define a Network Breakpoint
Capture and reconstruct the sequence of events leading to
the breakpoint
39
Outline
Background and motivation
What is SDN ?
An open standard - OpenFlow
The applications of SDN
Challenges
Research resource
40
Countries in Trial of SDN
68 Trials in 13 Countries
41
SDN in University of U.S.A
Severing as GENI (Global Environment for Network
Innovations) Networking Substrate
42
Challenges
Complex designing solutions
Limited TCAM size
Controller delay and overhead
Multi-controller working together
Migrating from legacy to SDN
43
SDN - Data-Plane Challenges
State of Specification
Silicon Concerns
Maturity Concerns
OF 1.0 single flow table, … OF 1.1 leverages multiple
tables
Spec is much ahead of silicon development… OF Spec is a
moving target for merchant silicon
Merchant silicon is not optimized for OF… supports of
current networking features is a higher priority
Specific issues
Scalability of Flow-Matches (limited by TCAM size)
Cost concerns
44
SDN – Control-Plane Challenges
Control Plane scalability
Centralized vs. distributed controllers...
Single view of the state of the network, forwarding
tables,… is this a distributed database problem?
Interoperability
SDN/NON-SDN
Inter-Controller
Between different controllers
Orchestrating SDNs managed by different controllers
…
45
SDN- Application-Environments Challenges
Network Resource Abstraction & Conflict Resolution
Resource abstraction
Conflict resolution among different application actions
Development tools and New Application Paradigm
Computing system style application…
New class of Network Programming
Languages… New tools
New development skills… New talents... New education
curriculum…
46
Outline
Background and motivation
What is SDN ?
An open standard - OpenFlow
The applications of SDN
Challenges
Research resources
47
Research Platform for SDN
Mininet
Network OS for Research
Network emulator
Designed for emulating SDN networks
Easy to use
High performance (100 nodes on a laptop)
NOX (C++/Python) http://noxrepo.org
Maestro (Rice University)
Helios (NEC)
Beacon (Java) coming soon, …
Network OS Commerce
ONIX [OSDI 2010, Google, Nicira, NEC]
Expect others
48
OpenFlow Testbed
Candidate controllers:
Nicira’s Nox: C++ and python prototyping
NTT’s Ryu : python more production level
Candidate switches:
Standalone switches
Pica8 (3290): OpenFlow v1.1, a spin-off of Quanta
HP (5400zl): either OpenFlow mode or legacy mode.
NEC(IP8800): either OpenFlow mode or legacy mode.
Pronto: legacy routing stack and OpenFlow enabled features can not
be support in the same VLAN
Brocade (CES/CER/MLX/XMR/MLXe): fully support hybrid mode
PC-based switches (decreasing programmability)
OVS (OpenVSwitch): pure software based OpenFlow enabled data
path
Netronome: network processor PCI card
NetFPGA (Stanford): research oriented cards
49
2011I International Conference on Computer Science an d Network Technology
Thank you !
50