an overview of software-defined network presenter: xitao wen

45
An Overview of Software-Defined Network Presenter: Xitao Wen

Upload: lynette-goodwin

Post on 21-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: An Overview of Software-Defined Network Presenter: Xitao Wen

An Overview of Software-Defined Network

Presenter: Xitao Wen

Page 2: An Overview of Software-Defined Network Presenter: Xitao Wen

Review: How a Router Works

1

23

0111

value in arrivingpacket’s header

routing algorithm

local forwarding tableheader value output link

0100010101111001

3221

* Excerpt from EECS 340 slides

Page 3: An Overview of Software-Defined Network Presenter: Xitao Wen

Inside a Router

Routing Engine

Packet Forwarding Fabric

Input Ports Output Ports

General-purpose CPU

ASIC, or specialized

chips

Page 4: An Overview of Software-Defined Network Presenter: Xitao Wen

Separate Control-plane from Data-plane

Routing Engine

Packet Forwarding Fabric

Input Ports Output Ports

Switch

Controller

Network Protocol over SSL

Page 5: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 6: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 7: An Overview of Software-Defined Network Presenter: Xitao Wen

Roadmap

• Overview• Switch Model• OpenFlow Protocol• Controller

Switch

Controller

OpenFlow Protocol

SwitchSwitch

Switch

Page 8: An Overview of Software-Defined Network Presenter: Xitao Wen

OpenFlow Switch ModelController

OpenFlow Switch

FlowTableFlowTable

SecureChannelSecure

Channel

PCOpenFlow

Protocol

SSL

hw

sw

OpenFlow Switch specification

Page 9: An Overview of Software-Defined Network Presenter: Xitao Wen

Flow Table Entry

SwitchPort

MACsrc

MACdst

Ethtype

VLANID

IPSrc

IPDst

IPProt

TCPsport

TCPdport

Matcher Action Counters

1. Forward packet to port(s)2. Encapsulate and forward to controller3. Drop packet4. Rewrite headers5. Map to queue

+ mask

Packet + byte counters

Page 10: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 11: An Overview of Software-Defined Network Presenter: Xitao Wen

Secure Channel

• SSL Connection, site-specific key• Controller discovery protocol• Encapsulate packets for controller• Send link/port state to controller

Page 12: An Overview of Software-Defined Network Presenter: Xitao Wen

Roadmap

• Overview• Switch Model• OpenFlow Protocol• Controller

Switch

Controller

OpenFlow Protocol

SwitchSwitch

Switch

Page 13: An Overview of Software-Defined Network Presenter: Xitao Wen

OpenFlow Protocol

• Connection– Hello, Echo, Feature, Config…

• Read-State– Statistics, Port-status, Error

• Modify-State– Flow, Group, Config

• Packet-in/Packet-out• Latest version: 1.5.0

Page 14: An Overview of Software-Defined Network Presenter: Xitao Wen

Reactive vs. Proactive (pre-populated)

Page 15: An Overview of Software-Defined Network Presenter: Xitao Wen

Reactive Flow-Push

Page 16: An Overview of Software-Defined Network Presenter: Xitao Wen

Proactive Flow-Push

Page 17: An Overview of Software-Defined Network Presenter: Xitao Wen

Roadmap

• Overview• Switch Model• OpenFlow Protocol• Controller

Switch

Controller

OpenFlow Protocol

SwitchSwitch

Switch

Page 18: An Overview of Software-Defined Network Presenter: Xitao Wen

Key Task of OF Controller

• OpenFlow protocol is largely deltas:– Switch-to-Controller: changes of network state– Controller-to-Switch: changes of configuration

• It is a natural way to write control logic

Page 19: An Overview of Software-Defined Network Presenter: Xitao Wen

Architectural View: Network OS

OF Controller

Operating System

App AppApp App

Switch Switch Switch

Page 20: An Overview of Software-Defined Network Presenter: Xitao Wen

Controller Platforms

• Open Source– OpenDaylight– NOX/POX– Floodlight– Ryu

• Proprietary– BigSwitch– HP– NEC– …

Page 21: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 22: An Overview of Software-Defined Network Presenter: Xitao Wen

THANK YOU!

Page 23: An Overview of Software-Defined Network Presenter: Xitao Wen

BACK-UP

Page 24: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 25: An Overview of Software-Defined Network Presenter: Xitao Wen

The Stanford Clean Slate Program

http://cleanslate.stanford.edu

Experimenter’s Dream(Vendor’s Nightmare)

StandardNetwork

Processing

StandardNetwork

Processinghwsw Experimenter writes

experimental codeon switch/router

User-defined

Processing

User-defined

Processing

Page 26: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 27: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 28: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 29: An Overview of Software-Defined Network Presenter: Xitao Wen

OpenFlow Switch Model

• Hardware– One or more flow tables– Group table (since Spec 1.1)

• Software– Secure Channel

Page 30: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 31: An Overview of Software-Defined Network Presenter: Xitao Wen

The Stanford Clean Slate Program

http://cleanslate.stanford.edu

Furthermore, we want…• Isolation: Regular production traffic untouched• Virtualized and programmable: Different flows

processed in different ways • Equipment we can trust in our wiring closet• Open development environment for all researchers

(e.g. Linux, Verilog, etc). • Flexible definitions of a flow

Individual application trafficAggregated flowsAlternatives to IP running side-by-side…

Page 32: An Overview of Software-Defined Network Presenter: Xitao Wen

Software-Defined Network

Page 33: An Overview of Software-Defined Network Presenter: Xitao Wen

Roadmap

• Overview• Switch Model• OpenFlow Protocol• Controller

Switch

Controller

OpenFlow Protocol

SwitchSwitch

Switch

Page 34: An Overview of Software-Defined Network Presenter: Xitao Wen

Step 1: Separate Control from Datapath

Page 35: An Overview of Software-Defined Network Presenter: Xitao Wen

Step 2: Cache flow decisions in datapath

Page 36: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 37: An Overview of Software-Defined Network Presenter: Xitao Wen

Evolving Protocol

Page 38: An Overview of Software-Defined Network Presenter: Xitao Wen

Current OpenFlow Hardware

Page 39: An Overview of Software-Defined Network Presenter: Xitao Wen

NOX: A Bit of History

• NOX was the first SDN controller• Released under GPL in 2008

– Extensively used in research• Now maintained by research community

Page 40: An Overview of Software-Defined Network Presenter: Xitao Wen

NOX Highlights

• Linux• C++ and Python• Component system• Event-based programming model• Applications:

– Forwarding (reactive), topology discovery, host tracking, …

Page 41: An Overview of Software-Defined Network Presenter: Xitao Wen

NOX

• Centralized programming model• High-level abstraction

Page 42: An Overview of Software-Defined Network Presenter: Xitao Wen

Programming Interface

• Events• Namespace• Libraries

– Routing– Packet classification– DNS– Network filtering

Page 43: An Overview of Software-Defined Network Presenter: Xitao Wen

POX

• A new platform in pure Python– Clean dependencies– Take good things from NOX– Target Linux, Mac OS, and Windows

• Goal: Good for research• Non-goal: Performance

Page 44: An Overview of Software-Defined Network Presenter: Xitao Wen
Page 45: An Overview of Software-Defined Network Presenter: Xitao Wen