SlideShare a Scribd company logo
NDI Communications - Engineering & Training
SDN & NFV
Chapter 2 – SDN and OpenFlow
Page 2
Chapter Content
Network architecture
Network components
Tables
Applications
2
Page 3
Traditional Network Structure
C
C
C
C
Forwarding Plane: End to end packets forwarding
Control Plane: Track topology changes, calculating routes, QoS and
security considerations and more
M
M
M
M
Management Plane: Measurements
and configuration
Page 4
Software Defined Networking (SDN)
OpenFlow
Logically centralized control Smart, Slow controller
Dumb,
Fast switches
Controller
M
Business Applications
Page 5
Chapter Content
Network architecture
Network components
Tables
Applications
Page 6
Traditional Switch Forwarding
L2/VLANs
Table
L3 Table
ACLs, QoS Security, LB
Packets
in
Packets
out
Page 7
Open Flow Switch Forwarding
Flow table
Packets
in
Packets
out
Flow table
Flow table
Flow table
SDN Controller
Page 8
Open Flow Components
Controller
OpenFlow
Channel
Flow
Table
Flow
Table
Flow
Table
Open
Flow Protocol
Group
Table
Tables pipeline
Meter
Table
Page 9
The Flow Table – Principle of Operation
Flow entry
Flow entry
Flow entry
Flow entry
Controller
Open
Flow Protocol
Flow Table
Match
Condition
Instructions…. ….
Page 10
OpenFlow Switch Operations
Controller
OpenFlow
Channel
Flow
Table
Flow
Table
Flow
Table
Open
Flow Protocol
Group
Table
Tables pipeline
Packet
In
Packet
Out
Meter
Table
Page 11
OpenFlow Controller
Manages one or more switches via
OpenFlow channels
Uses OpenFlow protocol to
communicate with a OpenFlow
aware switch.
Provides a network wide
abstraction for the
applications on north bound.
Responsible for
programming various
tables in the
OpenFlow Switch.
OpenFlow
Switch
Controller
OpenFlow
Switch
OpenFlow
Switch
App. App.
OpenFlow Protocol
Abstraction layer
Page 12
OpenFlow Controller - Redundancy
Single switch can be managed by
more than one controller for load
balancing or redundancy purpose.
In the case of more than
one controller, the
controller can take any one
of the following roles:
Master
Slave
Equal
OpenFlow
Switch
Controller
OpenFlow
Switch
OpenFlow
Switch
Controller
App. App.
OpenFlow Protocol
Abstraction layer
Page 13
Controller's Architecture
Single Equal Level Master-Slave
Page 14
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
OpenFlow
Switch
Controller Controller
OpenFlow
Protocol
Page 15
OpenFlow Switch
Consists of one or more flow tables, group table and meter table.
A single switch can be managed by one or more controllers.
The flow tables and group table are used during the lookup or forwarding
phase in order to forward the packet to appropriate port.
Meter table is used to perform simple QOS operations like rate-limiting
to complex QOS operations like DiffServ
OpenFlow
Channel
Flow
Table
Flow
Table
Flow
Table
Group
Table
Packet
In
Packet
Out
Meter
Table
Page 16
OpenFlow Physical & Logical Ports
Packets
In/Out
Packets
In/Out
OpenFlow
Switch
Logical
Port
Physical
Port
The OpenFlow physical ports are
switch defined ports that correspond
to a hardware interface of the
switch.
The OpenFlow
logical ports are
switch defined
ports that don’t
correspond directly
to a hardware
interface of the
switch.
Page 17
OpenFlow Reserved Ports
OpenFlow reserved ports specify generic
forwarding actions such as sending to the
controller, flooding, or forwarding using non-
OpenFlow methods, such as “normal” switch
processing.
There are required and optional reserved ports:
Required: ALL, CONTROLLER, TABLE, IN
PORT, ANY
Optional: LOCAL, NORMAL, FLOOD
Page 18
OpenFlow Required Reserved Ports
Packets
In/Out
Packets
In/Out
OpenFlow
Switch
Controller
IN PORT: Represents
the packet ingress
port.
ANY: Special value
used in some OpenFlow
requests when no port
is specified
ALL: Represents all ports the switch can use for
forwarding a specific packet.
CONTROLLER: Represents the control channel with the
OpenFlow controllers
TABLE: Represents the start of the OpenFlow pipeline.
Page 19
OpenFlow Optional Reserved Ports
Packets
In/Out
Packets
In/Out
OpenFlow
Switch
ControllerLOCAL: Represents the switch’s local networking
stack and its management stack.
NORMAL: Represents forwarding using the
traditional non-OpenFlow pipeline of the switch.
FLOOD: Represents
flooding using the
traditional non-
OpenFlow pipeline of
the switch.
Page 20
Chapter Content
Network architecture
Network components
Tables
Applications
Page 21
Table Types
There are 3 types of tables in the OpenFlow switch:
Flow table – the standard table that allows to forward packet to a
single port
Group table – used for special actions like multicast, broadcast,
load balancing and others
Meter table – uses Per-flow meters that enables OpenFlow to
implement various QoS operations
OpenFlow
Channel
Flow
Table
Flow
Table
Flow
Table
Group
Table
Packet
In
Packet
Out
Meter
Table
Page 22
Flow Tables Structure
Match Instructions
Modify Field
Remove from queue
Forward
NORMAL
FLOOD
Virtual
Port
Physical Port
Forward
Mandatory Instructions:
• Forward packet to port(s)
• Encapsulate and forward to
controller
• Drop packet
• Send to normal processing
pipeline
• Modify Fields
Mandatory Instructions:
• Forward packet to port(s)
• Encapsulate and forward to
controller
• Drop packet
• Send to normal processing
pipeline
• Modify Fields
Optional InstructionsOptional Instructions
Timeout
Match Instructions Timeout
Match Instructions Timeout
Match Instructions Timeout
…
Ingress
Port
Ethernet
SA DA Type
IP
SA DA Proto
TCP/UDP
Src
VLAN
ID Priority TOS Dst
Virtual
Port
ALL
CONTROLLER
LOCAL
TABLE
IN_PORT
Drop
Priority
Priority
Priority
Priority
Counters
Counters
Counters
Counters
Cookie
Cookie
Cookie
Cookie
Flags
Flags
Flags
Flags
Page 23
Instructions
Meter meter_id (optional): Direct packet to the specified meter.
Apply-Actions action(s) (Optional): Applies the specific action(s)
immediately, without any change to the Action Set.
Clear-Actions (Optional): Clears all the actions in the action set
immediately.
Write-Actions action(s) (Required): Merges the specified set of
action(s) into the current action set
Goto-Table next-table-id (Required): Indicates the next table in
the processing pipeline.
Page 24
Action Set
1. copy TTL inwards: apply copy TTL inward actions to the packet
2. pop: apply all tag pop actions to the packet
3. push-MPLS: apply MPLS tag push action to the packet
4. push-PBB: apply PBB tag push action to the packet
5. push-VLAN: apply VLAN tag push action to the packet
6. copy TTL outwards: apply copy TTL outwards action to the packet
7. decrement TTL: apply decrement TTL action to the packet
8. set: apply all set-field actions to the packet
9. qos: apply all QoS actions, such as set queue to the packet
10.group: if a group action is specified, apply the actions of the relevant group
bucket(s) in the order specified by this list
11.output: if no group action is specified, forward the packet on the port specified
by the output action
Page 25
Notes Only
Page 26
Table Match
Packet in
(Start in table 0)
Match in
table N?
Update counters
Execute instructions
YES
Table-miss
entry
exist?
Drop Packet
Goto next
entry in
table N
NO
NO
YES
Execute action set
NO
YES
Page 27
Pipeline Processing
Page 28
Data Plane – SDN Switch (Example)
Simple packet-handling rules
Pattern: match packet header bits
Actions: drop, forward, modify, send to controller
Priority: disambiguate overlapping patterns
Counters: #bytes and #packets
1. src=10.20.*.*, dest=31.22.5.*  drop
2. src = *.*.*.*, dest=3.4.*.*  forward(2)
3. src=192.1.2.3, dest=*.*.*.*  send to controller
Page 29
Examples (1)
Switching
*
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
* 00:1f:.. * * * * * * * port6
Flow Switching
port3
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
00:20.. 00:1f..0800 vlan1 1.2.3.4 5.6.7.8 4 17264 80 port6
Firewall
*
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
* * * * * * * * 22 drop
Page 30
Examples (2)
Routing
*
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
* * * * * 5.6.7.8 * * * port6
VLAN Switching
*
Switch
Port
MAC
src
MAC
dst
Eth
type
VLAN
ID
IP
Src
IP
Dst
IP
Prot
TCP
sport
TCP
dport
Action
* * vlan1 * * * * *
port6,
port7,
port9
00:1f..
Page 31
Group Table
A group table consists of group entries. The ability for a flow
entry to point to a group enables OpenFlow to represent
additional methods of forwarding (e.g. select and all)
Group Identifier Action bucketsGroup type Counters
Page 32
Notes Only
Page 33
Meter Table
A meter table consists of meter entries, defining per-flow
meters.
Per-flow meters enable OpenFlow to implement various simple
QoS operations, such as rate-limiting, and can be combined
with per-port queues to implement complex QoS frameworks,
such as DiffServ.
Meter Identifier Meter Bands Counters
Band type Rate Burst Counters Type specific arguments
Page 34
Notes Only
Page 35
Chapter Content
Network architecture
Network components
Tables
Applications
Page 36
Unifies Different Kinds of Boxes
Router
Match: longest
destination IP prefix
Action: forward out a link
Switch
Match: destination MAC
address
Action: forward or flood
Firewall (Packet filtering)
Match: IP addresses and
TCP/UDP port numbers
Action: permit or deny
NAT
Match: IP address and
port
Action: rewrite address
and port
36
Page 37
Example OpenFlow Applications
Dynamic access control
Seamless mobility/migration
Server load balancing
Network virtualization
Using multiple wireless access points
Energy-efficient networking
Adaptive traffic monitoring
Denial-of-Service attack detection
Page 38
OpenFlow in the Wild
Open Networking Foundation
Google, Facebook, Microsoft, Yahoo, Verizon, Deutsche
Telekom, and many other companies
Commercial OpenFlow switches
HP, NEC, Quanta, Dell, IBM, Juniper, …
Network operating systems
NOX, Beacon, Floodlight, Nettle, ONIX, POX, Frenetic
Network deployments
Eight campuses, and two research backbone networks
Commercial deployments (e.g., Google backbone)
Page 39
Summary
Yoram Orzach
yoram@ndi-com.com
Thank You!!!
Coming soon LIVE on our NEW
e-Learning portal

More Related Content

PDF
Introduction to Software Defined Networking (SDN)
Bangladesh Network Operators Group
 
PDF
Introduction to OpenFlow
Joel W. King
 
PPTX
Open shortest path first (ospf)
Respa Peter
 
PPT
OpenFlow tutorial
openflow
 
PPTX
Rip presentation
Ebrahim AlRahawe
 
PPTX
RISC-V Introduction
RISC-V International
 
PPT
Ip address and subnetting
IGZ Software house
 
PPTX
Slideshare - PCIe
Jin Wu
 
Introduction to Software Defined Networking (SDN)
Bangladesh Network Operators Group
 
Introduction to OpenFlow
Joel W. King
 
Open shortest path first (ospf)
Respa Peter
 
OpenFlow tutorial
openflow
 
Rip presentation
Ebrahim AlRahawe
 
RISC-V Introduction
RISC-V International
 
Ip address and subnetting
IGZ Software house
 
Slideshare - PCIe
Jin Wu
 

What's hot (20)

PPTX
Sdn ppt
Pallavi Chhikara
 
PDF
Introduction to Network Function Virtualization (NFV)
rjain51
 
PDF
CCNAv5 - S2: Chapter5 Inter Vlan Routing
Vuz Dở Hơi
 
PPTX
Ppt of routing protocols
Bhagyashri Dhoke
 
PPTX
MPLS VPN
Shahzaib Mahesar
 
PPT
Spanning tree protocol
Muuluu
 
PPTX
VPLS Fundamental
Reza Farahani
 
PDF
MPLS L3 VPN Deployment
APNIC
 
PPTX
Transitioning IPv4 to IPv6
Jhoni Guerrero
 
PDF
TCP - Transmission Control Protocol
Peter R. Egli
 
PPTX
IPSec and VPN
Abdullaziz Tagawy
 
PPTX
CCNA 2 Routing and Switching v5.0 Chapter 6
Nil Menon
 
PPT
MPLS (Multi-Protocol Label Switching)
Vipin Sahu
 
PPT
Mpls vpn toi
ARACELY ZAPATA
 
PDF
Implementing cisco mpls
Matiullah Jamil
 
PPT
TCP IP Addressing
Ritul Sonania
 
PPT
Vlan
sanss40
 
PDF
Spanning tree protocol (stp)
RaghulR21
 
PPTX
Introduction to Data Center Network Architecture
Ankita Mahajan
 
Introduction to Network Function Virtualization (NFV)
rjain51
 
CCNAv5 - S2: Chapter5 Inter Vlan Routing
Vuz Dở Hơi
 
Ppt of routing protocols
Bhagyashri Dhoke
 
Spanning tree protocol
Muuluu
 
VPLS Fundamental
Reza Farahani
 
MPLS L3 VPN Deployment
APNIC
 
Transitioning IPv4 to IPv6
Jhoni Guerrero
 
TCP - Transmission Control Protocol
Peter R. Egli
 
IPSec and VPN
Abdullaziz Tagawy
 
CCNA 2 Routing and Switching v5.0 Chapter 6
Nil Menon
 
MPLS (Multi-Protocol Label Switching)
Vipin Sahu
 
Mpls vpn toi
ARACELY ZAPATA
 
Implementing cisco mpls
Matiullah Jamil
 
TCP IP Addressing
Ritul Sonania
 
Vlan
sanss40
 
Spanning tree protocol (stp)
RaghulR21
 
Introduction to Data Center Network Architecture
Ankita Mahajan
 
Ad

Viewers also liked (20)

PPTX
Openflow Protocol
Kaliyaperumal Krishnan
 
PDF
SDN - OpenFlow protocol
Ulf Marxen
 
PDF
Ch 03 --- the OpenFlow protocols
Yoram Orzach
 
PPTX
Introduction to OpenFlow, SDN and NFV
Kingston Smiler
 
PPT
OpenFlow Tutorial
Ja-seop Kwak
 
PDF
Enhancing Security in OpenFlow
Niketa Chellani
 
PDF
Howto createOpenFlow Switchusing FPGA (at FPGAX#6)
Kentaro Ebisawa
 
PPTX
ECI OpenFlow 2.0 the Future of SDN
ECI – THE ELASTIC NETWORK™
 
PPTX
Securing ARP in Software Defined Networks
Farzaneh Pakzad
 
PPTX
Open flow
Oded Rotter
 
PDF
Ch 04 --- sdn deployment models
Yoram Orzach
 
PDF
Ch 01 --- introduction to sdn-nfv
Yoram Orzach
 
PPTX
Software defined networks and openflow protocol
Mahesh Mohan
 
PDF
Ch 05 --- nfv basics
Yoram Orzach
 
PDF
Software Defined Networks Network Function Virtualization Pivotal Technologies
Open Networking Summits
 
PDF
SDN Fundamentals - short presentation
Azhar Khuwaja
 
PPTX
Tools and Platforms for OpenFlow/SDN
Umesh Krishnaswamy
 
PDF
Network Analysis Using Wireshark 1
Yoram Orzach
 
PDF
NFV for beginners
Dave Neary
 
PPT
Wireshark Basics
Yoram Orzach
 
Openflow Protocol
Kaliyaperumal Krishnan
 
SDN - OpenFlow protocol
Ulf Marxen
 
Ch 03 --- the OpenFlow protocols
Yoram Orzach
 
Introduction to OpenFlow, SDN and NFV
Kingston Smiler
 
OpenFlow Tutorial
Ja-seop Kwak
 
Enhancing Security in OpenFlow
Niketa Chellani
 
Howto createOpenFlow Switchusing FPGA (at FPGAX#6)
Kentaro Ebisawa
 
ECI OpenFlow 2.0 the Future of SDN
ECI – THE ELASTIC NETWORK™
 
Securing ARP in Software Defined Networks
Farzaneh Pakzad
 
Open flow
Oded Rotter
 
Ch 04 --- sdn deployment models
Yoram Orzach
 
Ch 01 --- introduction to sdn-nfv
Yoram Orzach
 
Software defined networks and openflow protocol
Mahesh Mohan
 
Ch 05 --- nfv basics
Yoram Orzach
 
Software Defined Networks Network Function Virtualization Pivotal Technologies
Open Networking Summits
 
SDN Fundamentals - short presentation
Azhar Khuwaja
 
Tools and Platforms for OpenFlow/SDN
Umesh Krishnaswamy
 
Network Analysis Using Wireshark 1
Yoram Orzach
 
NFV for beginners
Dave Neary
 
Wireshark Basics
Yoram Orzach
 
Ad

Similar to Ch 02 --- sdn and openflow architecture (20)

PPTX
OpenFlow
Kingston Smiler
 
PPTX
Software-Defined Networking (SDN) is a transformative networking paradigm
eticket4403
 
PDF
2015 FOSDEM - OVS Stateful Services
Thomas Graf
 
PDF
Protocol Independence
Open Networking Summits
 
PPTX
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...
ON.LAB
 
PPTX
SDN approach.pptx
TrongMinhHoang1
 
PPTX
Software Defined Networking: Primer
Bangladesh Network Operators Group
 
PDF
intro lect.pdfkkpkpkpkpkpjjkojkopjjojjoj
AmolJoglekar5
 
PPTX
Pyretic - A new programmer friendly language for SDN
nvirters
 
PPTX
CEF-Based Multilayer Switching, deployingpptx
Course11
 
PPT
Cisco data center support
Krunal Shah
 
PPT
Intelligent Network Services through Active Flow Manipulation
Tal Lavian Ph.D.
 
PPTX
OpenStack Neutron Dragonflow l3 SDNmeetup
Eran Gampel
 
PDF
Examen final ccna2
Juli Yaret
 
PPTX
FlowER Erlang Openflow Controller
Holger Winkelmann
 
PPT
Computer Organozation
Aabha Tiwari
 
PPTX
Ovs dpdk hwoffload way to full offload
Kevin Traynor
 
PPTX
WCM Transfer Services
Alfresco Software
 
PPT
Short.course.introduction.to.vhdl
Ravi Sony
 
PDF
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
PROIDEA
 
OpenFlow
Kingston Smiler
 
Software-Defined Networking (SDN) is a transformative networking paradigm
eticket4403
 
2015 FOSDEM - OVS Stateful Services
Thomas Graf
 
Protocol Independence
Open Networking Summits
 
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...
ON.LAB
 
SDN approach.pptx
TrongMinhHoang1
 
Software Defined Networking: Primer
Bangladesh Network Operators Group
 
intro lect.pdfkkpkpkpkpkpjjkojkopjjojjoj
AmolJoglekar5
 
Pyretic - A new programmer friendly language for SDN
nvirters
 
CEF-Based Multilayer Switching, deployingpptx
Course11
 
Cisco data center support
Krunal Shah
 
Intelligent Network Services through Active Flow Manipulation
Tal Lavian Ph.D.
 
OpenStack Neutron Dragonflow l3 SDNmeetup
Eran Gampel
 
Examen final ccna2
Juli Yaret
 
FlowER Erlang Openflow Controller
Holger Winkelmann
 
Computer Organozation
Aabha Tiwari
 
Ovs dpdk hwoffload way to full offload
Kevin Traynor
 
WCM Transfer Services
Alfresco Software
 
Short.course.introduction.to.vhdl
Ravi Sony
 
Krzysztof Mazepa - Netflow/cflow - ulubionym narzędziem operatorów SP
PROIDEA
 

More from Yoram Orzach (20)

PDF
Network analysis Using Wireshark Lesson 1- introduction to network troublesho...
Yoram Orzach
 
PDF
Network analysis Using Wireshark Lesson 12 - bandwidth and delay issues
Yoram Orzach
 
PDF
Network analysis Using Wireshark Lesson 11: TCP and UDP Analysis
Yoram Orzach
 
PDF
Network Analysis Using Wireshark Jan 18- seminar
Yoram Orzach
 
PDF
Network Analysis Using Wireshark -10- arp and ip analysis
Yoram Orzach
 
PDF
Network Analysis Using Wireshark Chapter 09 ethernet and lan switching
Yoram Orzach
 
PDF
Network Analysis Using Wireshark Chapter 08 the expert system
Yoram Orzach
 
PDF
lesson 7- Network analysis Using Wireshark - advanced statistics tools
Yoram Orzach
 
PDF
Network Analysis Using Wireshark -Chapter 6- basic statistics tools
Yoram Orzach
 
PDF
Network analysis Using Wireshark Lesson 3: locating wireshark
Yoram Orzach
 
PDF
lesson 2- Network analysis Using Wireshark introduction to cellular feb-2017
Yoram Orzach
 
PDF
Network Analysis using Wireshark 5: display filters
Yoram Orzach
 
PDF
Network analysis Using Wireshark 4: Capture Filters
Yoram Orzach
 
PDF
Wireshark - Basics
Yoram Orzach
 
PDF
Ch 09 -- ARP & IP Analysis
Yoram Orzach
 
PDF
Ch 08 -- Ethernet & LAN Switching Troubleshooting
Yoram Orzach
 
PDF
Ch 07 -- The Expert System
Yoram Orzach
 
PDF
Ch 06 -- Bandwidth Delay and Jitter Issues
Yoram Orzach
 
PDF
Wireshark course, Ch 05: Advanced statistics tools
Yoram Orzach
 
PDF
Wireshark course, Ch 03: Capture and display filters
Yoram Orzach
 
Network analysis Using Wireshark Lesson 1- introduction to network troublesho...
Yoram Orzach
 
Network analysis Using Wireshark Lesson 12 - bandwidth and delay issues
Yoram Orzach
 
Network analysis Using Wireshark Lesson 11: TCP and UDP Analysis
Yoram Orzach
 
Network Analysis Using Wireshark Jan 18- seminar
Yoram Orzach
 
Network Analysis Using Wireshark -10- arp and ip analysis
Yoram Orzach
 
Network Analysis Using Wireshark Chapter 09 ethernet and lan switching
Yoram Orzach
 
Network Analysis Using Wireshark Chapter 08 the expert system
Yoram Orzach
 
lesson 7- Network analysis Using Wireshark - advanced statistics tools
Yoram Orzach
 
Network Analysis Using Wireshark -Chapter 6- basic statistics tools
Yoram Orzach
 
Network analysis Using Wireshark Lesson 3: locating wireshark
Yoram Orzach
 
lesson 2- Network analysis Using Wireshark introduction to cellular feb-2017
Yoram Orzach
 
Network Analysis using Wireshark 5: display filters
Yoram Orzach
 
Network analysis Using Wireshark 4: Capture Filters
Yoram Orzach
 
Wireshark - Basics
Yoram Orzach
 
Ch 09 -- ARP & IP Analysis
Yoram Orzach
 
Ch 08 -- Ethernet & LAN Switching Troubleshooting
Yoram Orzach
 
Ch 07 -- The Expert System
Yoram Orzach
 
Ch 06 -- Bandwidth Delay and Jitter Issues
Yoram Orzach
 
Wireshark course, Ch 05: Advanced statistics tools
Yoram Orzach
 
Wireshark course, Ch 03: Capture and display filters
Yoram Orzach
 

Recently uploaded (20)

PDF
Cybersecurity Awareness Presentation ppt.
banodhaharshita
 
PDF
KIPER4D situs Exclusive Game dari server Star Gaming Asia
hokimamad0
 
PDF
PDF document: World Game (s) Great Redesign.pdf
Steven McGee
 
PPTX
Slides Powerpoint: Eco Economic Epochs.pptx
Steven McGee
 
PPTX
The Monk and the Sadhurr and the story of how
BeshoyGirgis2
 
PPTX
Blue and Dark Blue Modern Technology Presentation.pptx
ap177979
 
PPTX
Parallel & Concurrent ...
yashpavasiya892
 
PPT
Introduction to dns domain name syst.ppt
MUHAMMADKAVISHSHABAN
 
PPTX
Black Yellow Modern Minimalist Elegant Presentation.pptx
nothisispatrickduhh
 
PDF
APNIC Update, presented at PHNOG 2025 by Shane Hermoso
APNIC
 
PPT
1965 INDO PAK WAR which Pak will never forget.ppt
sanjaychief112
 
PPTX
Pengenalan perangkat Jaringan komputer pada teknik jaringan komputer dan tele...
Prayudha3
 
PPTX
How tech helps people in the modern era.
upadhyayaryan154
 
PDF
UI/UX Developer Guide: Tools, Trends, and Tips for 2025
Penguin peak
 
PPTX
The Internet of Things (IoT) refers to a vast network of interconnected devic...
chethana8182
 
PPTX
办理方法西班牙假毕业证蒙德拉贡大学成绩单MULetter文凭样本
xxxihn4u
 
PPTX
Unlocking Hope : How Crypto Recovery Services Can Reclaim Your Lost Funds
lionsgate network
 
PPT
Transformaciones de las funciones elementales.ppt
rirosel211
 
PPTX
The Latest Scam Shocking the USA in 2025.pptx
onlinescamreport4
 
PDF
LOGENVIDAD DANNYFGRETRRTTRRRTRRRRRRRRR.pdf
juan456ytpro
 
Cybersecurity Awareness Presentation ppt.
banodhaharshita
 
KIPER4D situs Exclusive Game dari server Star Gaming Asia
hokimamad0
 
PDF document: World Game (s) Great Redesign.pdf
Steven McGee
 
Slides Powerpoint: Eco Economic Epochs.pptx
Steven McGee
 
The Monk and the Sadhurr and the story of how
BeshoyGirgis2
 
Blue and Dark Blue Modern Technology Presentation.pptx
ap177979
 
Parallel & Concurrent ...
yashpavasiya892
 
Introduction to dns domain name syst.ppt
MUHAMMADKAVISHSHABAN
 
Black Yellow Modern Minimalist Elegant Presentation.pptx
nothisispatrickduhh
 
APNIC Update, presented at PHNOG 2025 by Shane Hermoso
APNIC
 
1965 INDO PAK WAR which Pak will never forget.ppt
sanjaychief112
 
Pengenalan perangkat Jaringan komputer pada teknik jaringan komputer dan tele...
Prayudha3
 
How tech helps people in the modern era.
upadhyayaryan154
 
UI/UX Developer Guide: Tools, Trends, and Tips for 2025
Penguin peak
 
The Internet of Things (IoT) refers to a vast network of interconnected devic...
chethana8182
 
办理方法西班牙假毕业证蒙德拉贡大学成绩单MULetter文凭样本
xxxihn4u
 
Unlocking Hope : How Crypto Recovery Services Can Reclaim Your Lost Funds
lionsgate network
 
Transformaciones de las funciones elementales.ppt
rirosel211
 
The Latest Scam Shocking the USA in 2025.pptx
onlinescamreport4
 
LOGENVIDAD DANNYFGRETRRTTRRRTRRRRRRRRR.pdf
juan456ytpro
 

Ch 02 --- sdn and openflow architecture

  • 1. NDI Communications - Engineering & Training SDN & NFV Chapter 2 – SDN and OpenFlow
  • 2. Page 2 Chapter Content Network architecture Network components Tables Applications 2
  • 3. Page 3 Traditional Network Structure C C C C Forwarding Plane: End to end packets forwarding Control Plane: Track topology changes, calculating routes, QoS and security considerations and more M M M M Management Plane: Measurements and configuration
  • 4. Page 4 Software Defined Networking (SDN) OpenFlow Logically centralized control Smart, Slow controller Dumb, Fast switches Controller M Business Applications
  • 5. Page 5 Chapter Content Network architecture Network components Tables Applications
  • 6. Page 6 Traditional Switch Forwarding L2/VLANs Table L3 Table ACLs, QoS Security, LB Packets in Packets out
  • 7. Page 7 Open Flow Switch Forwarding Flow table Packets in Packets out Flow table Flow table Flow table SDN Controller
  • 8. Page 8 Open Flow Components Controller OpenFlow Channel Flow Table Flow Table Flow Table Open Flow Protocol Group Table Tables pipeline Meter Table
  • 9. Page 9 The Flow Table – Principle of Operation Flow entry Flow entry Flow entry Flow entry Controller Open Flow Protocol Flow Table Match Condition Instructions…. ….
  • 10. Page 10 OpenFlow Switch Operations Controller OpenFlow Channel Flow Table Flow Table Flow Table Open Flow Protocol Group Table Tables pipeline Packet In Packet Out Meter Table
  • 11. Page 11 OpenFlow Controller Manages one or more switches via OpenFlow channels Uses OpenFlow protocol to communicate with a OpenFlow aware switch. Provides a network wide abstraction for the applications on north bound. Responsible for programming various tables in the OpenFlow Switch. OpenFlow Switch Controller OpenFlow Switch OpenFlow Switch App. App. OpenFlow Protocol Abstraction layer
  • 12. Page 12 OpenFlow Controller - Redundancy Single switch can be managed by more than one controller for load balancing or redundancy purpose. In the case of more than one controller, the controller can take any one of the following roles: Master Slave Equal OpenFlow Switch Controller OpenFlow Switch OpenFlow Switch Controller App. App. OpenFlow Protocol Abstraction layer
  • 13. Page 13 Controller's Architecture Single Equal Level Master-Slave
  • 14. Page 14 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 OpenFlow Switch Controller Controller OpenFlow Protocol
  • 15. Page 15 OpenFlow Switch Consists of one or more flow tables, group table and meter table. A single switch can be managed by one or more controllers. The flow tables and group table are used during the lookup or forwarding phase in order to forward the packet to appropriate port. Meter table is used to perform simple QOS operations like rate-limiting to complex QOS operations like DiffServ OpenFlow Channel Flow Table Flow Table Flow Table Group Table Packet In Packet Out Meter Table
  • 16. Page 16 OpenFlow Physical & Logical Ports Packets In/Out Packets In/Out OpenFlow Switch Logical Port Physical Port The OpenFlow physical ports are switch defined ports that correspond to a hardware interface of the switch. The OpenFlow logical ports are switch defined ports that don’t correspond directly to a hardware interface of the switch.
  • 17. Page 17 OpenFlow Reserved Ports OpenFlow reserved ports specify generic forwarding actions such as sending to the controller, flooding, or forwarding using non- OpenFlow methods, such as “normal” switch processing. There are required and optional reserved ports: Required: ALL, CONTROLLER, TABLE, IN PORT, ANY Optional: LOCAL, NORMAL, FLOOD
  • 18. Page 18 OpenFlow Required Reserved Ports Packets In/Out Packets In/Out OpenFlow Switch Controller IN PORT: Represents the packet ingress port. ANY: Special value used in some OpenFlow requests when no port is specified ALL: Represents all ports the switch can use for forwarding a specific packet. CONTROLLER: Represents the control channel with the OpenFlow controllers TABLE: Represents the start of the OpenFlow pipeline.
  • 19. Page 19 OpenFlow Optional Reserved Ports Packets In/Out Packets In/Out OpenFlow Switch ControllerLOCAL: Represents the switch’s local networking stack and its management stack. NORMAL: Represents forwarding using the traditional non-OpenFlow pipeline of the switch. FLOOD: Represents flooding using the traditional non- OpenFlow pipeline of the switch.
  • 20. Page 20 Chapter Content Network architecture Network components Tables Applications
  • 21. Page 21 Table Types There are 3 types of tables in the OpenFlow switch: Flow table – the standard table that allows to forward packet to a single port Group table – used for special actions like multicast, broadcast, load balancing and others Meter table – uses Per-flow meters that enables OpenFlow to implement various QoS operations OpenFlow Channel Flow Table Flow Table Flow Table Group Table Packet In Packet Out Meter Table
  • 22. Page 22 Flow Tables Structure Match Instructions Modify Field Remove from queue Forward NORMAL FLOOD Virtual Port Physical Port Forward Mandatory Instructions: • Forward packet to port(s) • Encapsulate and forward to controller • Drop packet • Send to normal processing pipeline • Modify Fields Mandatory Instructions: • Forward packet to port(s) • Encapsulate and forward to controller • Drop packet • Send to normal processing pipeline • Modify Fields Optional InstructionsOptional Instructions Timeout Match Instructions Timeout Match Instructions Timeout Match Instructions Timeout … Ingress Port Ethernet SA DA Type IP SA DA Proto TCP/UDP Src VLAN ID Priority TOS Dst Virtual Port ALL CONTROLLER LOCAL TABLE IN_PORT Drop Priority Priority Priority Priority Counters Counters Counters Counters Cookie Cookie Cookie Cookie Flags Flags Flags Flags
  • 23. Page 23 Instructions Meter meter_id (optional): Direct packet to the specified meter. Apply-Actions action(s) (Optional): Applies the specific action(s) immediately, without any change to the Action Set. Clear-Actions (Optional): Clears all the actions in the action set immediately. Write-Actions action(s) (Required): Merges the specified set of action(s) into the current action set Goto-Table next-table-id (Required): Indicates the next table in the processing pipeline.
  • 24. Page 24 Action Set 1. copy TTL inwards: apply copy TTL inward actions to the packet 2. pop: apply all tag pop actions to the packet 3. push-MPLS: apply MPLS tag push action to the packet 4. push-PBB: apply PBB tag push action to the packet 5. push-VLAN: apply VLAN tag push action to the packet 6. copy TTL outwards: apply copy TTL outwards action to the packet 7. decrement TTL: apply decrement TTL action to the packet 8. set: apply all set-field actions to the packet 9. qos: apply all QoS actions, such as set queue to the packet 10.group: if a group action is specified, apply the actions of the relevant group bucket(s) in the order specified by this list 11.output: if no group action is specified, forward the packet on the port specified by the output action
  • 26. Page 26 Table Match Packet in (Start in table 0) Match in table N? Update counters Execute instructions YES Table-miss entry exist? Drop Packet Goto next entry in table N NO NO YES Execute action set NO YES
  • 28. Page 28 Data Plane – SDN Switch (Example) Simple packet-handling rules Pattern: match packet header bits Actions: drop, forward, modify, send to controller Priority: disambiguate overlapping patterns Counters: #bytes and #packets 1. src=10.20.*.*, dest=31.22.5.*  drop 2. src = *.*.*.*, dest=3.4.*.*  forward(2) 3. src=192.1.2.3, dest=*.*.*.*  send to controller
  • 29. Page 29 Examples (1) Switching * Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action * 00:1f:.. * * * * * * * port6 Flow Switching port3 Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action 00:20.. 00:1f..0800 vlan1 1.2.3.4 5.6.7.8 4 17264 80 port6 Firewall * Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action * * * * * * * * 22 drop
  • 30. Page 30 Examples (2) Routing * Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action * * * * * 5.6.7.8 * * * port6 VLAN Switching * Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot TCP sport TCP dport Action * * vlan1 * * * * * port6, port7, port9 00:1f..
  • 31. Page 31 Group Table A group table consists of group entries. The ability for a flow entry to point to a group enables OpenFlow to represent additional methods of forwarding (e.g. select and all) Group Identifier Action bucketsGroup type Counters
  • 33. Page 33 Meter Table A meter table consists of meter entries, defining per-flow meters. Per-flow meters enable OpenFlow to implement various simple QoS operations, such as rate-limiting, and can be combined with per-port queues to implement complex QoS frameworks, such as DiffServ. Meter Identifier Meter Bands Counters Band type Rate Burst Counters Type specific arguments
  • 35. Page 35 Chapter Content Network architecture Network components Tables Applications
  • 36. Page 36 Unifies Different Kinds of Boxes Router Match: longest destination IP prefix Action: forward out a link Switch Match: destination MAC address Action: forward or flood Firewall (Packet filtering) Match: IP addresses and TCP/UDP port numbers Action: permit or deny NAT Match: IP address and port Action: rewrite address and port 36
  • 37. Page 37 Example OpenFlow Applications Dynamic access control Seamless mobility/migration Server load balancing Network virtualization Using multiple wireless access points Energy-efficient networking Adaptive traffic monitoring Denial-of-Service attack detection
  • 38. Page 38 OpenFlow in the Wild Open Networking Foundation Google, Facebook, Microsoft, Yahoo, Verizon, Deutsche Telekom, and many other companies Commercial OpenFlow switches HP, NEC, Quanta, Dell, IBM, Juniper, … Network operating systems NOX, Beacon, Floodlight, Nettle, ONIX, POX, Frenetic Network deployments Eight campuses, and two research backbone networks Commercial deployments (e.g., Google backbone)
  • 39. Page 39 Summary Yoram Orzach [email protected] Thank You!!! Coming soon LIVE on our NEW e-Learning portal