openflowswitch.org openflow guru parulkar [email protected] stanford openflow team: nick...

48
OpenFlowSwitch.org OpenFlow Guru Parulkar [email protected] OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Un David Erickson, Adam Covington, Brandon Heller, Rob Sherwood, Masayoshi Kobayashi, Srinivasan Seetharaman, Yiannis Yiakoumis

Upload: beatrix-benson

Post on 13-Jan-2016

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

OpenFlow

Guru [email protected]

Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David Erickson, Adam Covington, Brandon Heller, Rob Sherwood,

Masayoshi Kobayashi, Srinivasan Seetharaman, Yiannis Yiakoumis

Page 2: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Agenda

High Level Rationale OpenFlow Basics OpenFlow Demo Generalization of Flow Separation of Data and Control Paths Virtualized OpenFlow Infrastructure OpenFlow Deployment and Trials

Page 3: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Big Changes on the Horizon Proliferation of mobile wireless

devices, networks, and services

Computing and storage moving into the cloud

Emergence of sensor networks and services

Society’s increasing dependence

Architectural limitations of current network requires change

Each individually can lead to a very different type of

Future Internet infrastructure and services

Page 4: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

4

The Big Picture

Handheld

Energy efficient Secure OS

Secure mobile browser

UI

HW Platform

ApplicationsPocketSchool, Virtual Worlds, Augmented Reality

ApplicationsPocketSchool, Virtual Worlds, Augmented Reality

Data SubstratePRPL Virtual Data System

Data SubstratePRPL Virtual Data System

WEB/Computing SubstrateNetwork of VMs, Mobile VMs

WEB/Computing SubstrateNetwork of VMs, Mobile VMs

Network SubstrateOpenFlow

Network SubstrateOpenFlow

Radio technologyMulti-Gb/s, 99% coverage

Radio technologyMulti-Gb/s, 99% coverage

Econom

icsE

conomics

Page 5: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

5

Key Networking Infrastructures: Problems

Cellular infrastructure -- supports mobility well

Designed for voice and circuit

Too many vertically integrated complex protocol stacks

Closed for (third party) innovations

With proliferation of data services, needs to converge with Internet

Internet -- the default data network infrastructure

Not designed for mobility, security, manageability, …

Supports innovations at the edges but not within the network itself

WiFi networks -- higher data rate at short range

Not designed for cellular style mobility

Allows easier experimentation -- unlicensed band and less expensive

Page 6: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

6

Internet Ossification

Not a conspiracy -- just a fact of life Research community has been staring at this problem for several years

ArchWeaknesses

HighBarrier to

EntryIndustry, IETF, …

Add complexity to addressweaknesses

Resistant to changeLack of data& controlpath sep

Increasinglycomplex

data path

Complex ASICsMassive sw

Page 7: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

7

IP

Diverse physical layers

Diverse transport layers

Flow layerX Y Z

Diverse applications

Ethernet

Diverse link layers

Routing, Mobility, Naming/Addressing,

Access Control, Management,Monitoring…

Allow lots of innovation

OpenFlow Model

Page 8: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Staged Approach

1. Define OpenFlow feature2. Add OpenFlow to commercial switches and APs3. Deploy at Stanford4. 2009: Run NSF-funded trials on 6 college campuses5. 2010: Deploy on many college campus networks

6. Community creates lots of open-source software so researchers can build on each other’s work

(We’re part-way into Stage 2)

Page 9: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Agenda

High Level Rationale OpenFlow Basics OpenFlow Demo Generalization of Flow Separation of Data and Control Paths Virtualized OpenFlow Infrastructure OpenFlow Deployment and Trials

Page 10: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

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 11: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

OpenFlow Basics (2)

Rule(exact & wildcard)

Action Statistics

Small number of fixed actionse.g. unicast, mcast, map-to-queue, drop

Extended via virtual portse.g. tunnels, encapsulate, encrypt

As general as possiblee.g. Port, VLAN ID, L2, L3, L4, …

As wide as possible

Count packets & bytesExpiration time/count

Page 12: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

12

OpenFlow Switch specification

Controller

OpenFlow Switch

FlowTableFlowTable

SecureChannelSecure

Channel

PC

OpenFlow

Protocol

SSL

hw

sw

OpenFlow Basics

• Add/delete flow entries• Encapsulated packets• Controller discovery

API

Net Services

Page 13: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Controller

OpenFlow Switch

PC

OpenFlow UsageDedicated OpenFlow Network

OpenFlow Switch

OpenFlow Switch

OpenFlowProtocol

Chip’s code

Rule Action Statistics

Rule Action Statistics Rule Action Statistics

Chip

Page 14: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Usage examples

Chip’s code: Static “VLANs” His own new routing protocol: unicast, multicast,

multipath, load-balancing Network access control Home network manager Mobility manager Energy manager Packet processor (in controller) IPvChip Network measurement and visualization …

Page 15: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

15

OpenFlow and Mobility

Lots of interesting questions

• Management of flows• Control of switches• Access control of users and devices• Tracking user location and motion

Lots of interesting questions

• Management of flows• Control of switches• Access control of users and devices• Tracking user location and motion

• Lots of radio networks:WiFi, WiMax, LTE, …• Dumb access points • User choice

• Lots of radio networks:WiFi, WiMax, LTE, …• Dumb access points • User choice

Page 16: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

16

Deployment on Stanford campus

• 100 of WiFi APs in 4 buildings & outdoor locations

• A few Mobile WiMAX femto-cellbase stations

• Deployed in this autumn• All are OpenFlow enabled

& connected by OpenFlow switches

• Plan to have a project class in this autumn/winter quarter

WiFi AP (two radios/box)

Mobile WiMAX AP

We are ready for innovation in our network!

Page 17: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

17

OpenFlow Target Domains

Enterprise Original target

Data Center Growing and looking for OpenFlow like solution

Mobile Cellular Convergence of cellular and IP

Backbone Unification of L1-L3 and Circuit and Packet

Page 18: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

OpenFlow Demo

Page 19: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

SIGCOMM 2008 Demo

Page 20: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Agenda

High Level Rationale OpenFlow Basics OpenFlow Demo Generalization of Flow Separation of Data and Control Paths Virtualized OpenFlow Infrastructure OpenFlow Deployment and Trials

Page 21: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

What is a flow?

Application flow All http John’s traffic All packets to China …

Types of action

Allow/deny flow Route & re-route flow Isolate flow Make flow private Remove flow

We need flexible definitions of a flow We don’t need many types of actionSpecific actions should easily evolve

Page 22: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

1.

Unicast

2.Multicast

Page 23: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

4.

Waypoints Middleware Intrusion detection …

3.Multipath Load-balancing Redundancy

Page 24: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Separation of Controlfrom Datapath

Page 25: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

1. Simpler Control & Management

2. Easy evolution Rapid innovation Open-source? Thousands of developers

3. Scales with Moore’s Law

4. Choose ratio of control to datapath

1. Simpler Control & Management

2. Easy evolution Rapid innovation Open-source? Thousands of developers

3. Scales with Moore’s Law

4. Choose ratio of control to datapath

New function!

Operators, users, 3rd party developers, researchers, …

Page 26: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Allow or deny flow?Whose flow is it?

How to route flow?

Page 27: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

DPI

PassiveMeasurement

Try doing this in your network :-)

Page 28: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Agenda

High Level Rationale OpenFlow Basics OpenFlow Demo Generalization of Flow Separation of Data and Control Paths Virtualized OpenFlow Infrastructure OpenFlow Deployment and Trials

Page 29: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Step 1: Separate VLANs for Production and Research Traffic

Normal L2/L3 Processing

Flow Table

Production VLANs

Research VLANs

Controller

Page 30: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Step 2: 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 31: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Virtualizing Control

OpenFlow Switch

OpenFlow Switch

OpenFlow Switch

OpenFlowProtocolOpenFlowProtocol

OpenFlowHypervisor & Policy Control

Craig’sController

Heidi’sControllerAaron’s

Controller

OpenFlowProtocolOpenFlowProtocol

Page 32: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

32

Virtualized OpenFlow Substrate

OpenFlow Switch

OpenFlow Switch

OpenFlow Switch

OpenFlowProtocol

Hypervisor & Policy Control

Aaron’sController

API

Net ServicesHeidi’sController

OpenFlowProtocol

API

Net Services Craig’sController

API

Net Services

Page 33: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Many Open Questions!

Scalability of a controller Load-balancing over redundant controllers Federation, hierarchy and aggregation Protecting the controller against DDOS

Our goal is to enable the research community to explore all these questions

Page 34: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Agenda High Level Rationale OpenFlow Basics OpenFlow Demo Generalization of Flow Separation of Data and Control Paths Virtualized OpenFlow Infrastructure OpenFlow Deployment and Trials

Page 35: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Path to Broader Impact: Networking Substrate Easy to enable this capability on existing products

Don’t need to build our own boxes which is a major barrier

Eight switch vendors enabling this capability Cisco, HP, NEC, Juniper, and others

We are starting to demonstrate the key capabilities ACM SIGCOMM08 GENI Engineering Conference Supercomputing…

We plan to deploy or are deploying on our campus: two buildings at Stanford (HP/Cisco) on other campuses in US and Japan in national nets: US (Internet2, NLR), Japan (JGN2plus), Europe, …

And enable researchers and network operators to innovate on top

Hope OpenFlow takes off -- on a path of no return

Page 36: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Value of OpenFlow to Researchers and CIOs

Experiment with your network ideas at scale in your own network

By developing a network service

In a production network with real users and applications

Something you haven’t been able to do

Try new network management and control ideas in a production network with real users and applications

Liberate yourself from the grips of the vendor

Page 37: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

Goals of OpenFlow Trials Empower researchers and CIOs to create innovative network

services

Trials are less about OpenFlow and more about network services

Innovative network services represent significant opportunities for making contributions and creating value

An opportunity that haven’t existed for many years before

NSF wants to empower its researchers to take advantage of this opportunity

NICT may want to do the same for Japanese researchers

Stanford will be happy to support Japanese trials

37

Page 38: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlow Trial Interest

20 Universities already shown interest And the number is growing

T-Labs in CA and Berlin

DoCoMo Labs in CA

Research networks in Europe

A few campuses in Europe

A few universities from Japan and Korea

Page 39: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

NSF Funded Trials in US: 1st Phase

Six out of 20 campuses interested

Support from CIO and strong research interest

Commitment to deploy in production networks

NSF to provide $300k of seed funding

For equipment and support of network admin in CIO office

Equipment vendors to provide support and subsidiary

NEC and HP committed; Juniper and Cisco are likely too

Stanford to provide reference implementations and support of these reference implementations

Stanford will submit proposal to NSF in January

Trials to begin in April 2009 for 18 months

Page 40: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

http://OpenFlowSwitch.orghttp://OpenFlowSwitch.org

Page 41: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Thanks…

(It takes a village)

Page 42: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Juniper

OpenFlow added to Junos SDK First platform: MX-480 carrier class Ethernet 24-ports 10GE or 240-ports 1GE Hardware forwarding Deployed in Internet2 in NY and at Stanford

Umesh Krishnaswamy

MichaelaMezo

ParagBajaria

JamesKelly

BobbyVandalore

Page 43: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

HP

Experimental feature on ProCurve 5400-series 144-ports of 1GE, hardware forwarding OpenFlow added by HP Labs and ProCurve group In 23 wiring closets in CS Building at Stanford

Praveen Yalagandula

Jean Tourrilhes

SujataBanerjee

Rick McGeer

CharlesClark

Page 44: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

NEC

Experimental feature on IP8800 series router 24-ports of 1GE, 2-ports of 10GE, hardware

forwarding OpenFlow added by NEC team in Japan NEC announced plans for OpenFlow products Deployed at Stanford and in JGN2plus in Tokyo

HideyukiShimonishi

JunSuzuki

MasanoriTakashima

NobuyukiEnomoto

PhilavongMinaxay

ShuichiSaito

TatsuyaYabe

YoshihikoKanaumi

NEC/NICT NEC/NICT

AtsushiIwata

Page 45: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Cisco

Experimental feature on Catalyst 6509 Software forwarding Deployed at Stanford

QuickTime™ and a decompressor

are needed to see this picture.

QuickTime™ and a decompressor

are needed to see this picture.

FlavioBonomi

SaileshKumar

PereMonclus

Page 46: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Nicira

MartinCasado

ScottShenker

TeemuKoponen

NatashaGude

JustinPettit

Created NOX controller Available at http://NOXrepo.org (GPL) Deployed at Stanford

Controller

Page 47: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.org

Internet2 Team

Chris Small Matt Zekauskas Installing Juniper MX-480 in NY

Page 48: OpenFlowSwitch.org OpenFlow Guru Parulkar parulkar@stanford.edu Stanford OpenFlow team: Nick McKeown, Guido Appenzeller, Glen Gibb, David Underhill, David

OpenFlowSwitch.orgStanford Team