- 高速通訊與計算實驗室

advertisement
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
Download