SlideShare une entreprise Scribd logo
1  sur  14
INTRODUCTION TO   PENFLOW
STATEMENT OF PRODUCT DIRECTION




This statement of product direction sets forth Juniper Networks‟
current intention and is subject to change at any time without
notice. No purchases are contingent upon Juniper Networks
delivering any feature or functionality depicted in this
presentation.




2                     Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
OPENFLOW – WHAT IS IT?
Openflow compromises an architecture and a protocol
In a traditional networking device, the control processes and
forwarding functionality reside on the network device

                                                                                                      penflow
     Control                                                           Control            penflow   Controller


    Forwarding                                                          Forwarding

               Traditional                Openflow-enabled

In the Openflow architecture, an interface is created on the
network device through which an external control process known
as a „controller‟, is able the program the packet matching and
forwarding operations of the networking device

3                            Copyright © 2011 Juniper Networks, Inc.    www.juniper.net
OPENFLOW – WHAT IS IT?
The Openflow protocol defines
     A standardized API and communication method between the external
      controller and Openflow process on the networking device
     The use of „Flow-tables‟ held on the networking device which are
      populated by the external controller which are used for matching and
      forwarding packets
Openflow Flow-tables contain
     Header Fields – fields against which a packet can be matched
     Counters – statistics reporting capabilities
     Actions – defining how the packet should be treated (forward, drop,
      modify)

There is no use of static configuration or cli/xml-based programming
via Openflow, nor does Openflow provide functionality to boot or
maintain the networking device



4                          Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
OPENFLOW 1.0 FLOW TABLE & FIELDS
                    Ingress           Ethernet                        VLAN                          IP                       TCP/UDP
    Header Fields     Port    SA         DA         Type         ID      Priority      SA      DA        Proto   TOS        Src   Dst




                         Classifier                      Action                        Statistics
                         Classifier                      Action                        Statistics
    Flow Table           Classifier                      Action                        Statistics
    OF1.0 style




                                                             …
                         Classifier                      Action                        Statistics

                                                                       Physical Port
                                                                                      ALL
                                                                               CONTROLLER
    Actions                                 Forward            Virtual
                                                                                    LOCAL
                                                                Port
                                                                                    TABLE
                                                                                    IN_PORT
                                                                                                         Mandatory Action
                                                                      Drop
                                                               Virtual              NORMAL                Optional Action
                                            Forward
                                                                Port                FLOOD
                                                                Enqueue
                                                               Modify Field

5                                  Copyright © 2011 Juniper Networks, Inc.   www.juniper.net

                                                                                                                     Actions
OPENFLOW – WHAT IS IT?
Two components
     Openflow controller
       Controls one or more switches
       Computes paths, maintains state, formulates flows and programs
        Openflow Switches
     Openflow Switch
       Receives commands (flow entries, queries) from the Openflow
        controller in order to populate entries in the flow-table
       Holds the flow-table in volatile memory

Flow-table population can occur in two modes
     Reactive – Flow-table programmed in response to received packet
     Proactive – Flow-table is populated with pre-provisioned entries



6                           Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
MODES OF OPERATION

    Reactive – Data plane driven                                            Pro-active – Configuration driven
                                                                            •        Like Static routes & LSPs
            Base principle of flow caching
                                                                            •        Not stored in configuration file



              Controller         FIB                                                  Controller           FIB

                                       C
                            4



                      Switch     FIB                                                              Switch   FIB

                1                2                3                                      1                 2            3


        1.     Receive packet                                                   1.     Receive packet
        2.     Perform lookup in local FIB                                      2.     Perform lookup in local FIB
        3.     Hit: forward to port                                             3.     Hit: forward to port
        4.     Miss: forward to controller                                      4.     Miss: DROP
                 Controller inspects packet
                 Performs route computation
                 C: Inserts new flow entry

7                                          Copyright © 2011 Juniper Networks, Inc.    www.juniper.net
OPENFLOW SWITCH / NETWORK DESIGN

                                   Switch Control Plane
                                          Applications                                                  Switch Control Plane:
                                                                                                        • Logically centralized
                                       OpenFlow Controller
                                                                                                        • Physically distributed in one
                                                                                                          or more compute devices
                                                                                                        • Embedded OF Controller to
                        OpenFlow                                                                          communicate with switches
                        Protocol

                                                                          penflow switch
                                  penflow switch


                penflow switch                     penflow switch



                                 penflow switch                          penflow switch




Source: OpenFlow.org




8                                           Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
THE ISSUE:
APPLICATIONS DON’T COMMUNICATE WITH THE NETWORK

           THE HUMAN WORLD                                                           THE NETWORK WORLD


          Network Aware Applications:                                                     Application Aware Networking:
          Applications blindly probe the network                                          Networks spy on traffic to try to
          to understand what it can deliver                                               understand applications


             Game ping-stats, Doppler, Geo-                                                  Deep Packet Inspection, Deep
              location, whois, proprietary                                                     Flow Inspection
              codecs, proprietary control
                                                                                              Approximate application by
              channels in VBRB
                                                                                               fingerprinting
             Approximate topology/location
                                                                                              Service specific overlay topologies
              thru:
                                                                                              Application-based Quality of
             Active/game-based broadcast,
                                                                                               Service profiles
              passive derivation



      Current approximation techniques are barely sufficient and inefficient
  9                                Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
OPENFLOW HELPS BY ENABLING NETWORK
          PROGRAMMABILITY FOR COMMUNICATION




       APPLICATION                     NETWORK                               NETWORK                       APPLICATION



         Applications made better by                                    Networks made better by information
          information from network                                               from application
      Understanding of end-device                                           Bandwidth and resource optimization
       capabilities                                                          New service topologies
      Real location / topology                                              Security identification
      Adjust behavior to real-time usage                                    Service-specific packet treatment
      Billing granularity




     Flexibility of service placement                                                Control of resources from
                                                                                           applications

10                                 Copyright © 2011 Juniper Networks, Inc.    www.juniper.net
HOW DO YOU MAKE THIS HAPPEN?
THE APPLICATION WORLD                                                                             THE APPLICATION WORLD

                                                  Real-time topology
                                                    understanding
                                                   (ALTO, BGP-TE)                                    SI       ISV      Service             Research             Enterprise
                                                                                                   Partner   Partner   Provider            Institution          Customer




                                                Steering traffic through                                        Web Services API
                                                    optimal paths
                                                        (PCE)
                             Network                                                                    Orchestration Across Networks
                          Programmability
                                               Selecting specific traffic




                                                                                                                                                                   OpenFlow
                                                                                                                                  BGP-TE
                                                    (OpenFlow)




                                                                                                                          ALTO




                                                                                                                                                         Mgmt
                                                                                                                                              PCE
                                                                                                   Network APIs




                                                                                                                                                                              …
                                              Opening more touchpoints
                                             to control: Gateways, billing
                                                  collectors, service
                                              appliances, CDN, DPI/IDP


THE NETWORK WORLD                                                                                   THE NETWORK WORLD
   11
  Programmable Networking is SFW            Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
AN EXAMPLE: BE “IN THE NETWORK”
Weak architecture = one-legged tap dancing                             Continuous, real-time streaming of surrounding
                                                                             content, resources, places, people



Where am I?                              I am here!
                                                                                                                           And this is
                                                                        You’re here!                                      around you:
                                    Active broadcast                    <access>
                                    Game broadcast                                                                        <content>
                                                                        <capability>                                      <resources>
                                    Passive                               <BW>
                                     derivation                                                                             <places>
                                                                          <profile>                                         <people>
                                                                                                                               …




         !     “Above the topology”
              “Visualize the topology”
               “Below the topology”
                                                                                                 “In the topology”



      Low value in navigational coordinates                                                       APPLICATION   NETWORK




12                                   Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
WANT MORE ON OPENFLOW?
Useful URLs:
Open Networking Foundation https://www.opennetworking.org/
Openflow Whitepaper
http://www.openflow.org//documents/openflow-wp-latest.pdf
Openflow protocol
https://www.opennetworking.org/standards/open-flow/50-
openflow




13                   Copyright © 2011 Juniper Networks, Inc.   www.juniper.net
Introduction to PenFlow: OpenFlow and Programmable Networking

Contenu connexe

Tendances

Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureDATA Inc.
 
Tipologie di attacchi a reti wireless protette
Tipologie di attacchi a reti wireless protetteTipologie di attacchi a reti wireless protette
Tipologie di attacchi a reti wireless protetteEnrico Cambiaso
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice ArchitectureNguyen Tung
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Patternjeetendra mandal
 
Resource-Oriented Architecture (ROA)
Resource-Oriented Architecture (ROA)Resource-Oriented Architecture (ROA)
Resource-Oriented Architecture (ROA)WSO2
 
Information architecture unit i
Information architecture unit iInformation architecture unit i
Information architecture unit iAman Sharma
 

Tendances (6)

Introduction to Service Oriented Architecture
Introduction to Service Oriented ArchitectureIntroduction to Service Oriented Architecture
Introduction to Service Oriented Architecture
 
Tipologie di attacchi a reti wireless protette
Tipologie di attacchi a reti wireless protetteTipologie di attacchi a reti wireless protette
Tipologie di attacchi a reti wireless protette
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Pattern
 
Resource-Oriented Architecture (ROA)
Resource-Oriented Architecture (ROA)Resource-Oriented Architecture (ROA)
Resource-Oriented Architecture (ROA)
 
Information architecture unit i
Information architecture unit iInformation architecture unit i
Information architecture unit i
 

En vedette

Introduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFVIntroduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFVKingston Smiler
 
Open Flow Tutorial Series - Set 1
Open Flow Tutorial Series - Set 1Open Flow Tutorial Series - Set 1
Open Flow Tutorial Series - Set 1Radhika Hirannaiah
 
NFV for beginners
NFV for beginnersNFV for beginners
NFV for beginnersDave Neary
 
Introduction to OpenFlow
Introduction to OpenFlowIntroduction to OpenFlow
Introduction to OpenFlowrjain51
 
Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)rjain51
 

En vedette (6)

Introduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFVIntroduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFV
 
OpenFlow Group Table
OpenFlow Group TableOpenFlow Group Table
OpenFlow Group Table
 
Open Flow Tutorial Series - Set 1
Open Flow Tutorial Series - Set 1Open Flow Tutorial Series - Set 1
Open Flow Tutorial Series - Set 1
 
NFV for beginners
NFV for beginnersNFV for beginners
NFV for beginners
 
Introduction to OpenFlow
Introduction to OpenFlowIntroduction to OpenFlow
Introduction to OpenFlow
 
Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)
 

Similaire à Introduction to PenFlow: OpenFlow and Programmable Networking

Open stack with_openflowsdn-torii
Open stack with_openflowsdn-toriiOpen stack with_openflowsdn-torii
Open stack with_openflowsdn-toriiHui Cheng
 
Openflow overview
Openflow overviewOpenflow overview
Openflow overviewopenflowhub
 
Developing SDN apps in Ryu
Developing SDN apps in RyuDeveloping SDN apps in Ryu
Developing SDN apps in RyuChe Wei Lin
 
Floodlight OpenFlow Controller Overview
Floodlight OpenFlow Controller OverviewFloodlight OpenFlow Controller Overview
Floodlight OpenFlow Controller Overviewmscohen02
 
FlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerFlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerHolger Winkelmann
 
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANGTail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANGTail-f Systems
 
Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC DVClub
 
Introduction to flow analysis
Introduction to flow analysisIntroduction to flow analysis
Introduction to flow analysisProQSys
 
Nat load balance_5.0e_feature_module
Nat load balance_5.0e_feature_moduleNat load balance_5.0e_feature_module
Nat load balance_5.0e_feature_moduleLuis Nagasako
 
Alcatel-Lucent ETSI Workshop with Peleg Erlich
Alcatel-Lucent ETSI Workshop with Peleg ErlichAlcatel-Lucent ETSI Workshop with Peleg Erlich
Alcatel-Lucent ETSI Workshop with Peleg ErlichAlcatel-Lucent Cloud
 
OpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANGOpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANGTail-f Systems
 
Plugin-able POS Solutions by Javascript @HDM9 Taiwan
Plugin-able POS Solutions by Javascript @HDM9 TaiwanPlugin-able POS Solutions by Javascript @HDM9 Taiwan
Plugin-able POS Solutions by Javascript @HDM9 TaiwanRack Lin
 
Openlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionOpenlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionCcie Light
 
Sdn and open flow tutorial 4
Sdn and open flow tutorial 4Sdn and open flow tutorial 4
Sdn and open flow tutorial 4UmaMahesh Sistu
 
第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」
第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」
第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」Sho Shimizu
 

Similaire à Introduction to PenFlow: OpenFlow and Programmable Networking (20)

Hybrid Programmable Forwarding Planes: BoF Session
Hybrid Programmable Forwarding Planes: BoF SessionHybrid Programmable Forwarding Planes: BoF Session
Hybrid Programmable Forwarding Planes: BoF Session
 
Open stack with_openflowsdn-torii
Open stack with_openflowsdn-toriiOpen stack with_openflowsdn-torii
Open stack with_openflowsdn-torii
 
Openflow overview
Openflow overviewOpenflow overview
Openflow overview
 
Developing SDN apps in Ryu
Developing SDN apps in RyuDeveloping SDN apps in Ryu
Developing SDN apps in Ryu
 
Floodlight OpenFlow Controller Overview
Floodlight OpenFlow Controller OverviewFloodlight OpenFlow Controller Overview
Floodlight OpenFlow Controller Overview
 
PLC
PLCPLC
PLC
 
OpenFlow Tutorial
OpenFlow TutorialOpenFlow Tutorial
OpenFlow Tutorial
 
FlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerFlowER Erlang Openflow Controller
FlowER Erlang Openflow Controller
 
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANGTail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
Tail-f Webinar OpenFlow Switch Management Using NETCONF and YANG
 
Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC Approaches for Power Management Verification of SOC
Approaches for Power Management Verification of SOC
 
Introduction to flow analysis
Introduction to flow analysisIntroduction to flow analysis
Introduction to flow analysis
 
Nat load balance_5.0e_feature_module
Nat load balance_5.0e_feature_moduleNat load balance_5.0e_feature_module
Nat load balance_5.0e_feature_module
 
SDN – Hybrid architecture
SDN – Hybrid architectureSDN – Hybrid architecture
SDN – Hybrid architecture
 
Alcatel-Lucent ETSI Workshop with Peleg Erlich
Alcatel-Lucent ETSI Workshop with Peleg ErlichAlcatel-Lucent ETSI Workshop with Peleg Erlich
Alcatel-Lucent ETSI Workshop with Peleg Erlich
 
OpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANGOpenFlow Switch Management using NETCONF and YANG
OpenFlow Switch Management using NETCONF and YANG
 
Plugin-able POS Solutions by Javascript @HDM9 Taiwan
Plugin-able POS Solutions by Javascript @HDM9 TaiwanPlugin-able POS Solutions by Javascript @HDM9 Taiwan
Plugin-able POS Solutions by Javascript @HDM9 Taiwan
 
Openlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionOpenlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sion
 
XS Boston 2008 XenLoop
XS Boston 2008 XenLoopXS Boston 2008 XenLoop
XS Boston 2008 XenLoop
 
Sdn and open flow tutorial 4
Sdn and open flow tutorial 4Sdn and open flow tutorial 4
Sdn and open flow tutorial 4
 
第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」
第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」
第2回クラウドネットワーク研究会 「OpenFlowコントローラとその実装」
 

Plus de Juniper Developer Resources Cooney (13)

An In-Depth Look at Junos Space SDK
An In-Depth Look at Junos Space SDKAn In-Depth Look at Junos Space SDK
An In-Depth Look at Junos Space SDK
 
Programmable WAN Networking is SFW
Programmable WAN Networking is SFWProgrammable WAN Networking is SFW
Programmable WAN Networking is SFW
 
Network Innovation with Open Software
Network Innovation with Open SoftwareNetwork Innovation with Open Software
Network Innovation with Open Software
 
Network Information Factories
Network Information FactoriesNetwork Information Factories
Network Information Factories
 
JavaOne Keynote: Programmable Networking is SFW
JavaOne Keynote: Programmable Networking is SFWJavaOne Keynote: Programmable Networking is SFW
JavaOne Keynote: Programmable Networking is SFW
 
Junos Space SDK
Junos Space SDKJunos Space SDK
Junos Space SDK
 
Junos SDK Data Sheet
Junos SDK Data SheetJunos SDK Data Sheet
Junos SDK Data Sheet
 
Macadamian And Junos SDK
Macadamian And Junos SDKMacadamian And Junos SDK
Macadamian And Junos SDK
 
For Developers: Why Should I Care about Programmability
For Developers: Why Should I Care about ProgrammabilityFor Developers: Why Should I Care about Programmability
For Developers: Why Should I Care about Programmability
 
Joulex & Junos Space SDK: Customer Success Story
Joulex & Junos Space SDK: Customer Success StoryJoulex & Junos Space SDK: Customer Success Story
Joulex & Junos Space SDK: Customer Success Story
 
Junos Space SDK: Unlocking Data for Developers
Junos Space SDK: Unlocking Data for DevelopersJunos Space SDK: Unlocking Data for Developers
Junos Space SDK: Unlocking Data for Developers
 
Shifting the Network Paradigm: Network Programmability
Shifting the Network Paradigm: Network ProgrammabilityShifting the Network Paradigm: Network Programmability
Shifting the Network Paradigm: Network Programmability
 
The New Network is Programmable with Junos
The New Network is Programmable with JunosThe New Network is Programmable with Junos
The New Network is Programmable with Junos
 

Dernier

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 

Dernier (20)

DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 

Introduction to PenFlow: OpenFlow and Programmable Networking

  • 1. INTRODUCTION TO PENFLOW
  • 2. STATEMENT OF PRODUCT DIRECTION This statement of product direction sets forth Juniper Networks‟ current intention and is subject to change at any time without notice. No purchases are contingent upon Juniper Networks delivering any feature or functionality depicted in this presentation. 2 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 3. OPENFLOW – WHAT IS IT? Openflow compromises an architecture and a protocol In a traditional networking device, the control processes and forwarding functionality reside on the network device penflow Control Control penflow Controller Forwarding Forwarding Traditional Openflow-enabled In the Openflow architecture, an interface is created on the network device through which an external control process known as a „controller‟, is able the program the packet matching and forwarding operations of the networking device 3 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 4. OPENFLOW – WHAT IS IT? The Openflow protocol defines  A standardized API and communication method between the external controller and Openflow process on the networking device  The use of „Flow-tables‟ held on the networking device which are populated by the external controller which are used for matching and forwarding packets Openflow Flow-tables contain  Header Fields – fields against which a packet can be matched  Counters – statistics reporting capabilities  Actions – defining how the packet should be treated (forward, drop, modify) There is no use of static configuration or cli/xml-based programming via Openflow, nor does Openflow provide functionality to boot or maintain the networking device 4 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 5. OPENFLOW 1.0 FLOW TABLE & FIELDS Ingress Ethernet VLAN IP TCP/UDP Header Fields Port SA DA Type ID Priority SA DA Proto TOS Src Dst Classifier Action Statistics Classifier Action Statistics Flow Table Classifier Action Statistics OF1.0 style … Classifier Action Statistics Physical Port ALL CONTROLLER Actions Forward Virtual LOCAL Port TABLE IN_PORT Mandatory Action Drop Virtual NORMAL Optional Action Forward Port FLOOD Enqueue Modify Field 5 Copyright © 2011 Juniper Networks, Inc. www.juniper.net Actions
  • 6. OPENFLOW – WHAT IS IT? Two components  Openflow controller  Controls one or more switches  Computes paths, maintains state, formulates flows and programs Openflow Switches  Openflow Switch  Receives commands (flow entries, queries) from the Openflow controller in order to populate entries in the flow-table  Holds the flow-table in volatile memory Flow-table population can occur in two modes  Reactive – Flow-table programmed in response to received packet  Proactive – Flow-table is populated with pre-provisioned entries 6 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 7. MODES OF OPERATION Reactive – Data plane driven Pro-active – Configuration driven • Like Static routes & LSPs  Base principle of flow caching • Not stored in configuration file Controller FIB Controller FIB C 4 Switch FIB Switch FIB 1 2 3 1 2 3 1. Receive packet 1. Receive packet 2. Perform lookup in local FIB 2. Perform lookup in local FIB 3. Hit: forward to port 3. Hit: forward to port 4. Miss: forward to controller 4. Miss: DROP  Controller inspects packet  Performs route computation  C: Inserts new flow entry 7 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 8. OPENFLOW SWITCH / NETWORK DESIGN Switch Control Plane Applications Switch Control Plane: • Logically centralized OpenFlow Controller • Physically distributed in one or more compute devices • Embedded OF Controller to OpenFlow communicate with switches Protocol penflow switch penflow switch penflow switch penflow switch penflow switch penflow switch Source: OpenFlow.org 8 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 9. THE ISSUE: APPLICATIONS DON’T COMMUNICATE WITH THE NETWORK THE HUMAN WORLD THE NETWORK WORLD Network Aware Applications: Application Aware Networking: Applications blindly probe the network Networks spy on traffic to try to to understand what it can deliver understand applications  Game ping-stats, Doppler, Geo-  Deep Packet Inspection, Deep location, whois, proprietary Flow Inspection codecs, proprietary control  Approximate application by channels in VBRB fingerprinting  Approximate topology/location  Service specific overlay topologies thru:  Application-based Quality of  Active/game-based broadcast, Service profiles passive derivation Current approximation techniques are barely sufficient and inefficient 9 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 10. OPENFLOW HELPS BY ENABLING NETWORK PROGRAMMABILITY FOR COMMUNICATION APPLICATION NETWORK NETWORK APPLICATION Applications made better by Networks made better by information information from network from application  Understanding of end-device  Bandwidth and resource optimization capabilities  New service topologies  Real location / topology  Security identification  Adjust behavior to real-time usage  Service-specific packet treatment  Billing granularity Flexibility of service placement Control of resources from applications 10 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 11. HOW DO YOU MAKE THIS HAPPEN? THE APPLICATION WORLD THE APPLICATION WORLD Real-time topology understanding (ALTO, BGP-TE) SI ISV Service Research Enterprise Partner Partner Provider Institution Customer Steering traffic through Web Services API optimal paths (PCE) Network Orchestration Across Networks Programmability Selecting specific traffic OpenFlow BGP-TE (OpenFlow) ALTO Mgmt PCE Network APIs … Opening more touchpoints to control: Gateways, billing collectors, service appliances, CDN, DPI/IDP THE NETWORK WORLD THE NETWORK WORLD 11 Programmable Networking is SFW Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 12. AN EXAMPLE: BE “IN THE NETWORK” Weak architecture = one-legged tap dancing Continuous, real-time streaming of surrounding content, resources, places, people Where am I? I am here! And this is You’re here! around you:  Active broadcast <access>  Game broadcast <content> <capability> <resources>  Passive <BW> derivation <places> <profile> <people> … ! “Above the topology” “Visualize the topology” “Below the topology” “In the topology” Low value in navigational coordinates APPLICATION NETWORK 12 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
  • 13. WANT MORE ON OPENFLOW? Useful URLs: Open Networking Foundation https://www.opennetworking.org/ Openflow Whitepaper http://www.openflow.org//documents/openflow-wp-latest.pdf Openflow protocol https://www.opennetworking.org/standards/open-flow/50- openflow 13 Copyright © 2011 Juniper Networks, Inc. www.juniper.net

Notes de l'éditeur

  1. This is just an examples discussion. Imagine what you could do… what if…Bring in architectural changes over last few years … IGP Generic application information can be carried. Separate from routing. You don’t have to break everything. You can target specific devices in the network (ak flooding) …Key is “Network, User and Session Telemetry” for apps and being able to program the network beyond session logon and working within the constraints of IF-Map, Radius/Diameter, COPs, PCMM. Now it’s possible for multiple sources to create a service profile and update it in real time
  2. This is an easy one. Foursquare on steroids.Current, weak architecture:“ above the topology&quot;  - user-interactive layer - (Loopt, burbn, BooYay, Gowalla, micello, foursquare)&quot;on the topology&quot; - visual representation of topo - (SimpleGeo, motricity, tele atlas, navteq, geo api)&quot;below the topology&quot; - HW/SW layer - (android, IOS - Apple, Skyhook, SiRF).These categories are to describe functionality that is beyond tweeting your location, checking-in and geo marking in social media map-ups. As an analogy to the current fubared&apos;ness of the situation ... using straight mobile phone GSM coordinates for marking your location in a social media interface is merely noting the navigational coordinates that has little to do with the interaction/exchange/communication of information of a social network on the internet. It&apos;s less useful that what a dog leaves on a fire hydrant.Advert: SocialbombCommerce:Comm: BlockchalkContent: NavxAnalytics:Social:Gowalla,Loopthis means that the quality of interaction can abandon the three common modes of topologic interaction listed above and enter continuous real time updates and streaming. Really the point in the non-exhaustive list of topo-interested APIs/platforms above is that they are in fact the *orchestration* platforms that &quot;app developers&quot; that go to J1 know about.