SlideShare uma empresa Scribd logo
1 de 31
Software-Defined Networking and
      the Floodlight controller


Mike Cohen
Big Switch Networks
Mike.cohen@bigswitch.com

Alex Reimers
Big Switch Networks
Alex.reimers@bigswitch.com
Agenda

                             Overview


                             Architecture


                             Applications


                             Demo


©2012 – Big Switch Networks Inc.
Big Switch Networks

            Overview                                    People @ Big Switch
            Big Switch Networks is a market leader in
                                                                       Guido Appenzeller
            Software-Defined Networking and a strong                   CEO, Big Switch Networks
            proponent of OpenFlow technology                           Former Consulting Assistant Professor
                                                                       at Stanford University, led the team that
                                                                       developed OpenFlow 1.0
            Open Source Projects include:
             Floodlight                                                Rob Sherwood
                                                                        MTS, Big Switch Networks
             Indigo                                                    Author of FlowVisor and key architect
             OFTest                                                    of OpenFlow 1.0

             More to come…
                                                                        Dan Talayco
                                                                        MTS, Big Switch Networks
                                                                        Former member of the Stanford
                                                                        OpenFlow Team. Led development of
            Yes, we’re hiring!                                          the Indigo reference implementation
             Contact me or careers@bigswitch.com       Others include:
                                                        Isabelle Guis, Omar Baldonado, Howie Xu, Mansour
                                                        Karam, Nick Bastin, Saurav Das, and many others…

©2012 – Big Switch Networks Inc.                                                                            3
Floodlight Overview




©2012 – Big Switch Networks Inc.
Floodlight Overview
            An Apache licensed OpenFlow Controller

             Developer friendly Apache license

             Easy to use, extensible Java development
                   environment

             Enterprise grade - Core engine used and
                   supported by Big Switch Networks (running in
                   production today)

             Supports a broad range of physical and virtual
                   OpenFlow switches

             OF 1.0 compliant today – future OF versions on
                   the way


©2012 – Big Switch Networks Inc.                                  5
Floodlight Users and Contributors




                                          Floodlight Adopters:
                                          • University research
                                          • Networking vendors
                                          • Users
                                          • Developers / startups
©2012 – Big Switch Networks Inc.                                    6
Floodlight Switch Compatibility
            A snapshot from Interop




©2012 – Big Switch Networks Inc.              7
Floodlight Growth
            Downloads of Floodlight since January launch
                7000
                                   • Over 200 mailing list posts / month
                6000               • Run rate of 1200+ downloads / month

                5000

                4000

                3000
                                                                           Mailing list
                2000                                                       posts per
                                                                           month

                1000

                        0




©2012 – Big Switch Networks Inc.                                                          8
Building Floodlight
            Fast…and easy…

            Download from Github
            $ git clone git://github.com/floodlight/floodlight.git

            $ sudo apt-get install build-essential default-jdk ant python-dev

            $ cd floodlight; ant

            $ java –jar target/floodlight.jar


            Get the VM (including mininet)
            $ wget http://floodlight.openflowhub.org/files/floodlight-vm.zip

            (login as “floodlight” user, no password)


©2012 – Big Switch Networks Inc.                                                9
Floodlight Roadmap

           Recently launched:           Roadmap:
                                         OpenFlow 1.x support
            Module system
                                         Command line interface
            Ubuntu PPA’s
                                         Persistent storage
            Quantum / OpenStack         Python / Jython support
            Web UI                      Firewall, Load balancer
                                          apps
            Performance improvements
                                         Web UI 2.0
                                         Stable northbound APIs
                                         Better Documentation
©2012 – Big Switch Networks Inc.                                    10
Programming Floodlight




©2012 – Big Switch Networks Inc.
Floodlight Architecture
            Overview
                                    FloodlightProvider
                               (IFloodlightProviderService)    Floodlight is a collection of modules
                                    TopologyManager
                               (ITopologyManagerService)

                                        LinkDiscovery          Some modules (not all) export
                                   (ILinkDiscoveryService)
                                                                services
                                         Forwarding

                                      DeviceManager            All modules in Java
                                      (IDeviceService)

                                        StorageSource
                                   (IStorageSourceService)     Rich, extensible REST API
                                         RestServer
                                      (IRestApiService)

                                    StaticFlowPusher
                               (IStaticFlowPusherService)

                                   VirtualNetworkFilter
                             (IVirtualNetworkFilterService)
©2012 – Big Switch Networks Inc.                                                                  12
Floodlight Architecture
            Module descriptions
                                    FloodlightProvider           Translates OF messages to Floodlight events
                               (IFloodlightProviderService)      Managing connections to switches via Netty

                                    TopologyManager              Computes shortest path using Dijsktra
                               (ITopologyManagerService)         Keeps switch to cluster mappings

                                        LinkDiscovery            Maintains state of links in network
                                   (ILinkDiscoveryService)       Sends out LLDPs

                                                                 Installs flow mods for end-to-end routing
                                         Forwarding
                                                                 Handles island routing
                                      DeviceManager              Tracks hosts on the network
                                      (IDeviceService)           MAC -> switch,port, MAC->IP, IP->MAC

                                        StorageSource            DB style storage (queries, etc)
                                   (IStorageSourceService)       Modules can access all data and subscribe to changes
                                         RestServer              Implements via Restlets (restlet.org)
                                      (IRestApiService)          Modules export RestletRoutable
                                    StaticFlowPusher             Supports the insertion and removal of static flows
                               (IStaticFlowPusherService)        REST-based API

                                   VirtualNetworkFilter          Create layer 2 domain defined by MAC address
                             (IVirtualNetworkFilterService)      Used for OpenStack / Quantum
©2012 – Big Switch Networks Inc.                                                                                         13
Floodlight Programming Model
            Northbound APIs

            IFloodlightModule

                  Java module that runs as part of Floodlight
                                                                                            External
                  Consumes services and events exported by                                Application
                   other modules
                           OpenFlow (ie. Packet-in)
                           Switch add / remove                                                   REST
                                                                   IFloodlight-
                           Device add /remove / move                Module
                           Link discovery

                                                                      Floodlight Controller
            External Application

                  Communicates with Floodlight via REST                     Switch
                    Quantum / Virtual networks                                                     Switch
                    Normalized network state
                                                                                      vSwitch
                    Static flows                                Switch
©2012 – Big Switch Networks Inc.                                                                         14
REST API Reference
            A moving target…but…
          Network State              Static Flows          Virtual Network   User Extensions

          List Hosts                 Add Flow              Create Network    …

          List Links                 Delete Flow           Delete Network

          List Switches              List Flows            Add Host

          GetStats (DPID)            RemoveAll Flows       Remove Host

          GetCounters
          (OFType…)



                                           Floodlight Controller

                                                  Switch
                                                                                  Switch
                            Switch
                                                              vSwitch
©2012 – Big Switch Networks Inc.                                                               15
Programming Floodlight (1)
            Using the REST API

            Fine-grained ability to
                   push flows over REST



            Access to normalized
                   topology and device state



            Extensible access to add
                   new APIs



©2012 – Big Switch Networks Inc.               16
Programming Floodlight (2)
            Creating a module

             Handle OpenFlow
                   messages directly (ie.
                   PacketIn)



             Expose services to other
                   modules



             Add new REST APIs



©2012 – Big Switch Networks Inc.            17
Cool Floodlight Applications




©2012 – Big Switch Networks Inc.
                                                        1
Programmable Patch Panel
            A Floodlight iPhone application

             A simple programmable patch panel built
                   from:
                    Floodlight
                    Pronto 3290 switch running Indigo
             Uses Static Flow Pusher API to redirect
                   traffic between two ports




             Runs remotely on the iPhone!
             Available:
                   http://virtualnow.net/2012/05/03/using-
                   an-openflow-switch-as-a-programmable-
                   patch-panel/

©2012 – Big Switch Networks Inc.                             19
vArmour: Security for OpenFlow

             Founded by security veterans
                   from NetScreen

             Security device integrated with




                                                                           Application


                                                                                         Application


                                                                                                       Application
                   the Floodlight controller

             Showcased the first SDN-capable                   Floodlight Controller

                   deep packet inspection working               Switch

                   with Floodlight at the Open                                                             Switch


                   Networking Summit                Switch


                                                             Switch


            Contact: http://www.varmour.com/



©2012 – Big Switch Networks Inc.                                                                                     20
MobiFlow: Floodlight iPad Interface

             Built be Saurabh
                   Sabnis, Georgia Tech

             Interface to view
                   switches, hosts, netwo
                   rk topology, and
                   statistics

             Access to Static Flow
                   Pusher API

             Available: Coming
                   soon

©2012 – Big Switch Networks Inc.                  21
OpenStack and Quantum




©2012 – Big Switch Networks Inc.
                                                           2
Floodlight OpenStack Integration
            Virtual Networking Support
            Components:

             RestProxy plugin runs inside Quantum                          Quantum
                   module in OpenStack
                                                                            RestProxy
             VirtualNetworkFilter implements layer 2                        Plugin
                   isolation based on MAC

            Highlights:

             Supports physical and virtual switches in             VirtualNetwork
                   OpenFlow networks                                     Filter

             Caveats:
                                                              Floodlight Controller
               No multicast and broadcast isolation
               All DHCP traffic allowed
                                                                   Switch
                                                                                        vSwitch

                                                          Switch            vSwitch

©2012 – Big Switch Networks Inc.
OpenStack / Floodlight Demo
            OpenStack-in-a-VM

            1.       Create two quantum networks        Core Processes

                                                                                              VirtualNetwork Filter
                                                                             Quantum
            2.       Launch 2 hosts in one
                     network: [10.5.5.2, 10.5.5.3]                           RestProxy         Floodlight
                                                                              Plugin           Controller

            3.       Launch 1 host in the other
                     [10.6.6.2]
                                                        OpenStack / Quantum Network
            4.       Test pings:
                                                                               Open vSwitch
                   1.       10.5.5.2 -> 10.5.5.3 [OK]
                   2.       10.6.6.2 -> 10.5.5.2 [NO]

                                                            Host52    Host53
            Each network is in an isolated layer                                                   Host62

            2 domain enforced by Floodlight’s
            VirtualNetworkFilter.                              10.5.5.0/24                       10.6.6.0/24




©2012 – Big Switch Networks Inc.                                                                                      24
OpenFlowHub and Other Open
                        Source Projects




©2012 – Big Switch Networks Inc.
Get Involved with OpenFlowHub
            Join the community!

     What it is:                                                  Get involved:

   1. A community of open source                                   Submit a project
             OpenFlow developers
                                                                   Write a blog post
   2. An OpenFlow Blog (available for
             guest authors)                                        http://www.openflowhub.org

   3. Free hosting, tools, and promotion                           Contact:
           for open source projects                                 mike.cohen@openflowhub.org
           Wiki, forums, bug tracking
             tools, logos, etc.
      Projects:




©2012 – Big Switch Networks Inc. – Proprietary and Confidential                                  26
OFTest: Validating OpenFlow Switches

             A python-based framework and set of
                   tests for OpenFlow switches

             Includes over 60 tests exercising
                   various aspects of OpenFlow

             Useful for testing new OpenFlow
                   implementations and assessing
                   standards compliance
                                                        OFTest connects to both
                                                        the data plane and control
                                                        plane of the switch to
            Available: http://oftest.openflowhub.org/   simulate and monitor
                                                        OpenFlow messages


©2012 – Big Switch Networks Inc.                                                27
LOXI
            Logical OpenFlow eXtensible Interface
           Challenge: The OF specification lives in openflow.h
                                                                          openflow.h              openflow.h
                   Tight coupling of wire format and datastructures         V1.2                    V1.1




                                                                                                                    Input
                   New version of OpenFlow 1.x == LOTS of code
                                                                          openflow.h              openflow.h
                         change                                              V1.3                    V1.0

                   Few non 1.0 switches and controllers have
                         emerged                                                         LOXI




                                                                                                                    Parser
                                                                                        Front-
         Solution: LOXI, an interface that hides OpenFlow wire                           end

         format differences
                 Write once, run across any OF version




                                                                                                                    Code Gen
                                                                        Python           Java            C
                 Support for multiple languages                       Back-end        Back-end       Back-end

                 Example: match MPLS tag XX
                   OF 1.0 – unsupported
                   OF 1.1 – fixed length match




                                                                                                                    Output
                                                                       LOXI.py         LOXI.jar        libLOXI.a
                   OF 1.2+ - OXM-style match

         Available: Coming soon…
©2012 – Big Switch Networks Inc.                                                                                   28
Indigo
            An OpenFlow switch reference implementation
           Version 1:
                   Designed for hardware switches and
                         released under OpenFlow license in 2009
                   Support for 1G and 10G Broadcom chips


         Version 2.0 (coming soon):
                 Based on LOXI – OF 1.x support for free
                 Apache 2.0 license
                 Support for multiple datapaths, both
                       hardware and software
                 Config abstraction layer for easily
                       integrating UI’s


         Available (1.0): http://indigo.openflowhub.org

©2012 – Big Switch Networks Inc.                                   29
Interested in Learning More?

             Check out the website
               http://floodlight.openflowhub.org


             Join the mailing list:
               http://groups.google.com/a/openflowhub.org/group/floo
                     dlight-dev/topics
                    Or just email floodlight-dev@openflowhub.org


             Get the code:
               http://floodlight.openflowhub.org/download

©2012 – Big Switch Networks Inc.                                        30
Thanks!
                                             Mike Cohen
                                     Mike.cohen@bigswitch.com
                                        Big Switch Networks

                                            Alex Reimers
                                    Alex.reimers@bigswitch.com
                                        Big Switch Networks

                                         Floodlight mailing list:
                                   floodlight-dev@openflowhub.org


©2012 – Big Switch Networks Inc.

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform Overview
 
DataPower Restful API Security
DataPower Restful API SecurityDataPower Restful API Security
DataPower Restful API Security
 
Knative로 서버리스 워크로드 구현
Knative로 서버리스 워크로드 구현Knative로 서버리스 워크로드 구현
Knative로 서버리스 워크로드 구현
 
CloudStack Architecture
CloudStack ArchitectureCloudStack Architecture
CloudStack Architecture
 
Prometheus - basics
Prometheus - basicsPrometheus - basics
Prometheus - basics
 
모두의 쿠버네티스 (Kubernetes for everyone)
모두의 쿠버네티스 (Kubernetes for everyone)모두의 쿠버네티스 (Kubernetes for everyone)
모두의 쿠버네티스 (Kubernetes for everyone)
 
Rego Deep Dive
Rego Deep DiveRego Deep Dive
Rego Deep Dive
 
Openstack - An introduction/Installation - Presented at Dr Dobb's conference...
 Openstack - An introduction/Installation - Presented at Dr Dobb's conference... Openstack - An introduction/Installation - Presented at Dr Dobb's conference...
Openstack - An introduction/Installation - Presented at Dr Dobb's conference...
 
Managing the Complexity of Microservices Deployments
Managing the Complexity of Microservices DeploymentsManaging the Complexity of Microservices Deployments
Managing the Complexity of Microservices Deployments
 
Network Rightsizing Best Practices Guide
Network Rightsizing Best Practices GuideNetwork Rightsizing Best Practices Guide
Network Rightsizing Best Practices Guide
 
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
 
Monitoring using Prometheus and Grafana
Monitoring using Prometheus and GrafanaMonitoring using Prometheus and Grafana
Monitoring using Prometheus and Grafana
 
Using GitHub Actions to Deploy your Workloads to Azure
Using GitHub Actions to Deploy your Workloads to AzureUsing GitHub Actions to Deploy your Workloads to Azure
Using GitHub Actions to Deploy your Workloads to Azure
 
Introduction to SaltStack
Introduction to SaltStackIntroduction to SaltStack
Introduction to SaltStack
 
Overview of kubernetes network functions
Overview of kubernetes network functionsOverview of kubernetes network functions
Overview of kubernetes network functions
 
Basic onos-tutorial
Basic onos-tutorialBasic onos-tutorial
Basic onos-tutorial
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
DevOps @ OpenShift Online
DevOps @ OpenShift OnlineDevOps @ OpenShift Online
DevOps @ OpenShift Online
 
OpenStack Ironic - Bare Metal-as-a-Service
OpenStack Ironic - Bare Metal-as-a-ServiceOpenStack Ironic - Bare Metal-as-a-Service
OpenStack Ironic - Bare Metal-as-a-Service
 
TechWiseTV Workshop: Cisco Catalyst 9800 Series Wireless Controller
TechWiseTV Workshop: Cisco Catalyst 9800 Series Wireless ControllerTechWiseTV Workshop: Cisco Catalyst 9800 Series Wireless Controller
TechWiseTV Workshop: Cisco Catalyst 9800 Series Wireless Controller
 

Semelhante a Floodlight - Overview

Cloudware initiative-ow2-conference-nov10
Cloudware initiative-ow2-conference-nov10Cloudware initiative-ow2-conference-nov10
Cloudware initiative-ow2-conference-nov10
OW2
 
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingOSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
Mark Hinkle
 

Semelhante a Floodlight - Overview (20)

Floodlight OpenFlow Contoller - Updated Overview
Floodlight OpenFlow Contoller - Updated OverviewFloodlight OpenFlow Contoller - Updated Overview
Floodlight OpenFlow Contoller - Updated Overview
 
2nd sdn interest group session1 (121218)
2nd sdn interest group   session1 (121218)2nd sdn interest group   session1 (121218)
2nd sdn interest group session1 (121218)
 
Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...
Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...
Introduction to OpenDaylight and Hydrogen, Learnings from the Year, What's Ne...
 
Software Defined Networking: The OpenDaylight Project
Software Defined Networking: The OpenDaylight ProjectSoftware Defined Networking: The OpenDaylight Project
Software Defined Networking: The OpenDaylight Project
 
OpenFlowHub Webinar - Indigo v2.0 and LOXI
OpenFlowHub Webinar - Indigo v2.0 and LOXIOpenFlowHub Webinar - Indigo v2.0 and LOXI
OpenFlowHub Webinar - Indigo v2.0 and LOXI
 
Eclipse Paho - MQTT and the Internet of Things
Eclipse Paho - MQTT and the Internet of ThingsEclipse Paho - MQTT and the Internet of Things
Eclipse Paho - MQTT and the Internet of Things
 
Delivering Network Innovation with SDN - Tom Nadeau
Delivering Network Innovation with SDN - Tom Nadeau Delivering Network Innovation with SDN - Tom Nadeau
Delivering Network Innovation with SDN - Tom Nadeau
 
Accelerating Innovation with Java: The Future is Today
Accelerating Innovation with Java: The Future is TodayAccelerating Innovation with Java: The Future is Today
Accelerating Innovation with Java: The Future is Today
 
Cloudware initiative-ow2-conference-nov10
Cloudware initiative-ow2-conference-nov10Cloudware initiative-ow2-conference-nov10
Cloudware initiative-ow2-conference-nov10
 
Why SDN and ON.Lab are hot topics in networking
Why SDN and ON.Lab are hot topics in networkingWhy SDN and ON.Lab are hot topics in networking
Why SDN and ON.Lab are hot topics in networking
 
Floodlight tutorial - Clemson / Georgia Tech
Floodlight   tutorial - Clemson / Georgia TechFloodlight   tutorial - Clemson / Georgia Tech
Floodlight tutorial - Clemson / Georgia Tech
 
Defining an Open IoT Stack - Presented at IoT World 2015
Defining an Open IoT Stack - Presented at IoT World 2015Defining an Open IoT Stack - Presented at IoT World 2015
Defining an Open IoT Stack - Presented at IoT World 2015
 
Open Source on the Mainframe Mini-Summit 2019 - How Open Source is Modernizin...
Open Source on the Mainframe Mini-Summit 2019 - How Open Source is Modernizin...Open Source on the Mainframe Mini-Summit 2019 - How Open Source is Modernizin...
Open Source on the Mainframe Mini-Summit 2019 - How Open Source is Modernizin...
 
MidoNet Differentiation and Overview
MidoNet Differentiation and OverviewMidoNet Differentiation and Overview
MidoNet Differentiation and Overview
 
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud ComputingOSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
OSCON 2013 - The Hitchiker’s Guide to Open Source Cloud Computing
 
Building managedprivatecloud kvh_vancouversummit
Building managedprivatecloud kvh_vancouversummitBuilding managedprivatecloud kvh_vancouversummit
Building managedprivatecloud kvh_vancouversummit
 
The Enterprise Case for Node.js
The Enterprise Case for Node.jsThe Enterprise Case for Node.js
The Enterprise Case for Node.js
 
SDN/OPENFLOW - THE END OF THE WORLD AS WE KNOW IT?
SDN/OPENFLOW - THE END OF THE WORLD AS WE KNOW IT?SDN/OPENFLOW - THE END OF THE WORLD AS WE KNOW IT?
SDN/OPENFLOW - THE END OF THE WORLD AS WE KNOW IT?
 
Getting Started Developing with Platform as a Service
Getting Started Developing with Platform as a ServiceGetting Started Developing with Platform as a Service
Getting Started Developing with Platform as a Service
 
The lessons of Open Source for the Open Cloud
The lessons of Open Source for the Open CloudThe lessons of Open Source for the Open Cloud
The lessons of Open Source for the Open Cloud
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 

Floodlight - Overview

  • 1. Software-Defined Networking and the Floodlight controller Mike Cohen Big Switch Networks Mike.cohen@bigswitch.com Alex Reimers Big Switch Networks Alex.reimers@bigswitch.com
  • 2. Agenda  Overview  Architecture  Applications  Demo ©2012 – Big Switch Networks Inc.
  • 3. Big Switch Networks Overview People @ Big Switch Big Switch Networks is a market leader in Guido Appenzeller Software-Defined Networking and a strong CEO, Big Switch Networks proponent of OpenFlow technology Former Consulting Assistant Professor at Stanford University, led the team that developed OpenFlow 1.0 Open Source Projects include:  Floodlight Rob Sherwood MTS, Big Switch Networks  Indigo Author of FlowVisor and key architect  OFTest of OpenFlow 1.0  More to come… Dan Talayco MTS, Big Switch Networks Former member of the Stanford OpenFlow Team. Led development of Yes, we’re hiring! the Indigo reference implementation  Contact me or careers@bigswitch.com Others include: Isabelle Guis, Omar Baldonado, Howie Xu, Mansour Karam, Nick Bastin, Saurav Das, and many others… ©2012 – Big Switch Networks Inc. 3
  • 4. Floodlight Overview ©2012 – Big Switch Networks Inc.
  • 5. Floodlight Overview An Apache licensed OpenFlow Controller  Developer friendly Apache license  Easy to use, extensible Java development environment  Enterprise grade - Core engine used and supported by Big Switch Networks (running in production today)  Supports a broad range of physical and virtual OpenFlow switches  OF 1.0 compliant today – future OF versions on the way ©2012 – Big Switch Networks Inc. 5
  • 6. Floodlight Users and Contributors Floodlight Adopters: • University research • Networking vendors • Users • Developers / startups ©2012 – Big Switch Networks Inc. 6
  • 7. Floodlight Switch Compatibility A snapshot from Interop ©2012 – Big Switch Networks Inc. 7
  • 8. Floodlight Growth Downloads of Floodlight since January launch 7000 • Over 200 mailing list posts / month 6000 • Run rate of 1200+ downloads / month 5000 4000 3000 Mailing list 2000 posts per month 1000 0 ©2012 – Big Switch Networks Inc. 8
  • 9. Building Floodlight Fast…and easy… Download from Github $ git clone git://github.com/floodlight/floodlight.git $ sudo apt-get install build-essential default-jdk ant python-dev $ cd floodlight; ant $ java –jar target/floodlight.jar Get the VM (including mininet) $ wget http://floodlight.openflowhub.org/files/floodlight-vm.zip (login as “floodlight” user, no password) ©2012 – Big Switch Networks Inc. 9
  • 10. Floodlight Roadmap Recently launched: Roadmap:  OpenFlow 1.x support  Module system  Command line interface  Ubuntu PPA’s  Persistent storage  Quantum / OpenStack  Python / Jython support  Web UI  Firewall, Load balancer apps  Performance improvements  Web UI 2.0  Stable northbound APIs  Better Documentation ©2012 – Big Switch Networks Inc. 10
  • 11. Programming Floodlight ©2012 – Big Switch Networks Inc.
  • 12. Floodlight Architecture Overview FloodlightProvider (IFloodlightProviderService)  Floodlight is a collection of modules TopologyManager (ITopologyManagerService) LinkDiscovery  Some modules (not all) export (ILinkDiscoveryService) services Forwarding DeviceManager  All modules in Java (IDeviceService) StorageSource (IStorageSourceService)  Rich, extensible REST API RestServer (IRestApiService) StaticFlowPusher (IStaticFlowPusherService) VirtualNetworkFilter (IVirtualNetworkFilterService) ©2012 – Big Switch Networks Inc. 12
  • 13. Floodlight Architecture Module descriptions FloodlightProvider  Translates OF messages to Floodlight events (IFloodlightProviderService)  Managing connections to switches via Netty TopologyManager  Computes shortest path using Dijsktra (ITopologyManagerService)  Keeps switch to cluster mappings LinkDiscovery  Maintains state of links in network (ILinkDiscoveryService)  Sends out LLDPs  Installs flow mods for end-to-end routing Forwarding  Handles island routing DeviceManager  Tracks hosts on the network (IDeviceService)  MAC -> switch,port, MAC->IP, IP->MAC StorageSource  DB style storage (queries, etc) (IStorageSourceService)  Modules can access all data and subscribe to changes RestServer  Implements via Restlets (restlet.org) (IRestApiService)  Modules export RestletRoutable StaticFlowPusher  Supports the insertion and removal of static flows (IStaticFlowPusherService)  REST-based API VirtualNetworkFilter  Create layer 2 domain defined by MAC address (IVirtualNetworkFilterService)  Used for OpenStack / Quantum ©2012 – Big Switch Networks Inc. 13
  • 14. Floodlight Programming Model Northbound APIs IFloodlightModule  Java module that runs as part of Floodlight External  Consumes services and events exported by Application other modules  OpenFlow (ie. Packet-in)  Switch add / remove REST IFloodlight-  Device add /remove / move Module  Link discovery Floodlight Controller External Application  Communicates with Floodlight via REST Switch  Quantum / Virtual networks Switch  Normalized network state vSwitch  Static flows Switch ©2012 – Big Switch Networks Inc. 14
  • 15. REST API Reference A moving target…but… Network State Static Flows Virtual Network User Extensions List Hosts Add Flow Create Network … List Links Delete Flow Delete Network List Switches List Flows Add Host GetStats (DPID) RemoveAll Flows Remove Host GetCounters (OFType…) Floodlight Controller Switch Switch Switch vSwitch ©2012 – Big Switch Networks Inc. 15
  • 16. Programming Floodlight (1) Using the REST API  Fine-grained ability to push flows over REST  Access to normalized topology and device state  Extensible access to add new APIs ©2012 – Big Switch Networks Inc. 16
  • 17. Programming Floodlight (2) Creating a module  Handle OpenFlow messages directly (ie. PacketIn)  Expose services to other modules  Add new REST APIs ©2012 – Big Switch Networks Inc. 17
  • 18. Cool Floodlight Applications ©2012 – Big Switch Networks Inc. 1
  • 19. Programmable Patch Panel A Floodlight iPhone application  A simple programmable patch panel built from:  Floodlight  Pronto 3290 switch running Indigo  Uses Static Flow Pusher API to redirect traffic between two ports  Runs remotely on the iPhone!  Available: http://virtualnow.net/2012/05/03/using- an-openflow-switch-as-a-programmable- patch-panel/ ©2012 – Big Switch Networks Inc. 19
  • 20. vArmour: Security for OpenFlow  Founded by security veterans from NetScreen  Security device integrated with Application Application Application the Floodlight controller  Showcased the first SDN-capable Floodlight Controller deep packet inspection working Switch with Floodlight at the Open Switch Networking Summit Switch Switch Contact: http://www.varmour.com/ ©2012 – Big Switch Networks Inc. 20
  • 21. MobiFlow: Floodlight iPad Interface  Built be Saurabh Sabnis, Georgia Tech  Interface to view switches, hosts, netwo rk topology, and statistics  Access to Static Flow Pusher API  Available: Coming soon ©2012 – Big Switch Networks Inc. 21
  • 22. OpenStack and Quantum ©2012 – Big Switch Networks Inc. 2
  • 23. Floodlight OpenStack Integration Virtual Networking Support Components:  RestProxy plugin runs inside Quantum Quantum module in OpenStack RestProxy  VirtualNetworkFilter implements layer 2 Plugin isolation based on MAC Highlights:  Supports physical and virtual switches in VirtualNetwork OpenFlow networks Filter  Caveats: Floodlight Controller  No multicast and broadcast isolation  All DHCP traffic allowed Switch vSwitch Switch vSwitch ©2012 – Big Switch Networks Inc.
  • 24. OpenStack / Floodlight Demo OpenStack-in-a-VM 1. Create two quantum networks Core Processes VirtualNetwork Filter Quantum 2. Launch 2 hosts in one network: [10.5.5.2, 10.5.5.3] RestProxy Floodlight Plugin Controller 3. Launch 1 host in the other [10.6.6.2] OpenStack / Quantum Network 4. Test pings: Open vSwitch 1. 10.5.5.2 -> 10.5.5.3 [OK] 2. 10.6.6.2 -> 10.5.5.2 [NO] Host52 Host53 Each network is in an isolated layer Host62 2 domain enforced by Floodlight’s VirtualNetworkFilter. 10.5.5.0/24 10.6.6.0/24 ©2012 – Big Switch Networks Inc. 24
  • 25. OpenFlowHub and Other Open Source Projects ©2012 – Big Switch Networks Inc.
  • 26. Get Involved with OpenFlowHub Join the community! What it is: Get involved: 1. A community of open source  Submit a project OpenFlow developers  Write a blog post 2. An OpenFlow Blog (available for guest authors)  http://www.openflowhub.org 3. Free hosting, tools, and promotion  Contact: for open source projects mike.cohen@openflowhub.org  Wiki, forums, bug tracking tools, logos, etc. Projects: ©2012 – Big Switch Networks Inc. – Proprietary and Confidential 26
  • 27. OFTest: Validating OpenFlow Switches  A python-based framework and set of tests for OpenFlow switches  Includes over 60 tests exercising various aspects of OpenFlow  Useful for testing new OpenFlow implementations and assessing standards compliance OFTest connects to both the data plane and control plane of the switch to Available: http://oftest.openflowhub.org/ simulate and monitor OpenFlow messages ©2012 – Big Switch Networks Inc. 27
  • 28. LOXI Logical OpenFlow eXtensible Interface Challenge: The OF specification lives in openflow.h openflow.h openflow.h  Tight coupling of wire format and datastructures V1.2 V1.1 Input  New version of OpenFlow 1.x == LOTS of code openflow.h openflow.h change V1.3 V1.0  Few non 1.0 switches and controllers have emerged LOXI Parser Front- Solution: LOXI, an interface that hides OpenFlow wire end format differences  Write once, run across any OF version Code Gen Python Java C  Support for multiple languages Back-end Back-end Back-end  Example: match MPLS tag XX  OF 1.0 – unsupported  OF 1.1 – fixed length match Output LOXI.py LOXI.jar libLOXI.a  OF 1.2+ - OXM-style match Available: Coming soon… ©2012 – Big Switch Networks Inc. 28
  • 29. Indigo An OpenFlow switch reference implementation Version 1:  Designed for hardware switches and released under OpenFlow license in 2009  Support for 1G and 10G Broadcom chips Version 2.0 (coming soon):  Based on LOXI – OF 1.x support for free  Apache 2.0 license  Support for multiple datapaths, both hardware and software  Config abstraction layer for easily integrating UI’s Available (1.0): http://indigo.openflowhub.org ©2012 – Big Switch Networks Inc. 29
  • 30. Interested in Learning More?  Check out the website  http://floodlight.openflowhub.org  Join the mailing list:  http://groups.google.com/a/openflowhub.org/group/floo dlight-dev/topics  Or just email floodlight-dev@openflowhub.org  Get the code:  http://floodlight.openflowhub.org/download ©2012 – Big Switch Networks Inc. 30
  • 31. Thanks! Mike Cohen Mike.cohen@bigswitch.com Big Switch Networks Alex Reimers Alex.reimers@bigswitch.com Big Switch Networks Floodlight mailing list: floodlight-dev@openflowhub.org ©2012 – Big Switch Networks Inc.

Notas do Editor

  1. Our topology, device manager know about host attachment points and make it possible to deal with integrating openflow and non openflow networks.
  2. Our topology, device manager know about host attachment points and make it possible to deal with integrating openflow and non openflow networks.