This document provides an overview of OpenFlow including:
- The need for OpenFlow to facilitate network innovation and programmability.
- How OpenFlow separates the control and data planes through an open interface.
- The basic components of an OpenFlow switch including flow tables, action sets, and packet processing.
- How OpenFlow controllers communicate with switches through secure channels to program flow entries.
- A demonstration of the packet flow through an OpenFlow network from switch to controller.
- Details on OpenDayLight and Mininet which are commonly used for OpenFlow demonstrations.
Presentation detailed about SDN (Software Defined Network) overview . It covers from basics like different controllers and touches upon some technical details.
Covers Terminologies used, OpenFlow, Controllers, Open Day light, Cisco ONE, Google B4, NFV,etc
Presentation detailed about SDN (Software Defined Network) overview . It covers from basics like different controllers and touches upon some technical details.
Covers Terminologies used, OpenFlow, Controllers, Open Day light, Cisco ONE, Google B4, NFV,etc
Introduction to SDN: Software Defined NetworkingAnkita Mahajan
SDN is the next big thing in networking. It focuses on separating the intelligence from the hardware. OpenFlow is one of the ways (currently the open standard followed by all Datacenters) to implement SDN.
Introduction to Network Function Virtualization (NFV)rjain51
Class lecture by Prof. Raj Jain on Introduction to Network Function Virtualization (NFV). The talk covers Four Innovations of NFV, Network Function Virtualization, NFV, Why We need NFV?, NFV and SDN Relationship, Mobile Network Functions, ETSI NFV ISG, NFV Specifications, NFV Architecture, NFV Concepts, Network Forwarding Graph, NFV Reference Points, NFV Framework Requirements, NFV Use Cases, NFV Proof of Concepts, PoCs, ETSI ISG Timeline, Introduction to, Four Innovations of NFV, Network Function Virtualization, NFV, Why We need NFV?, NFV and SDN Relationship, Mobile Network Functions, ETSI NFV ISG, NFV Specifications, NFV Architecture, NFV Concepts, Network Forwarding Graph, NFV Reference Points, NFV Framework Requirements, NFV Use Cases, NFV Proof of Concepts, PoCs, ETSI ISG Timeline. Video recording available in YouTube.
Introduction to Software Defined Networking (SDN)rjain51
Class lecture by Prof. Raj Jain on Introduction to . The talk covers Origins of SDN, What is SDN?, Original Definition of SDN, What = Why We need SDN?, SDN Definition, XMPP, XMPP in Data Centers, Path Computation Element, PCE, Forwarding and Control Element, Sample ForCES Exchanges, Application Layer Traffic Optimization, ALTO, ALTO Extension, Current SDN Debate: What vs. How?, SDN Controller Functions, RESTful APIs, OSGi Framework, Open Daylight SDN Controller, OpenDaylight Tools, Affinity Metadata Service, SDN Related Organizations and Projects, SDN Web Sites, Hierarchy of Operations, Introduction to, Origins of SDN, What is SDN?, Original Definition of SDN, What = Why We need SDN?, SDN Definition, XMPP, XMPP in Data Centers, Path Computation Element, PCE, Forwarding and Control Element, Sample ForCES Exchanges, Application Layer Traffic Optimization, ALTO, ALTO Extension, Current SDN Debate: What vs. How?, SDN Controller Functions, RESTful APIs, OSGi Framework, Open Daylight SDN Controller, OpenDaylight Tools, Affinity Metadata Service, SDN Related Organizations and Projects, SDN Web Sites. Video recording available in YouTube.
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SAMeh Zaghloul
Sameh Zaghloul
Technology Manager @ IBM
+2 0100 6066012
zaghloul@eg.ibm.com
SDN: Technology that enables data center team to use software to efficiently control network resources
SDN Overview
SDN Standards
NFV – Network Function Virtualization
SDN Scenarios and Use Cases
SDN Sample Research Projects
SDN Technology Survey
SDN Case Study
SDN Online Courses
SDN Lab SW Tools
- OpenStack Framework
- OpenDayLighyt – SDN Controller
- FloodLight – SDN Controller
- Open vSwitch – Virtual Switch
- MiniNet – Virtual Network: OpenFlow Switches, SDN Controllers, and Servers/Hosts
- OMNet++ Network Simulator
- Avior – Sample FloodLight Java Application
- netem - Network Emulation
- NOX/POX - C++/ Python OpenFlow API for building network control applications
- Pyretic = Python + Frenetic - Enables network programmers and operators to write modular network applications by providing powerful abstractions
- Resonance - Event-Driven Control for Software-Defined Networks (written in Pyretic)
SDN Project
Introduction to SDN: Software Defined NetworkingAnkita Mahajan
SDN is the next big thing in networking. It focuses on separating the intelligence from the hardware. OpenFlow is one of the ways (currently the open standard followed by all Datacenters) to implement SDN.
Introduction to Network Function Virtualization (NFV)rjain51
Class lecture by Prof. Raj Jain on Introduction to Network Function Virtualization (NFV). The talk covers Four Innovations of NFV, Network Function Virtualization, NFV, Why We need NFV?, NFV and SDN Relationship, Mobile Network Functions, ETSI NFV ISG, NFV Specifications, NFV Architecture, NFV Concepts, Network Forwarding Graph, NFV Reference Points, NFV Framework Requirements, NFV Use Cases, NFV Proof of Concepts, PoCs, ETSI ISG Timeline, Introduction to, Four Innovations of NFV, Network Function Virtualization, NFV, Why We need NFV?, NFV and SDN Relationship, Mobile Network Functions, ETSI NFV ISG, NFV Specifications, NFV Architecture, NFV Concepts, Network Forwarding Graph, NFV Reference Points, NFV Framework Requirements, NFV Use Cases, NFV Proof of Concepts, PoCs, ETSI ISG Timeline. Video recording available in YouTube.
Introduction to Software Defined Networking (SDN)rjain51
Class lecture by Prof. Raj Jain on Introduction to . The talk covers Origins of SDN, What is SDN?, Original Definition of SDN, What = Why We need SDN?, SDN Definition, XMPP, XMPP in Data Centers, Path Computation Element, PCE, Forwarding and Control Element, Sample ForCES Exchanges, Application Layer Traffic Optimization, ALTO, ALTO Extension, Current SDN Debate: What vs. How?, SDN Controller Functions, RESTful APIs, OSGi Framework, Open Daylight SDN Controller, OpenDaylight Tools, Affinity Metadata Service, SDN Related Organizations and Projects, SDN Web Sites, Hierarchy of Operations, Introduction to, Origins of SDN, What is SDN?, Original Definition of SDN, What = Why We need SDN?, SDN Definition, XMPP, XMPP in Data Centers, Path Computation Element, PCE, Forwarding and Control Element, Sample ForCES Exchanges, Application Layer Traffic Optimization, ALTO, ALTO Extension, Current SDN Debate: What vs. How?, SDN Controller Functions, RESTful APIs, OSGi Framework, Open Daylight SDN Controller, OpenDaylight Tools, Affinity Metadata Service, SDN Related Organizations and Projects, SDN Web Sites. Video recording available in YouTube.
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SAMeh Zaghloul
Sameh Zaghloul
Technology Manager @ IBM
+2 0100 6066012
zaghloul@eg.ibm.com
SDN: Technology that enables data center team to use software to efficiently control network resources
SDN Overview
SDN Standards
NFV – Network Function Virtualization
SDN Scenarios and Use Cases
SDN Sample Research Projects
SDN Technology Survey
SDN Case Study
SDN Online Courses
SDN Lab SW Tools
- OpenStack Framework
- OpenDayLighyt – SDN Controller
- FloodLight – SDN Controller
- Open vSwitch – Virtual Switch
- MiniNet – Virtual Network: OpenFlow Switches, SDN Controllers, and Servers/Hosts
- OMNet++ Network Simulator
- Avior – Sample FloodLight Java Application
- netem - Network Emulation
- NOX/POX - C++/ Python OpenFlow API for building network control applications
- Pyretic = Python + Frenetic - Enables network programmers and operators to write modular network applications by providing powerful abstractions
- Resonance - Event-Driven Control for Software-Defined Networks (written in Pyretic)
SDN Project
Graduating To Go - A Jumpstart into the Go Programming LanguageKaylyn Gibilterra
This workshop jumps through a lot of what is covered in the Go Tour. The exercises are new and match more along with the class content, and some pieces (like testing and APIs) are not covered in the Go Tour.
Dive deep into an actual enterprise Linux migration by walking through the planning and execution of the process as seen by our customers. Our enterprise architects will break down the key migration steps to explain the available options, decisions made, and demonstrate actions on a live system. This episode gives you a representative migration experience before you actually migrate, illustrating: Side-by-side comparisons between Red Hat Enterprise Linux and CentOS; steps to consider for the operating system; and
steps to consider for common application stacks and packages.
In-Memory Computing Essentials for Architects and EngineersDenis Magda
Slides of IMC Essentials workshop.
The workshop covers fundamental capabilities of in-memory computing platforms that boost high-load applications and services, and bring existing IT architecture to the next level by storing and processing a massive amount of data both in RAM and, optionally, on disk.
The capabilities and benefits of such platforms will be demonstrated with the usage of Apache Ignite, which is the in-memory computing platform that is durable, strongly consistent, and highly available with powerful SQL, key-value and processing APIs.
The Linux Foundation has over 500 corporate members involved in over 70 member-sponsored projects. In 2016, the Linux Foundation convened over 20,000 people from 85 countries and over 4000 companies at 150 events around the world. Over 800,000 students from 215 countries have enrolled in Linux Foundation training programs. Who is driving this growth? Why do companies invest valuable resources in collaborative development? What have we learned along the way?
Linux Security APIs and the Chromium Sandbox (SwedenCpp Meetup 2017)Patricia Aas
The Linux Security and Isolation APIs have become the basis of some of the most useful features server-side, providing the isolation required for efficient containers. However, these APIs also form the basis of the Chromium Sandbox on Linux, and we will study them in that context.
This presentation goes more in depth on some key points from the NDC (2017) presentation.
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware
The OCCIware project aims at managing in a unified manner all layers and domains of the Cloud (XaaS), by building on the Open Cloud Computing (OCCI) standard. OCCIware Metamodel formally specifies the main OCCI concepts. Today a first EMF metamodel is defined that adds to OCCI new concepts such as Extension, Configuration, and EDataType, addressing some limitations of OCCI.
This session highlights OCCIware platform two main components:
– The OCCIware Studio Factory, allowing to produce visually customizable diagram editors for any Cloud configuration business domain modeled in OCCI using the OCCI Extension Studio, such as the flagship Docker Studio ;
– The OCCIware Runtime, based on OW2 erocci project, including the tools for deployment, supervision and administration, and allowing to federate multiple XaaS Cloud runtimes, such as the Roboconf PaaS server and the ActiveEon Cloud Automation multi-IaaS connector.
This talk includes a demonstration of the Docker connector and of how to use the OCCIware Cloud Designer to configure a real life Cloud application (a Java API server on top of a MongoDB cluster)’s business, platform and infrastructure layers seamlessly on both VirtualBox and OpenStack infrastructure.
In queste slide potete trovare una raccolta di informazioni generiche e qualche link a risorse utili per iniziare o per approfondire la conoscenza di questo nuovo linguaggio di programmazione.
In-depth forensic analysis of Windows registry filesMaxim Suhanov
Uncovering the details of how a registry file is organized, how to locate & recover deleted data, and why third-party offline registry editors & viewers are failing to do their job well.
Errata.
- Page 8: "Zero-based", should be: "Zero-based, unset bits not counted".
- Page 12: "multiple delete records (entities)", should be: "multiple deleted records (entities)".
Software Defined Networks are coming to leverage the power of the networks, defining controllers to manage the network elements simplifying the configuration, bringing flexibility and blablabla ...
But ... how to program and manage this new monster?
Nick McKeown
Professor
Stanford University
ONS2015: http://bit.ly/ons2015sd
ONS Inspire! Webinars: http://bit.ly/oiw-sd
Watch the talk (video) on ONS Content Archives: http://bit.ly/ons-archives-sd
The document is a scientific composition about the
system architecture of OpenFlow and describes their principles of data handling, the types of messages and operations on the network.
The idea of programmable networks has recently re-gained momentum due to the emergence of Software-Defined Networking (SDN) and its promises to dramatically simplify network management and enable innovation.
SDN decouples the forwarding hardware from control decisions so to make the latter programmable. The controller, implementing the control plane, communicates with the switching device through, what is commonly referred as, the southbound-API. While network applications communicate with the controller via the northbound-API.
While OpenFlow has emerged as one of the most widely adopted API for the southbound API, the situation is far more fragmented for the northbound API. This presentation will take a fresh look at northbound and southbound SDN interface requirements and will investigate the advantages that the OMG’s Data Distribution Service standard can bring in terms of performance, scalability, and interoperability.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2IDXhIf.
Changhoon Kim talks about the new PISA ASICs which promises multi Tb/s of packet processing with uncompromised programmability, and P4, a new domain-specific high-level language designed for networking. He shows how PISA and P4 will change the way we design, build, and run not just our networks, but also distributed systems and applications. Filmed at qconsf.com.
Changhoon Kim is a Director of System Architecture at Barefoot Networks. Prior to Barefoot, he worked at Windows Azure, Microsoft’s cloud-service division, and led engineering and research projects on the architecture, performance, and management of datacenter networks.
Analytical Modeling of End-to-End Delay in OpenFlow Based NetworksAzeem Iqbal
OpenFlow enabled networks split and separate the data and control planes of traditional networks. This design commodifies network switches and enables centralized control of the network. Control decisions are made by an OpenFlow controller, and locally cached by switches, as directed by controllers. Since controllers are not necessarily co-located with switches that can significantly impact the forwarding delay incurred by packets in switches. Only very few studies have been conducted to evaluate the performance of OpenFlow in terms of end-to-end delay. In this work we develop a stochastic model for the end to end delay in OpenFlow switches based on measurements made in Internetscale experiments performed on three different platforms, i.e. Mininet, the GENI testbed and the OF@TEIN testbed.
ER(Entity Relationship) Diagram for online shopping - TAEHimani415946
https://bit.ly/3KACoyV
The ER diagram for the project is the foundation for the building of the database of the project. The properties, datatypes, and attributes are defined by the ER diagram.
1.Wireless Communication System_Wireless communication is a broad term that i...JeyaPerumal1
Wireless communication involves the transmission of information over a distance without the help of wires, cables or any other forms of electrical conductors.
Wireless communication is a broad term that incorporates all procedures and forms of connecting and communicating between two or more devices using a wireless signal through wireless communication technologies and devices.
Features of Wireless Communication
The evolution of wireless technology has brought many advancements with its effective features.
The transmitted distance can be anywhere between a few meters (for example, a television's remote control) and thousands of kilometers (for example, radio communication).
Wireless communication can be used for cellular telephony, wireless access to the internet, wireless home networking, and so on.
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesSanjeev Rampal
Talk presented at Kubernetes Community Day, New York, May 2024.
Technical summary of Multi-Cluster Kubernetes Networking architectures with focus on 4 key topics.
1) Key patterns for Multi-cluster architectures
2) Architectural comparison of several OSS/ CNCF projects to address these patterns
3) Evolution trends for the APIs of these projects
4) Some design recommendations & guidelines for adopting/ deploying these solutions.
This 7-second Brain Wave Ritual Attracts Money To You.!nirahealhty
Discover the power of a simple 7-second brain wave ritual that can attract wealth and abundance into your life. By tapping into specific brain frequencies, this technique helps you manifest financial success effortlessly. Ready to transform your financial future? Try this powerful ritual and start attracting money today!
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
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
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
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
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
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
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
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
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