OpenFlow Workshop APAN FIT Workshop Hong Kong APAN FIT Workshop Hong - - PowerPoint PPT Presentation

openflow workshop
SMART_READER_LITE
LIVE PREVIEW

OpenFlow Workshop APAN FIT Workshop Hong Kong APAN FIT Workshop Hong - - PowerPoint PPT Presentation

OpenFlow Workshop APAN FIT Workshop Hong Kong APAN FIT Workshop Hong Kong Chris Small Indiana University Feb 22 2011 Sections Sections OpenFlow concepts, hardware and software l h d d f OpenFlow use cases Network Operators


slide-1
SLIDE 1

OpenFlow Workshop

APAN FIT Workshop ‐ Hong Kong APAN FIT Workshop Hong Kong Chris Small – Indiana University Feb 22 2011

slide-2
SLIDE 2

Sections Sections

l h d d f

  • OpenFlow concepts, hardware and software
  • OpenFlow use cases

– Network Operators View – Network Operators View

D

  • Demos
  • Discussion
slide-3
SLIDE 3

Operations Operations

h d h d l O l

  • Focus on why and how to deploy a OpenFlow

network

– Someone deploying OpenFlow Apps not necessarily building them C t – Concepts – Nuts and Bolts – What software is availible

  • Resources for OpenFlow

h // fl i h / k/i d h /H http://www.openflowswitch.org/wk/index.php/H OTITutorial2010

slide-4
SLIDE 4

Keys to Openflow/Software‐Defined Networking

S i f C l l & l i h

  • Separation of Control Plane & Data Plane with

Open API Between the Two

  • Logically Centralized Control‐Plane with Open API

to Applications

  • Network Slicing/Virtualization
  • Creates Open Interfaces between Hardware, OS

and Applications Similar to Computer Industry and Applications Similar to Computer Industry

  • Increases Competition, Enables Innovation
slide-5
SLIDE 5

So why interesting to operations? So why interesting to operations?

  • Researchers can use to OpenFlow to explore

new network ideas

– Quick turn around from idea to deployment

  • Operators also can use OpenFlow to build (or
  • Operators also can use OpenFlow to build (or

eventually purchase) interesting apps

– “À la carte” networking – Inexpensive hardware p – Provide an infrastructure

slide-6
SLIDE 6

App App App

Network Operating System

App App App

Ap p Ap p Ap p

Operating System

Ap p Ap p Ap p

Specialized Packet Forwarding Hardware Specialized Packet di d

Ap p Ap p Ap p

Operating System Specialized Packet Forwarding Hardware Forwarding Hardware Operating System Operating System

Ap p Ap p Ap p Ap p Ap p Ap p

Specialized Packet Forwarding Hardware Operating S t System Specialized Packet Forwarding Hardware System

Slide from Nick McKeown at Stanford

slide-7
SLIDE 7

The “Software‐defined Network”

App App App

  • 3. Well‐defined open API
  • 2. At least one good operating system

Extensible, possibly open‐source

App App App

Network Operating System

  • 1. Open interface to hardware

Simple Packet Forwarding Hardware Simple Packet Forwarding H d Simple Packet Forwarding Hardware Hardware Simple Packet Forwarding Hardware Hardware Simple Packet Forwarding Hardware

Slide from Nick McKeown at Stanford

slide-8
SLIDE 8

Trend Trend

App App App App App App

Windows (OS) Windows (OS)

Linux Mac OS

Windows (OS)

Linux Linux Mac OS Mac OS

Controller 1 Controller 2 Controller 1 NOX

(Network OS)

Controller 2 Network OS

( )

Virtualization layer Virtualization or “Slicing”

x86 (Computer) OpenFlow

Computer Industry Network Industry Slide from Nick McKeown at Stanford

slide-9
SLIDE 9

OpenFlow Basics

slide-10
SLIDE 10

OpenFlow Basics (1) OpenFlow Basics (1)

Rule ( t & ild d) Action Statistics

Exploit the flow table in switches, routers, and chipsets

Flow 1.

(exact & wildcard) Rule (exact & wildcard) Action Statistics

Flow 2.

(exact & wildcard) Rule (exact & wildcard) Action Statistics

Flow 3.

Rule (exact & wildcard) Default Action Statistics

Flow N. OpenFlowSwitch.org

slide-11
SLIDE 11

OpenFlow Basics (2) OpenFlow Basics (2)

Rule A ti St ti ti (exact & wildcard) Action Statistics

As general as possible

e.g. Port, VLAN ID, L2, L3, L4, …

As wide as possible Count packets & bytes Expiration time/count Small number of fixed actions e.g. unicast, mcast, map‐to‐queue, drop Extended via virtual ports p e.g. tunnels, encapsulate, encrypt

slide-12
SLIDE 12

Flow Table Entry

OpenFlow 1.0 Switch Rule Action Stats

Packet + byte counters

  • 1. Forward packet to port(s)
  • 2. Encapsulate and forward to controller

p

  • 3. Drop packet
  • 4. Send to normal processing pipeline

Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport + mask + mask

slide-13
SLIDE 13

OpenFlow Basics (3)

OpenFlow Switch specification

Controller

p

p p

OpenFlow Switch

PC

Secure Channel

sw Flow hw

Add/delete flow entries Encapsulated packets

Table hw

Controller discovery OpenFlowSwitch.org

slide-14
SLIDE 14

OpenFlow Usage

Dedicated OpenFlow Network

Controller

Dedicated OpenFlow Network

Chip’s code

PC

OpenFlow Switch

Chip s code

Rule Action Statistics

OpenFlow Protocol

OpenFlow Switch OpenFlow Switch

Rule Action Statistics Rule Action Statistics

Switch Switch

OpenFlowSwitch.org Chip

slide-15
SLIDE 15

What to do with OpenFlow ? What to do with OpenFlow ?

  • 1k‐3k TCAM Entries in Typical Edge

Switch

  • Difficult to take advantage of:

Difficult to take advantage of:

– Manual Config, SNMP Writes, RADIUS Li it d A ti ( ll /d ) – Limited Actions (allow/deny) – Vendor Specific

  • But what if you could program these

through a standard API ? through a standard API ?

slide-16
SLIDE 16

Possible Uses of Openflow (Quick Wins)

  • Security Applications

– NAC – IDS/IPS Remote Packet Capture & Injection – Remote Packet Capture & Injection

  • VM Mobility

– Redirect specific application traffic to remote site – Flow‐based forwarding – no need to extend entire Flow based forwarding no need to extend entire broadcast domain – no STP issues

slide-17
SLIDE 17

Other Applications Other Applications

  • Load Balancing

g

  • n‐cast

l l l k – multiple streams over lossy networks

  • Policy (Firewall)

y ( )

– SNAC

  • Flow based network provisioning
  • Flow based network provisioning
slide-18
SLIDE 18

Intercontinental VM Migration

Moved a VM from Stanford to Japan without changing its IP. VM hosted a video game server with active network connections.

slide-19
SLIDE 19

Possible Uses of Openflow p (Quick Wins)

  • Dynamic Circuit Provisioning

– Don’t need to extend layer‐2 end‐to‐end y – Simply direct specific flows down a engineered path with guaranteed priority path with guaranteed priority – Don’t have to rely on scripted SSH sessions, SNMP

  • r other sub optimal ways to programmatically
  • r other sub‐optimal ways to programmatically

configure switches/routers.

slide-20
SLIDE 20

Possible Uses of Openflow p (Grand Challenges)

  • Distributed Control‐Plane Architecture

Requires a Lot of State to be Synchronized q y Across Many Devices

  • Many Protocols Needed for Synchronization
  • Many Protocols Needed for Synchronization

Internally to Networks (OSPF, RSVP, STP, etc)

  • Can these “internal” protocols eventually be

removed entirely with only BGP for inter‐ removed entirely with only BGP for inter domain route advertisements ?

slide-21
SLIDE 21

OpenFlow Paradigm shifts OpenFlow Paradigm shifts

  • “Wireless like” management of wired switches
  • Manipulate virtual switches over many

Manipulate virtual switches over many physical devices

VM Mi ti d – VM Migration demo

  • OSI model breakdown
  • Control at the flow level
slide-22
SLIDE 22

Deployments

slide-23
SLIDE 23

GENI GENI

  • GENI OpenFlow deployment on 8 campuses
  • Internet2 and NLR backbones

Internet2 and NLR backbones

  • Integrated with Production hardware on

campuses

  • Backbone, Regionals (funded in GENI

, g ( Solicitation 3) and Campuses interconnected O t h t i f t ?

  • Outreach to more campuses in future?
slide-24
SLIDE 24

Internet2 and NLR Internet2 and NLR

  • Internet2

– Backbone of 5 NEC IP8800 – Multiple 1G connections (in each direction) L2circuits between sites – L2circuits between sites

  • NLR

– Backbone of 5 HP 6600‐24XG – 10 G wave between sites 10 G wave between sites

slide-25
SLIDE 25

NLR – I2 OpenFlow Core p

OpenFlow Core Connectivity v.1.0

IU BBN I2 WASH I2 NEWY NLR CHIC NLR DENV I nt ernet 2 N LR I2 ATLA NLR ATLA I2 HOUS I2 LOSA NLR SUNN NLR SEAT VLAN 3715 VLAN 3716 U of Wash Stanford

slide-26
SLIDE 26

IU Campus Deployment IU Campus Deployment

  • Focused on Edge (Closet) Deployment
  • Goals:

Goals:

– Stress‐Test Current Implementations V if “S db i ” f O fl – Verify “Sandboxing” of Openflow – Develop Monitoring Tools – Prepare for Production Deployments

slide-27
SLIDE 27

IU Deployment IU Deployment

  • HP switches in Testlab and Production

– 4 6600s in Bloomington testlab g – 1 5406in Testlab/Wireless 2 5406 used by Engineering – 2 5406 used by Engineering – 3500 in Gigapop

  • Pronto switches (w/ Purdue Calumet)
  • NetGear switches
  • NetGear switches
  • NetFPGA 10G and 1G?
slide-28
SLIDE 28
slide-29
SLIDE 29
slide-30
SLIDE 30

3 New EU Projects: OFELIA, SPARC, CHANGE

slide-31
SLIDE 31

EU Project Participants EU Project Participants

  • Germany

– ACREO AB (Sweden)

  • Germany

– Deutsch Telekom Laboratories – Technishche Universitat Berlin – European Center for ICT – ACREO AB (Sweden) – Ericsson AB Sweden (Sweden)

  • Hungary

– Ericsson Magyarorszag p – ADVA AG Optical Networking – NEC Europe Ltd. – Eurescom

U it d Ki d

gy g Kommunikacios Rendszerek KFT

  • Switzerland

D l b T h l i

  • United Kingdom

– University of Essex – Lancaster University – University College London – Dreamlab Technologies – Eidgenossische Technische Hochschule Zurich

  • Italy

University College London

  • Spain

– i2CAT Foundation – University of the Basque

Italy

– Nextworks – Universita` di Pisa

  • Belgium

y q Country, Bilbao

  • Romania

– Universitatea Politehnica B ti

g

– Interdisciplinary Institute for Broadband Technology – Universite catholique de L i Bucuresti

  • Sweden

Louvain

slide-32
SLIDE 32

OpenFlow Deployment in Japan OpenFlow Deployment in Japan NEC and JGN2Plus (NICT)

32

  • Network virtualization and slicing
  • HD video distribution in different slices

– Baseball game – Snow festival

slide-33
SLIDE 33

Global Interest Global Interest

slide-34
SLIDE 34

Current Trials and Deployments p y

68 Trials/Deployments ‐ 13 Countries

slide-35
SLIDE 35

Current Trials and Deployments

USA‐Academia Stanford University, CA

Current Trials and Deployments

USA‐Industry Internet2 y, University of Washington, WA Rutgers University, NJ Princeton University, NJ Internet2 Cisco Juniper HP Clemson University, SC Georgia Tech, GA University of Wisconsin at Madison, WI Indiana University Ciena Deutsche Telekom R&D Lab Marvell B d Indiana University ICSI Berkeley, CA University of Massachusetts at Lowell Clarkston University Broadcom Google Unnamed Data Center Company Toroki y Columbia University (course offered) University of Kentucky UC San Diego Toroki Nicira Big switch networks Orange Labs UC Davis iCAIR/Northwestern Rice University Purdue University g USA‐Government BBN d d l Purdue University Northern Arizona University Unnamed Federal Agency

slide-36
SLIDE 36

Current Trials and Deployments

Brazil

University of Campinas Federal University of Rio de Janeiro

Current Trials and Deployments

Japan

NEC JGN Plus Federal University of Rio de Janeiro Federal University of Amazonas Foundation Center of R&D in Telecomm.

Canada

JGN Plus NICT University of Tokyo Tokyo Institute of Technology University of Toronto

Germany

T‐Labs Berlin Leibniz Universität Hannover Kyushu Institute of Technology NTT Network Innovation Laboratories KDDI R&D Laboratories Unnamed University Leibniz Universität Hannover

France

ENS Lyon/INRIA

India South Korea

KOREN Seoul National University Gwangju Institute of Science & Tech VNIT Mahindra Satyam

Italy

Politecnico di Torino Gwangju Institute of Science & Tech Pohang University of Science & Tech Korea Institute of Science & Tech ETRI Ch N ti l U i it

United Kingdom

University College London Lancaster University University of Essex Chungnam National University Kyung Hee University

Spain

University of Granada University of Essex

Taiwan

National Center for High‐Performance Computing Chunghwa Telecom Co y

Switzerland

CERN

slide-37
SLIDE 37

OpenFlow and GENI OpenFlow and GENI

8 Universities, GPO/BBN, & 2 National Backbones

slide-38
SLIDE 38

OpenFlow Concepts Hardware OpenFlow Concepts, Hardware and Software

slide-39
SLIDE 39

OpenFlow Hardware OpenFlow Hardware

NEC IP8800 Juniper MX‐series WiMax (NEC) Cisco Catalyst 6k HP Procurve 5400 PC Engines More Equipment Soon Quanta LB4G Netgear

slide-40
SLIDE 40

Controllers Controllers

  • The Network “OS”

The Network OS

  • Open Source

– NOX NOX

  • Nicira
  • C++/Python

C ll

App App

ll

App

– Beacon

  • BigSwitch

– Maestro

Controller 1 Controller 2 Controller 1 NOX

(Network OS)

Controller 2 Network OS

– Maestro

  • Rice
  • Commercial

Virtualization or “Slicing”

OpenFlow

Commercial

– NEC

OpenFlow

slide-41
SLIDE 41

Applications Applications

  • Use controller software to

Use controller software to build applications

  • Possible operational uses

– Layer 2 provisioning

– Layer 3 routing d l

C ll

App App

ll

App

– Load Balancing – Distributed Firewall M it i / IDS

Controller 1 Controller 2 Controller 1 NOX

(Network OS)

Controller 2 Network OS

– Monitoring / IDS

  • Research use on

production networks

Virtualization or “Slicing”

OpenFlow

production networks

OpenFlow

slide-42
SLIDE 42

Flowvisor Flowvisor

  • Sends traffic from the same switch(es) to

multiple controllers p

  • Acts like a Hypervisor for network equipment

R l i il O Fl l h d

  • Rule set similar to OpenFlow rules that send

traffic to multiple controllers

  • Most research shared infrastructure will use

Flowvisor to have multiple controllers control Flowvisor to have multiple controllers control the same switches

slide-43
SLIDE 43

Fvctl Fvctl

F tl d t t l fl i ( XMLRPC)

  • Fvctl used to control flowvisor (over XMLRPC)
  • Can create slice, direct traffic to “slices”, see
  • Flowspace is the set of mapping rules
  • Flowspace is the set of mapping rules
  • Devices Identified by DPID

chsmall@flowvisor:~$ fvctl listDevices Device 0: 0e:83:00:23:47:c8:bc:00 Device 1: 0e:83:00:26:f1:40:a8:00 Device 1: 0e:83:00:26:f1:40:a8:00

chsmall@flowvisor:~$ fvctl listFlowSpace l 0 rule 0: FlowEntry[dpid=[all_dpids],ruleMatch=[OFMatch[]],actionsList=[Slice:meas_manager=4],id=[236] ,priority=[10],]

slide-44
SLIDE 44

SNAC SNAC

  • Simple Network Policy Controller
  • Web‐Based Policy manager

Web Based Policy manager

  • IU production SNAC at snac‐prod.grnoc.iu.edu
  • Can provide distributed firewall services
  • Some statistics collected

Some statistics collected

slide-45
SLIDE 45
slide-46
SLIDE 46
slide-47
SLIDE 47
slide-48
SLIDE 48

Expedient / Opt In manager Expedient / Opt‐In manager

  • Software to tie campus OpenFlow

deployments to GENI Infrastructure. p y

  • Allows Aggregate Providers (Campus) to make

a “sliver” of a switch available to researchers a sliver of a switch available to researchers

  • Integrates with Flowvisor XMLRPC interface

and GENI AAA infrastructure

– http://www.openflowswitch.org/foswiki/bin/view/OpenFlow/Deployment/HO WTO/ProductionSetup/InstallingExpedientOIM

slide-49
SLIDE 49

NetFPGA and Indigo NetFPGA and Indigo

  • NetFPGA

– FPGA card to test protocols in hardware – 4 x 1G and 4 x 10G models – OpenFlow 1.0 implementation – Google used it for testing OpenFlow‐MPLS code

  • http://www.nanog.org/meetings/nanog50/presentations/Monday/NANOG50.Talk1

7 swhyte Opensource LSR Presentation pdf 7.swhyte_Opensource_LSR_Presentation.pdf

  • Indigo

U Fi R f R l – Userspace Firmware Reference Release – Support for Broadcom chips used in Pronto/Quanta

slide-50
SLIDE 50

Switch Issues Switch Issues

H S l

  • Hw vs Sw rules
  • Optional items in OF Spec

ll l h – No one is really implementing rewrite right now

  • Control Channel resource exhaustion

h l

  • CPU exhaustion and isolation

– Preventing OF traffic affecting production vlans

  • Security
  • 48bit vs 64 bit DPIDs
  • General strangeness

– HPs built off live train, NEC uniqueness

slide-51
SLIDE 51

Issues Issues

  • Inter‐operation of different hardware and

software

– Optional items in OF Spec

  • Resource exhaustion on switches (CPU
  • Resource exhaustion on switches (CPU,

Control channel)

– Preventing OF traffic affecting production vlans

  • Security

Security

  • IPv6 Support
slide-52
SLIDE 52

OpenVSwitch

h // i h http://openvswitch.org VM‐aware virtual switch, run distributed over hardware;

(

G "R(0$ E .: O( ( $ (

OpenFlow

1 2' +(T!$ E .: O(

VF ( VF ( VF ( Linux, Xen

slide-53
SLIDE 53

OpenFlow Spec process

http://openflow.org

  • V1.0: December 2009
  • V1.1: November 2010

– Open but ad‐hoc process among 10‐15 companies

  • Future
  • Future

Planning a more “standard” process from 2011

slide-54
SLIDE 54

Measurement Manager

slide-55
SLIDE 55

Measurement Manager Measurement Manager

f b il b di i i f

  • Software built by Indiana University for

monitoring OpenFlow networks

  • Ties into Flowvisor to get list of devices and

topology (using LLDP) p gy ( g )

  • Acts as OF Controller to gather statistics
  • Outputs formats for other tools
  • Outputs formats for other tools

– Nagios (Alarms) – GMOC (Topology) – SNAPP (Measurement Collector)

slide-56
SLIDE 56
slide-57
SLIDE 57

Measurement Manager Measurement Manager

GENI Projects GENI Experimenters Aggregate Operators M easurem ent Measurement Monitor Model Builder Plugins M easurem ent M anager Plugins Measurement Monitor Model Builder OpenFlow messages XMLRPC Opt-In API p g p

slide-58
SLIDE 58

What will can do with OpenFlow ? What will can do with OpenFlow ?

  • 1k‐3k TCAM Entries in Typical Edge

Switch

  • Difficult to take advantage of:

Difficult to take advantage of:

– Manual Config, SNMP Writes, RADIUS Li it d A ti ( ll /d ) – Limited Actions (allow/deny) – Vendor Specific

  • But what if you could program these

through a standard API ? through a standard API ?

slide-59
SLIDE 59

Possible Uses of Openflow (Quick Wins)

  • Security Applications

– NAC – IDS/IPS Remote Packet Capture & Injection – Remote Packet Capture & Injection

  • VM Mobility

– Redirect specific application traffic to remote site – Flow‐based forwarding – no need to extend entire Flow based forwarding no need to extend entire broadcast domain – no STP issues

slide-60
SLIDE 60

Other Applications Other Applications

  • Load Balancing

g

  • n‐cast

l l l k – multiple streams over lossy networks

  • Policy (Firewall)

y ( )

  • Flow based network provisioning
slide-61
SLIDE 61

Intercontinental VM Migration

Moved a VM from Stanford to Japan without changing its IP. VM hosted a video game server with active network connections.

slide-62
SLIDE 62

Possible Uses of Openflow p (Quick Wins)

  • Dynamic Circuit Provisioning

– Don’t need to extend layer‐2 end‐to‐end y – Simply direct specific flows down a engineered path with guaranteed priority path with guaranteed priority – Don’t have to rely on scripted SSH sessions, SNMP

  • r other sub optimal ways to programmatically
  • r other sub‐optimal ways to programmatically

configure switches/routers.

slide-63
SLIDE 63

Possible Uses of Openflow p (Grand Challenges)

  • Distributed Control‐Plane Architecture

Requires a Lot of State to be Synchronized q y Across Many Devices

  • Many Protocols Needed for Synchronization
  • Many Protocols Needed for Synchronization

Internally to Networks (OSPF, RSVP, STP, etc)

  • Can these “internal” protocols eventually be

removed entirely with only BGP for inter‐ removed entirely with only BGP for inter domain route advertisements ?

slide-64
SLIDE 64

OpenFlow Paradigm shifts OpenFlow Paradigm shifts

  • “Wireless like” management of wired switches
  • Manipulate virtual switches over many

Manipulate virtual switches over many physical devices

VM Mi ti d – VM Migration demo

  • OSI model breakdown
  • Control at the flow level
slide-65
SLIDE 65

Workshop Demos Workshop Demos

Mi i t I t d ti T t i l VM

  • Mininet Introduction – Tutorial VM

– http://www.openflowswitch.org/wk/index.php/HOTIT utorial2010 utorial2010

  • Multiple switch control using single CLI
  • VM Migration Demo
  • VM Migration Demo

– Moving a VM between subnets – Simplified version of other VM migration demos Simplified version of other VM migration demos

  • Measurement Manager showing Backbone

Deployments Deployments

– Topology and Statistic collection in a controller based environment

slide-66
SLIDE 66

Mininet Demo Mininet Demo

slide-67
SLIDE 67

Single CLI Demo Single CLI Demo

  • Run a CLI commands over multiple physical

Run a CLI commands over multiple physical switches

  • Manipulate flow rules to block certain traffic

p

slide-68
SLIDE 68

VM Migration Demo VM Migration Demo

OpenFlow switch OpenFlow switch VM

Subnet 192.168.99/24 Subnet 192.168.100/24 VM 192.168.99.1 Indianapolis Bloomington

slide-69
SLIDE 69

Measurement Manager Demo Measurement Manager Demo

  • Topology – using Google Earth

– http://gmoc‐db.grnoc.iu.edu p //g g – Select OpenFlow Aggregate

N i d t ll ti

  • Nagios data collection

– http://gmoc‐db.grnoc.iu.edu/nagios

  • SNAPP Statistics

http://gmoc db grnoc iu edu/nlr of/ – http://gmoc‐db.grnoc.iu.edu/nlr‐of/

slide-70
SLIDE 70
slide-71
SLIDE 71

How to get involved How to get involved

  • Experiment with Controllers

– NOX: http://noxrepo.org p // p g – Beacon: http://www.openflowhub.org/

S it h

  • Switches

– Soft switches / Mininet – Hardware switches you already may have – Deploy Applications Deploy Applications

slide-72
SLIDE 72

More Information sources More Information sources

  • OpenFlow

– http://openflowswitch.org p // p g

M t t i f

  • My contact info

Chris Small ‐‐ Indiana University y E‐mail: chsmall@indiana.edu

slide-73
SLIDE 73

Discussion and Questions?