SlideShare une entreprise Scribd logo
1  sur  61
OpenFlow
S. Kingston Smiler
kingstonsmiler@gmail.com
Course Objective
Need for OpenFlow
The OpenFlow® Protocol message structures, features etc
Open Flow life of a Packet
Different Tables in OpenFlow
Packet Capture of different Openflow Packets
Hands-on
Problems
3
 Closed Systems with no or very minimal abstractions
in the network design.
 Hardware centric – usage of custom ASICs with
Vendor Specific Software.
 Difficult to perform real world experiments on large
scale production networks.
 No standard abstractions towards north bound and
south bound interfaces, even though we have
standard abstractions in the east / west bound
interface with peer routers / switches.
Need for OpenFlow
 Facilitate Innovation in Network
 Layered architecture with Standard Open Interfaces
 Independent innovation at each layer
 More accessibility since software can be easily developed by
more vendors
 Speed-to-market – no hardware fabrication cycles
 More flexibility with programmability and ease of customization
and integration with other software applications
 Fast upgrades
 Program a network vs Configure a network
4
OpenFlow
 OpenFlow is a protocol which enables programmability of the
forwarding plane
 OpenFlow is like an x86 instruction set for the network nodes.
 Provides open interface to “black box” networking node (ie.
Routers, L2/L3 switch) to enable visibility and openness in
network
 Separation of control plane and data plane.
 The datapath of an OpenFlow Switch consists of a Flow Table, and an
action associated with each flow entry
 The control path consists of a controller which programs the flow entry
in the flow table
SDN and Open Flow
OpenFlow
General Myth
 SDN is Open Flow
Reality
 OpenFlow is an open API that provides a standard
interface for programming the data plane switches
7
OpenFlow Specification History
OpenFlow Specification History
Traditional Switch Forwarding
10Source: Adopted from ONF11 presentation by Martin Casado
OpenFlow Switch Forwarding
11Source: Adopted from ONF11 presentation by Martin Casado
Open Flow Illustration
Source: Adopted from ONF11 presentation by Martin Casado
Components of OpenFlow
13
* Figure From OpenFlow Switch Specification
OpenFlow Packet Flow
14
Controller
OpenFlow Switch
Flow
Table
Secure
Channel
PC
hw
sw
OpenFlow Switch specification
Components of OpenFlow Network
15
* Figure From OpenFlow Switch Specification
OpenFlow Controller
 Manages one or more switch via OpenFlow channels.
 Uses OpenFlow protocol to communicate with a OpenFlow
aware switch.
 Acts similar to control plane of traditional switch.
 Provides a network wide abstraction for the applications on
north bound.
 Responsible for programming various tables in the OpenFlow
Switch.
 Single switch can be managed by more than one controller for
load balancing or redundancy purpose. In this case the
controller can take any one of the following roles.
 Master.
 Slave.
 Equal.
16
OpenFlow Controller
 OpenSource
 OpenDayLight
 Floodlight
 RYU
 NOX/POX
 ONOS
 Commercial Controllers
 Cisco APIC
 VMware NSX Controller
 HP VAN SDN Controller
 NEC ProgrammableFlow PF6800 Controller
 Nuage Networks Virtualized Services Controller
(VSC)
17
OpenFlow Channel
 Used to exchange OpenFlow message between switch and
controller.
 Switch can establish single or multiple connections to same or
different controllers (auxiliary connections).
 A controller configures and manages the switch, receives
events from the switch, and send packets out the switch via
this interface
 The SC connection is a TLS/TCP connection. Switch and
controller mutually authenticate by exchanging certificates
signed by a site-specific private key
18
OpenFlow Messages
 Three Message Types
 Controller to Switch
 Asynchronous Message
 Asymmetric Message
 Controller to Switch
 Feature Request
 Configuration
 Modify State
 Packet Out etc.
 Asynchronous
 Packet-in
 Flow Removed
 Port Status
 Error etc.
 ASymmetric
 Hello
 Echo
 Experimenter etc
19
Initial Connection Setup
20
OpenFlow – Hello ( From Switch to Controller)
OpenFlow – Hello ( From Controller to Switch)
OpenFlow – Feature Request (From Controller to Switch)
OpenFlow – Feature Reply (From Switch to Controller)
OpenFlow – Role Request (From Controller to Switch)
OpenFlow – Role Reply (From Switch to Controller)
OpenFlow – Packet IN (From Switch to Controller)
OpenFlow – Flow Config (From Switch to Controller)
OpenFlow Switch
 Types of the switches:
 Open-flow only
 Open-flow hybrid
29
 Major Components
 Ports
 Flow Table
 Group Table
 Meter Table
OpenFlow Ports
 Network interfaces for passing packets between Openflow
Processing and the rest of the Network.
 Types of Ports:
 Physical Ports
• Switch defined ports
• Eg. Physical ports map one to one Ethernet interfaces
 Logical Ports
• Switch defined ports that don’t correspond to a hardware interface
of switch
• Logical ports include “Tunnel-ID”.
 Reserved Ports
• Defined by OpenFlow Spec
• Specifies generic forwarding actions such as sending to the
controller, flooding and forwarding using non-openflow methods
30
Pipeline Processing
31
* Figure From OpenFlow Switch Specification
Flow Table Components
32
* Figure From OpenFlow Switch Specification
Flow Entry
33
* Figure From OpenFlow Switch Specification
Openflow Table Instructions
 Instructions are executed when a packet matches entry.
 Instruction result can
 Change the packet
 Action set
 Pipeline processing etc.
 Sample Instruction Types
 Meter ID - Direct a packet to the meter id.
 Apply-Actions - Apply a specific action immediately
 Clear-Actions - Clear all the actions in the action set
 Write-Actions - Add a new action into the existing action set
 Write-Metadata - Write the masked meta data value
 Goto-Table - Indicate the next table in the processing pipeline
34
Action Set & Action List
 Action Set
 Action set is associated with each packet. FE modify the action set using
write-action/ clear-action
 Actions in the action-set will be executed when pipeline is stopped
 Action set contains maximum of one action of each type. If multiple actions
of the same type need to be added then use “Apply-Actions”
 Action List
 “Apply-action” , “packet-out” messages include action list
 Execute an action immediately
 Actions are executed sequentially in the order they have been specified
 If action list contains an output action, a copy of the packet is forwarded in
its current state to the desired port
 Action-set shouldn’t be changed because of action-list
35
Action
 Action
 What to do with the packet when match criteria matches with the packet
 Some of the Action Type
• Output - Fwd a pkt to the specified open flow port (physical/ logical/reserved)
• Set Queue - Determines which queue should be used for scheduling and forwarding packet
• Drop - Packets which doesn’t have output action should be dropped
• Group - Process the packet through specified group
• Push-Tag/ Pop-Tag - Insert VLAN, MPLS, PBB tage
• Set-Field - Rewriting a field in the packet header
• Change TTL - Decrement TTL
• Copy TTL inwards – apply copy inward actions to the packet
• Push MPLS – apply MPLS tag push action to the packet
• Push PBB – apply PBB tag push action to the packet
36
Flow Entry (Contd…)
 Each Flow Entry contains an
optional Idle and Hard Timeout
field.
 Switch removes entry and
sends flow removed message
to controller when,
 No packets have matched
within the Idle Timeout
 The flow was inserted more
than the Hard Timeout.
 The timeouts are optional
37
Flow Entry Timeouts
Flow Entry (Contd…)
38
Reactive Flows Proactive Flows
First packet of flow is sent to controller
for processing
Controller pre-populates flow table in
switch.
Controller evaluates packet and sends
Flow message to switch insert a flow
table entry for the packet
Zero set-up time for new flows
Subsequent packets (in flow) match
the entry until idle or hard timeout
Switch in Proactive forwarding ‘only’
would default to action=drop
Loss of connectivity between switch
and controller limit utility of switch
Loss of connection between switch and
controller does not disrupt network
traffic
Instruction Execution in Flow Table
39
* Figure From OpenFlow Switch Specification
Group Table
 Additional method for forwarding to a group of entries.
 Comprises of Group ID, Group Type, Counters, Action buckets (each
action bucket contains a set of actions to be executed)
 Group Types:
 All
• Execute all buckets in a group
• Used mainly for multicast and broadcast – fwd a pkt on all the ports
 Select
• Execute one bucket in a Group ( Eg. ECMP packets)
• Implemented for load sharing and redundancy
 Indirect
• Execute one defined bucket in this Group
• Supports only a single bucket ( Eg. 40K routes are pointing to same next hop)
 Fast failover
• Execute the first live bucket
• Eg. There is a primary path and secondary path – pass the traffic on primary path
and if it fails use the secondary one
40
Group Table
41
Instruction Execution in Group Table
42
* Figure From OpenFlow Switch Specification
Meter Table
 Consists of meter entries and defining per-flow meters.
 Per-flow meters enable OF to implement QoS operations (rate-
limiting)
 Components of Meter table:
 Meter ID, Meter Band, Counters
 Meters measures the rate of packets assigned to it and enable
controlling the rate of those packets
 Meters are attached directly to flow entries
 Meter band: unordered list of meter bands, where each meter band
specifies the rate of the band and the way to process packet
 Components of Meter band:
 Band Type, Rate, Counters, Type specific arguments
 Band Type : defined how to process a packet (drop/ dscp remark)
43
Meter Table
44
* Figure From OpenFlow Switch Specification
Packet Flow in OpenFlow Switch
45
* Figure From OpenFlow Switch Specification
OpenFlow Features Vs Specification
LAB Exercise
Course Objective
How to run ODL Contoller
How to run ODL features and getting UI
How to run Mininet
Topology detection of mininet Network
Packet Capture of different Openflow Packets
Ping and test the Network
How to start OpenDayLight Controller
 Run the given VM in Virtual Box
 Goto distribution-karaf-0.4.4-Beryllium-SR4/
 cd distribution-karaf-0.4.4-Beryllium-SR4/
 Run ./bin/karaf
 Install the basic required karaf features/bundles for the lab
exercise
 feature:install odl-restconf-all odl-l2switch-switch odl-mdsal-
apidocs odl-dlux-all
 feature:install odl-restconf-noauth odl-netconf-connector-all
 Go to browser and open the page
http://10.0.2.15:8181/index.html
 Login with admin, admin
OpenDaylight Controller UI
MININET & OpenVSwitch (OVS)
Mininet
 Mininet creates a realistic OpenFlow network, running real
kernel, switch and application code, on a single machine (VM,
cloud or native), in seconds, with a single command
 sudo mn --topo linear,3 --mac --controller=remote,ip=10.0.2.15,port=6633 -
-switch ovs,protocols=OpenFlow13
 sudo ovs-ofctl -O OpenFlow13 dump-flows s2
 sudo ovs-vsctl show
Mininet - Installation
 Option 1: Mininet VM Installation -
http://mininet.org/download/#option-1-mininet-vm-
installation-easy-recommended
 Option 2: Native Installation from Source -
http://mininet.org/download/#option-2-native-installation-
from-source
 Option 3: Installation from Packages -
http://mininet.org/download/#option-3-installation-from-
packages
 Option 4: Upgrading an existing Mininet Installation -
http://mininet.org/download/#option-4-upgrading-an-
existing-mininet-installation
Mininet – Some show commands
Mininet – Some show commands
Mininet – Some show commands
Mininet – Some show commands
Thank you
Backup Slides
How to check VT-x enabled in Windows 8?
60
How to check VT-x enabled in Windows 7?
61
 Install the Microsoft® Hardware-Assisted Virtualization
Detection Tool from https://www.microsoft.com/en-
us/download/details.aspx?id=592
 Run it and see whether you get this output

Contenu connexe

Tendances

IOS Cisco - Cheat sheets
IOS Cisco - Cheat sheetsIOS Cisco - Cheat sheets
IOS Cisco - Cheat sheetsAlejandro Marin
 
SDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual NetworkSDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual NetworkTim4PreStartup
 
MPLS (Multi-Protocol Label Switching)
MPLS  (Multi-Protocol Label Switching)MPLS  (Multi-Protocol Label Switching)
MPLS (Multi-Protocol Label Switching)NetProtocol Xpert
 
Software defined networking(sdn) vahid sadri
Software defined networking(sdn) vahid sadriSoftware defined networking(sdn) vahid sadri
Software defined networking(sdn) vahid sadriVahid Sadri
 
Introduction to OpenFlow
Introduction to OpenFlowIntroduction to OpenFlow
Introduction to OpenFlowrjain51
 
Why sdn
Why sdnWhy sdn
Why sdnlz1dsb
 
MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]
MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]
MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]APNIC
 
Layer-2 VPN
Layer-2 VPNLayer-2 VPN
Layer-2 VPNrosmida
 
Beginners: Open RAN Terminology – Virtualization, Disaggregation & Decomposition
Beginners: Open RAN Terminology – Virtualization, Disaggregation & DecompositionBeginners: Open RAN Terminology – Virtualization, Disaggregation & Decomposition
Beginners: Open RAN Terminology – Virtualization, Disaggregation & Decomposition3G4G
 
Chapter 16 : inter-vlan routing
Chapter 16 : inter-vlan routingChapter 16 : inter-vlan routing
Chapter 16 : inter-vlan routingteknetir
 
Introduction to SDN and NFV
Introduction to SDN and NFVIntroduction to SDN and NFV
Introduction to SDN and NFVCoreStack
 
CCNAv5 - S2: Chapter5 Inter Vlan Routing
CCNAv5 - S2: Chapter5 Inter Vlan RoutingCCNAv5 - S2: Chapter5 Inter Vlan Routing
CCNAv5 - S2: Chapter5 Inter Vlan RoutingVuz Dở Hơi
 
Waris l2vpn-tutorial
Waris l2vpn-tutorialWaris l2vpn-tutorial
Waris l2vpn-tutorialrakiva29
 
Segment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesSegment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesCisco Canada
 

Tendances (20)

IOS Cisco - Cheat sheets
IOS Cisco - Cheat sheetsIOS Cisco - Cheat sheets
IOS Cisco - Cheat sheets
 
Mpls L3_vpn
Mpls L3_vpnMpls L3_vpn
Mpls L3_vpn
 
SDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual NetworkSDN, OpenFlow, NFV, and Virtual Network
SDN, OpenFlow, NFV, and Virtual Network
 
MPLS (Multi-Protocol Label Switching)
MPLS  (Multi-Protocol Label Switching)MPLS  (Multi-Protocol Label Switching)
MPLS (Multi-Protocol Label Switching)
 
Software defined networking(sdn) vahid sadri
Software defined networking(sdn) vahid sadriSoftware defined networking(sdn) vahid sadri
Software defined networking(sdn) vahid sadri
 
Introduction to OpenFlow
Introduction to OpenFlowIntroduction to OpenFlow
Introduction to OpenFlow
 
Vlan
Vlan Vlan
Vlan
 
Why sdn
Why sdnWhy sdn
Why sdn
 
MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]
MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]
MPLS L3 VPN Tutorial, by Nurul Islam Roman [APNIC 38]
 
Layer-2 VPN
Layer-2 VPNLayer-2 VPN
Layer-2 VPN
 
VTP
VTPVTP
VTP
 
Implementing cisco mpls
Implementing cisco mplsImplementing cisco mpls
Implementing cisco mpls
 
Beginners: Open RAN Terminology – Virtualization, Disaggregation & Decomposition
Beginners: Open RAN Terminology – Virtualization, Disaggregation & DecompositionBeginners: Open RAN Terminology – Virtualization, Disaggregation & Decomposition
Beginners: Open RAN Terminology – Virtualization, Disaggregation & Decomposition
 
Cisco MPLS
Cisco MPLSCisco MPLS
Cisco MPLS
 
Chapter 16 : inter-vlan routing
Chapter 16 : inter-vlan routingChapter 16 : inter-vlan routing
Chapter 16 : inter-vlan routing
 
Introduction to SDN and NFV
Introduction to SDN and NFVIntroduction to SDN and NFV
Introduction to SDN and NFV
 
CCNAv5 - S2: Chapter5 Inter Vlan Routing
CCNAv5 - S2: Chapter5 Inter Vlan RoutingCCNAv5 - S2: Chapter5 Inter Vlan Routing
CCNAv5 - S2: Chapter5 Inter Vlan Routing
 
Waris l2vpn-tutorial
Waris l2vpn-tutorialWaris l2vpn-tutorial
Waris l2vpn-tutorial
 
Segment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use CasesSegment Routing Technology Deep Dive and Advanced Use Cases
Segment Routing Technology Deep Dive and Advanced Use Cases
 
Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)
 

En vedette

SDN Architecture & Ecosystem
SDN Architecture & EcosystemSDN Architecture & Ecosystem
SDN Architecture & EcosystemKingston Smiler
 
Scale Up with Lock-Free Algorithms @ JavaOne
Scale Up with Lock-Free Algorithms @ JavaOneScale Up with Lock-Free Algorithms @ JavaOne
Scale Up with Lock-Free Algorithms @ JavaOneRoman Elizarov
 
Graduating To Go - A Jumpstart into the Go Programming Language
Graduating To Go - A Jumpstart into the Go Programming LanguageGraduating To Go - A Jumpstart into the Go Programming Language
Graduating To Go - A Jumpstart into the Go Programming LanguageKaylyn Gibilterra
 
Walk through an enterprise Linux migration
Walk through an enterprise Linux migrationWalk through an enterprise Linux migration
Walk through an enterprise Linux migrationRogue Wave Software
 
[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote Shellcode[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote ShellcodeAj MaChInE
 
In-Memory Computing Essentials for Architects and Engineers
In-Memory Computing Essentials for Architects and EngineersIn-Memory Computing Essentials for Architects and Engineers
In-Memory Computing Essentials for Architects and EngineersDenis Magda
 
What in the World is Going on at The Linux Foundation?
What in the World is Going on at The Linux Foundation?What in the World is Going on at The Linux Foundation?
What in the World is Going on at The Linux Foundation?Black Duck by Synopsys
 
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)Patricia Aas
 
Advanced memory allocation
Advanced memory allocationAdvanced memory allocation
Advanced memory allocationJoris Bonnefoy
 
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware
 
DevRomagna / Golang Intro
DevRomagna / Golang IntroDevRomagna / Golang Intro
DevRomagna / Golang IntroSimone Gentili
 
Communication hardware
Communication hardwareCommunication hardware
Communication hardwareHans Mallen
 
In-depth forensic analysis of Windows registry files
In-depth forensic analysis of Windows registry filesIn-depth forensic analysis of Windows registry files
In-depth forensic analysis of Windows registry filesMaxim Suhanov
 
Deep dive into Coroutines on JVM @ KotlinConf 2017
Deep dive into Coroutines on JVM @ KotlinConf 2017Deep dive into Coroutines on JVM @ KotlinConf 2017
Deep dive into Coroutines on JVM @ KotlinConf 2017Roman Elizarov
 

En vedette (20)

SDN Architecture & Ecosystem
SDN Architecture & EcosystemSDN Architecture & Ecosystem
SDN Architecture & Ecosystem
 
Scale Up with Lock-Free Algorithms @ JavaOne
Scale Up with Lock-Free Algorithms @ JavaOneScale Up with Lock-Free Algorithms @ JavaOne
Scale Up with Lock-Free Algorithms @ JavaOne
 
Docker Networking
Docker NetworkingDocker Networking
Docker Networking
 
Graduating To Go - A Jumpstart into the Go Programming Language
Graduating To Go - A Jumpstart into the Go Programming LanguageGraduating To Go - A Jumpstart into the Go Programming Language
Graduating To Go - A Jumpstart into the Go Programming Language
 
Walk through an enterprise Linux migration
Walk through an enterprise Linux migrationWalk through an enterprise Linux migration
Walk through an enterprise Linux migration
 
[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote Shellcode[若渴計畫] Challenges and Solutions of Window Remote Shellcode
[若渴計畫] Challenges and Solutions of Window Remote Shellcode
 
In-Memory Computing Essentials for Architects and Engineers
In-Memory Computing Essentials for Architects and EngineersIn-Memory Computing Essentials for Architects and Engineers
In-Memory Computing Essentials for Architects and Engineers
 
What in the World is Going on at The Linux Foundation?
What in the World is Going on at The Linux Foundation?What in the World is Going on at The Linux Foundation?
What in the World is Going on at The Linux Foundation?
 
numPYNQ @ NGCLE@e-Novia 15.11.2017
numPYNQ @ NGCLE@e-Novia 15.11.2017numPYNQ @ NGCLE@e-Novia 15.11.2017
numPYNQ @ NGCLE@e-Novia 15.11.2017
 
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)
 
Advanced memory allocation
Advanced memory allocationAdvanced memory allocation
Advanced memory allocation
 
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
 
DevRomagna / Golang Intro
DevRomagna / Golang IntroDevRomagna / Golang Intro
DevRomagna / Golang Intro
 
Communication hardware
Communication hardwareCommunication hardware
Communication hardware
 
Go Execution Tracer
Go Execution TracerGo Execution Tracer
Go Execution Tracer
 
Server virtualization
Server virtualizationServer virtualization
Server virtualization
 
Virtualization
VirtualizationVirtualization
Virtualization
 
In-depth forensic analysis of Windows registry files
In-depth forensic analysis of Windows registry filesIn-depth forensic analysis of Windows registry files
In-depth forensic analysis of Windows registry files
 
Network Virtualization
Network VirtualizationNetwork Virtualization
Network Virtualization
 
Deep dive into Coroutines on JVM @ KotlinConf 2017
Deep dive into Coroutines on JVM @ KotlinConf 2017Deep dive into Coroutines on JVM @ KotlinConf 2017
Deep dive into Coroutines on JVM @ KotlinConf 2017
 

Similaire à OpenFlow

Ch 02 --- sdn and openflow architecture
Ch 02 --- sdn and openflow architectureCh 02 --- sdn and openflow architecture
Ch 02 --- sdn and openflow architectureYoram Orzach
 
Open Flow Protocol
Open Flow ProtocolOpen Flow Protocol
Open Flow ProtocolVishal S M B
 
lect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxlect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxJesicaDcruz1
 
SDN Networks Programming Languages
SDN Networks Programming LanguagesSDN Networks Programming Languages
SDN Networks Programming LanguagesFlavio Vit
 
Software defined networks and openflow protocol
Software defined networks and openflow protocolSoftware defined networks and openflow protocol
Software defined networks and openflow protocolMahesh Mohan
 
Spirent TestCenter OpenFlow Controller Emulation
Spirent TestCenter OpenFlow Controller EmulationSpirent TestCenter OpenFlow Controller Emulation
Spirent TestCenter OpenFlow Controller EmulationMalathi Malla
 
SDN - OpenFlow protocol
SDN - OpenFlow protocolSDN - OpenFlow protocol
SDN - OpenFlow protocolUlf Marxen
 
F14_Class1.pptx
F14_Class1.pptxF14_Class1.pptx
F14_Class1.pptxSameer Ali
 
OpenFlow Extensions
OpenFlow ExtensionsOpenFlow Extensions
OpenFlow ExtensionsUS-Ignite
 
Looking at SDN with DDS Glasses
Looking at SDN with DDS GlassesLooking at SDN with DDS Glasses
Looking at SDN with DDS GlassesAngelo Corsaro
 
Programming the Network Data Plane
Programming the Network Data PlaneProgramming the Network Data Plane
Programming the Network Data PlaneC4Media
 
OpenFlow tutorial
OpenFlow tutorialOpenFlow tutorial
OpenFlow tutorialopenflow
 
Runos OpenFlow Controller (eng)
Runos OpenFlow Controller (eng)Runos OpenFlow Controller (eng)
Runos OpenFlow Controller (eng)Alexander Shalimov
 

Similaire à OpenFlow (20)

Openflow Protocol
Openflow ProtocolOpenflow Protocol
Openflow Protocol
 
Ch 02 --- sdn and openflow architecture
Ch 02 --- sdn and openflow architectureCh 02 --- sdn and openflow architecture
Ch 02 --- sdn and openflow architecture
 
Open Flow Protocol
Open Flow ProtocolOpen Flow Protocol
Open Flow Protocol
 
Lecture14 1
Lecture14 1Lecture14 1
Lecture14 1
 
lect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxlect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptx
 
Sgnog openflow demo-v1.0
Sgnog openflow demo-v1.0Sgnog openflow demo-v1.0
Sgnog openflow demo-v1.0
 
SDN Networks Programming Languages
SDN Networks Programming LanguagesSDN Networks Programming Languages
SDN Networks Programming Languages
 
Software defined networks and openflow protocol
Software defined networks and openflow protocolSoftware defined networks and openflow protocol
Software defined networks and openflow protocol
 
Spirent TestCenter OpenFlow Controller Emulation
Spirent TestCenter OpenFlow Controller EmulationSpirent TestCenter OpenFlow Controller Emulation
Spirent TestCenter OpenFlow Controller Emulation
 
Protocol Independence
Protocol IndependenceProtocol Independence
Protocol Independence
 
Understanding OpenFlow
Understanding OpenFlowUnderstanding OpenFlow
Understanding OpenFlow
 
SDN - OpenFlow protocol
SDN - OpenFlow protocolSDN - OpenFlow protocol
SDN - OpenFlow protocol
 
Openflow
OpenflowOpenflow
Openflow
 
F14_Class1.pptx
F14_Class1.pptxF14_Class1.pptx
F14_Class1.pptx
 
OpenFlow Extensions
OpenFlow ExtensionsOpenFlow Extensions
OpenFlow Extensions
 
Looking at SDN with DDS Glasses
Looking at SDN with DDS GlassesLooking at SDN with DDS Glasses
Looking at SDN with DDS Glasses
 
OpenFlow Tutorial
OpenFlow TutorialOpenFlow Tutorial
OpenFlow Tutorial
 
Programming the Network Data Plane
Programming the Network Data PlaneProgramming the Network Data Plane
Programming the Network Data Plane
 
OpenFlow tutorial
OpenFlow tutorialOpenFlow tutorial
OpenFlow tutorial
 
Runos OpenFlow Controller (eng)
Runos OpenFlow Controller (eng)Runos OpenFlow Controller (eng)
Runos OpenFlow Controller (eng)
 

Dernier

Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779Delhi Call girls
 
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirtrahman018755
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts servicesonalikaur4
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebJames Anderson
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Roomgirls4nights
 
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls KolkataVIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Roomdivyansh0kumar0
 
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts servicevipmodelshub1
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...APNIC
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$kojalkojal131
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGAPNIC
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsThierry TROUIN ☁
 

Dernier (20)

Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
Best VIP Call Girls Noida Sector 75 Call Me: 8448380779
 
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICECall Girls In South Ex 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
Call Girls In South Ex 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SERVICE
 
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
 
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With RoomVIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
VIP Kolkata Call Girls Salt Lake 8250192130 Available With Room
 
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls KolkataVIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
 
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
Dwarka Sector 26 Call Girls | Delhi | 9999965857 🫦 Vanshika Verma More Our Se...
 
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 22 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Ishita 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Ishita 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
'Future Evolution of the Internet' delivered by Geoff Huston at Everything Op...
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
 
Networking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOGNetworking in the Penumbra presented by Geoff Huston at NZNOG
Networking in the Penumbra presented by Geoff Huston at NZNOG
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with Flows
 

OpenFlow

  • 2. Course Objective Need for OpenFlow The OpenFlow® Protocol message structures, features etc Open Flow life of a Packet Different Tables in OpenFlow Packet Capture of different Openflow Packets Hands-on
  • 3. Problems 3  Closed Systems with no or very minimal abstractions in the network design.  Hardware centric – usage of custom ASICs with Vendor Specific Software.  Difficult to perform real world experiments on large scale production networks.  No standard abstractions towards north bound and south bound interfaces, even though we have standard abstractions in the east / west bound interface with peer routers / switches.
  • 4. Need for OpenFlow  Facilitate Innovation in Network  Layered architecture with Standard Open Interfaces  Independent innovation at each layer  More accessibility since software can be easily developed by more vendors  Speed-to-market – no hardware fabrication cycles  More flexibility with programmability and ease of customization and integration with other software applications  Fast upgrades  Program a network vs Configure a network 4
  • 5. OpenFlow  OpenFlow is a protocol which enables programmability of the forwarding plane  OpenFlow is like an x86 instruction set for the network nodes.  Provides open interface to “black box” networking node (ie. Routers, L2/L3 switch) to enable visibility and openness in network  Separation of control plane and data plane.  The datapath of an OpenFlow Switch consists of a Flow Table, and an action associated with each flow entry  The control path consists of a controller which programs the flow entry in the flow table
  • 7. OpenFlow General Myth  SDN is Open Flow Reality  OpenFlow is an open API that provides a standard interface for programming the data plane switches 7
  • 10. Traditional Switch Forwarding 10Source: Adopted from ONF11 presentation by Martin Casado
  • 11. OpenFlow Switch Forwarding 11Source: Adopted from ONF11 presentation by Martin Casado
  • 12. Open Flow Illustration Source: Adopted from ONF11 presentation by Martin Casado
  • 13. Components of OpenFlow 13 * Figure From OpenFlow Switch Specification
  • 15. Controller OpenFlow Switch Flow Table Secure Channel PC hw sw OpenFlow Switch specification Components of OpenFlow Network 15 * Figure From OpenFlow Switch Specification
  • 16. OpenFlow Controller  Manages one or more switch via OpenFlow channels.  Uses OpenFlow protocol to communicate with a OpenFlow aware switch.  Acts similar to control plane of traditional switch.  Provides a network wide abstraction for the applications on north bound.  Responsible for programming various tables in the OpenFlow Switch.  Single switch can be managed by more than one controller for load balancing or redundancy purpose. In this case the controller can take any one of the following roles.  Master.  Slave.  Equal. 16
  • 17. OpenFlow Controller  OpenSource  OpenDayLight  Floodlight  RYU  NOX/POX  ONOS  Commercial Controllers  Cisco APIC  VMware NSX Controller  HP VAN SDN Controller  NEC ProgrammableFlow PF6800 Controller  Nuage Networks Virtualized Services Controller (VSC) 17
  • 18. OpenFlow Channel  Used to exchange OpenFlow message between switch and controller.  Switch can establish single or multiple connections to same or different controllers (auxiliary connections).  A controller configures and manages the switch, receives events from the switch, and send packets out the switch via this interface  The SC connection is a TLS/TCP connection. Switch and controller mutually authenticate by exchanging certificates signed by a site-specific private key 18
  • 19. OpenFlow Messages  Three Message Types  Controller to Switch  Asynchronous Message  Asymmetric Message  Controller to Switch  Feature Request  Configuration  Modify State  Packet Out etc.  Asynchronous  Packet-in  Flow Removed  Port Status  Error etc.  ASymmetric  Hello  Echo  Experimenter etc 19
  • 21. OpenFlow – Hello ( From Switch to Controller)
  • 22. OpenFlow – Hello ( From Controller to Switch)
  • 23. OpenFlow – Feature Request (From Controller to Switch)
  • 24. OpenFlow – Feature Reply (From Switch to Controller)
  • 25. OpenFlow – Role Request (From Controller to Switch)
  • 26. OpenFlow – Role Reply (From Switch to Controller)
  • 27. OpenFlow – Packet IN (From Switch to Controller)
  • 28. OpenFlow – Flow Config (From Switch to Controller)
  • 29. OpenFlow Switch  Types of the switches:  Open-flow only  Open-flow hybrid 29  Major Components  Ports  Flow Table  Group Table  Meter Table
  • 30. OpenFlow Ports  Network interfaces for passing packets between Openflow Processing and the rest of the Network.  Types of Ports:  Physical Ports • Switch defined ports • Eg. Physical ports map one to one Ethernet interfaces  Logical Ports • Switch defined ports that don’t correspond to a hardware interface of switch • Logical ports include “Tunnel-ID”.  Reserved Ports • Defined by OpenFlow Spec • Specifies generic forwarding actions such as sending to the controller, flooding and forwarding using non-openflow methods 30
  • 31. Pipeline Processing 31 * Figure From OpenFlow Switch Specification
  • 32. Flow Table Components 32 * Figure From OpenFlow Switch Specification
  • 33. Flow Entry 33 * Figure From OpenFlow Switch Specification
  • 34. Openflow Table Instructions  Instructions are executed when a packet matches entry.  Instruction result can  Change the packet  Action set  Pipeline processing etc.  Sample Instruction Types  Meter ID - Direct a packet to the meter id.  Apply-Actions - Apply a specific action immediately  Clear-Actions - Clear all the actions in the action set  Write-Actions - Add a new action into the existing action set  Write-Metadata - Write the masked meta data value  Goto-Table - Indicate the next table in the processing pipeline 34
  • 35. Action Set & Action List  Action Set  Action set is associated with each packet. FE modify the action set using write-action/ clear-action  Actions in the action-set will be executed when pipeline is stopped  Action set contains maximum of one action of each type. If multiple actions of the same type need to be added then use “Apply-Actions”  Action List  “Apply-action” , “packet-out” messages include action list  Execute an action immediately  Actions are executed sequentially in the order they have been specified  If action list contains an output action, a copy of the packet is forwarded in its current state to the desired port  Action-set shouldn’t be changed because of action-list 35
  • 36. Action  Action  What to do with the packet when match criteria matches with the packet  Some of the Action Type • Output - Fwd a pkt to the specified open flow port (physical/ logical/reserved) • Set Queue - Determines which queue should be used for scheduling and forwarding packet • Drop - Packets which doesn’t have output action should be dropped • Group - Process the packet through specified group • Push-Tag/ Pop-Tag - Insert VLAN, MPLS, PBB tage • Set-Field - Rewriting a field in the packet header • Change TTL - Decrement TTL • Copy TTL inwards – apply copy inward actions to the packet • Push MPLS – apply MPLS tag push action to the packet • Push PBB – apply PBB tag push action to the packet 36
  • 37. Flow Entry (Contd…)  Each Flow Entry contains an optional Idle and Hard Timeout field.  Switch removes entry and sends flow removed message to controller when,  No packets have matched within the Idle Timeout  The flow was inserted more than the Hard Timeout.  The timeouts are optional 37 Flow Entry Timeouts
  • 38. Flow Entry (Contd…) 38 Reactive Flows Proactive Flows First packet of flow is sent to controller for processing Controller pre-populates flow table in switch. Controller evaluates packet and sends Flow message to switch insert a flow table entry for the packet Zero set-up time for new flows Subsequent packets (in flow) match the entry until idle or hard timeout Switch in Proactive forwarding ‘only’ would default to action=drop Loss of connectivity between switch and controller limit utility of switch Loss of connection between switch and controller does not disrupt network traffic
  • 39. Instruction Execution in Flow Table 39 * Figure From OpenFlow Switch Specification
  • 40. Group Table  Additional method for forwarding to a group of entries.  Comprises of Group ID, Group Type, Counters, Action buckets (each action bucket contains a set of actions to be executed)  Group Types:  All • Execute all buckets in a group • Used mainly for multicast and broadcast – fwd a pkt on all the ports  Select • Execute one bucket in a Group ( Eg. ECMP packets) • Implemented for load sharing and redundancy  Indirect • Execute one defined bucket in this Group • Supports only a single bucket ( Eg. 40K routes are pointing to same next hop)  Fast failover • Execute the first live bucket • Eg. There is a primary path and secondary path – pass the traffic on primary path and if it fails use the secondary one 40
  • 42. Instruction Execution in Group Table 42 * Figure From OpenFlow Switch Specification
  • 43. Meter Table  Consists of meter entries and defining per-flow meters.  Per-flow meters enable OF to implement QoS operations (rate- limiting)  Components of Meter table:  Meter ID, Meter Band, Counters  Meters measures the rate of packets assigned to it and enable controlling the rate of those packets  Meters are attached directly to flow entries  Meter band: unordered list of meter bands, where each meter band specifies the rate of the band and the way to process packet  Components of Meter band:  Band Type, Rate, Counters, Type specific arguments  Band Type : defined how to process a packet (drop/ dscp remark) 43
  • 44. Meter Table 44 * Figure From OpenFlow Switch Specification
  • 45. Packet Flow in OpenFlow Switch 45 * Figure From OpenFlow Switch Specification
  • 46. OpenFlow Features Vs Specification
  • 48. Course Objective How to run ODL Contoller How to run ODL features and getting UI How to run Mininet Topology detection of mininet Network Packet Capture of different Openflow Packets Ping and test the Network
  • 49. How to start OpenDayLight Controller  Run the given VM in Virtual Box  Goto distribution-karaf-0.4.4-Beryllium-SR4/  cd distribution-karaf-0.4.4-Beryllium-SR4/  Run ./bin/karaf  Install the basic required karaf features/bundles for the lab exercise  feature:install odl-restconf-all odl-l2switch-switch odl-mdsal- apidocs odl-dlux-all  feature:install odl-restconf-noauth odl-netconf-connector-all  Go to browser and open the page http://10.0.2.15:8181/index.html  Login with admin, admin
  • 52. Mininet  Mininet creates a realistic OpenFlow network, running real kernel, switch and application code, on a single machine (VM, cloud or native), in seconds, with a single command  sudo mn --topo linear,3 --mac --controller=remote,ip=10.0.2.15,port=6633 - -switch ovs,protocols=OpenFlow13  sudo ovs-ofctl -O OpenFlow13 dump-flows s2  sudo ovs-vsctl show
  • 53. Mininet - Installation  Option 1: Mininet VM Installation - http://mininet.org/download/#option-1-mininet-vm- installation-easy-recommended  Option 2: Native Installation from Source - http://mininet.org/download/#option-2-native-installation- from-source  Option 3: Installation from Packages - http://mininet.org/download/#option-3-installation-from- packages  Option 4: Upgrading an existing Mininet Installation - http://mininet.org/download/#option-4-upgrading-an- existing-mininet-installation
  • 54. Mininet – Some show commands
  • 55. Mininet – Some show commands
  • 56. Mininet – Some show commands
  • 57. Mininet – Some show commands
  • 60. How to check VT-x enabled in Windows 8? 60
  • 61. How to check VT-x enabled in Windows 7? 61  Install the Microsoft® Hardware-Assisted Virtualization Detection Tool from https://www.microsoft.com/en- us/download/details.aspx?id=592  Run it and see whether you get this output

Notes de l'éditeur

  1. Kasado
  2. Kasado