A Brief Introduction to SDN and OpenDaylight



Similar documents
OpenDaylight and the Past, Present and Future of Open Source Networking

OpenDaylight: Introduction, Lithium and Beyond

Exploring OpenDaylight

OpenDaylight and the Rise of Open Source, Software Networking

Building an Open, Adaptive & Responsive Data Center using OpenDaylight

The State of (Open Source) SDN and Programming Language Opportunities

SDN-NFV Open Source. Landscape, Scaling, Use-Cases Sharon Barkai Cofounder, ConteXtream. Santa Clara, CA USA April 2015

Learn how Open Source Software is Redefining SDN!

SDN and NFV Open Source Initiatives. Systematic SDN and NFV Workshop Challenges, Opportunities and Potential Impact

Get Ship Done! Microservices Cloud Development Made Easy Charles Eckel and David Tootill Cisco Systems

Software Defined Networking (SDN) OpenFlow and OpenStack. Vivek Dasgupta Principal Software Maintenance Engineer Red Hat

Qualifying SDN/OpenFlow Enabled Networks

The OpenDaylight Project

Using SouthBound APIs to build an SDN Solution. Dan Mihai Dumitriu Midokura Feb 5 th, 2014

Using OpenStack With OpenDaylight. Dave Meyer, Brocade Kyle Mestery, Cisco Brent Salisbury, Red Hat Madhu Venugopal, Red Hat

Developing OpenDaylight Apps with MD-SAL. J. Medved, E. Warnicke, A. Tkacik. R. Varga Cisco Sample App: M. Rehak, Cisco February 04, 2014

App Development Tutorial

OpenDaylight Network Virtualization and its Future Direction

OVSDB/Neutron Support in Lithium and Beyond. ODL Technical Work Stream Call February 23, 2015

Introduction to Software Defined Networking

Network Virtualization and Software-defined Networking. Chris Wright and Thomas Graf Red Hat June 14, 2013

Virtualization, SDN and NFV

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

Designing Virtual Network Security Architectures Dave Shackleford

Centinel: Streaming Data Handler. September 07 th, 2015

Surviving the SDN Wars. Curt Beckmann Chair of Forwarding Abstractions WG, ONF and EMEA CTO

SOFTWARE-DEFINED NETWORKING AND OPENFLOW

YANG User Interface (YANGUI) in OpenDaylight

Trusting SDN. Brett Sovereign Trusted Systems Research National Security Agency 28 October, 2015

SDN/Virtualization and Cloud Computing

Software Defined Network (SDN)

OpenFlow & Software Defined Networking

OpenConfig: collaborating to enable programmable network management

SDN. What's Software Defined Networking? Angelo Capossele

Bringing OpenFlow s Power to Real Networks

Group-Based Policy for OpenStack

Outline. Institute of Computer and Communication Network Engineering. Institute of Computer and Communication Network Engineering

智 慧 應 用 服 務 的 資 料 中 心 與 底 層 網 路 架 構

Software Defined Networks Virtualized networks & SDN

SDN AND SECURITY: Why Take Over the Hosts When You Can Take Over the Network

An Open Approach to Enhancing Networking for OpenStack

Transform Your Business and Protect Your Cisco Nexus Investment While Adopting Cisco Application Centric Infrastructure

BROCADE NETWORKING: EXPLORING SOFTWARE-DEFINED NETWORK. Gustavo Barros Systems Engineer Brocade Brasil

SOFTWARE DEFINED NETWORKING

ViSION Status Update. Dan Savu Stefan Stancu. D. Savu - CERN openlab

How To Make A Vpc More Secure With A Cloud Network Overlay (Network) On A Vlan) On An Openstack Vlan On A Server On A Network On A 2D (Vlan) (Vpn) On Your Vlan

Asia Pacific Partner Summit 2015

SDN Software Defined Networks

Ethernet-based Software Defined Network (SDN) Cloud Computing Research Center for Mobile Applications (CCMA), ITRI 雲 端 運 算 行 動 應 用 研 究 中 心

Software Defined Networking - a new approach to network design and operation. Paul Horrocks Pre-Sales Strategist 8 th November 2012

How To Manage A Network From A Microsoft Lab

Testing Software Defined Network (SDN) For Data Center and Cloud VERYX TECHNOLOGIES

ONOS [Open Source SDN Network Operating System for Service Provider networks]

How To Orchestrate The Clouddusing Network With Andn

SDN Applications in Today s Data Center

Defining SDN. Overview of SDN Terminology & Concepts. Presented by: Shangxin Du, Cisco TAC Panelist: Pix Xu Jan 2014

Pluribus Netvisor Solution Brief

Palo Alto Networks. Security Models in the Software Defined Data Center

OVN: Open Virtual Network for Open vswitch. Russell Bryant Kyle Mestery Justin Pettit

Effective disaster recovery using Software defined networking

Making the Case for Open Source Controllers

Open Source Network: Software-Defined Networking (SDN) and OpenFlow

SDN/OpenFlow. Dean Pemberton Andy Linton

YI-CHIH HSU & JEI-WEI ESTINET TECHNOLOGIES

Software Defined Networking Security

Cloud Computing, Software Defined Networking, Network Function Virtualization

SDN, NFV & Future Technologies. Chris Thompson Director of Product Management, Cloud Connectivity Solutions

SDN CONTROLLER. Emil Gągała. PLNOG, , Kraków

OF 1.3 Testing and Challenges

Core and Pod Data Center Design

Software Defined Networking What is it, how does it work, and what is it good for?

2013 ONS Tutorial 2: SDN Market Opportunities

Towards Smart and Intelligent SDN Controller

Applications of Software-Defined Networking (SDN) in Power System Communication Infrastructure: Benefits and Challenges

OpenStack/Quantum SDNbased network virtulization with Ryu

Software-Defined Networking Architecture Framework for Multi-Tenant Enterprise Cloud Environments

Ryu SDN Framework What weʼ ve learned Where weʼ ll go

Outline. Why Neutron? What is Neutron? API Abstractions Plugin Architecture

SDN PARTNER INTEGRATION: SANDVINE

Better management of large-scale, heterogeneous networks toward a programmable management plane

Implementing OpenDaylight in a Carrier Network

How Linux kernel enables MidoNet s overlay networks for virtualized environments. LinuxTag Berlin, May 2014

Challenges and Opportunities:

Brocade SDN/OpenFlow. Norival Figueira Office of the CTO. January 9, /2015 BROCADE COMMUNICATIONS SYSTEMS, INC. ALL RIGHTS RESERVED.

Software Defined Environments

Mock RFI for Enterprise SDN Solutions

Simplify IT. With Cisco Application Centric Infrastructure. Barry Huang Nov 13, 2014

Software Defined Networks

Prospects for Software Defined Networking & Network Function Virtualization in Media and Broadcast John Ellerton

The Many Faces of SDN: An Industry Perspective

An Introduction to Software-Defined Networking (SDN) Zhang Fu

HAWAII TECH TALK SDN. Paul Deakin Field Systems Engineer

White Paper. SDN 101: An Introduction to Software Defined Networking. citrix.com

SDN and NFV in the WAN

Transcription:

A Brief Introduction to SDN and OpenDaylight Colin Dixon, Principal Engineer, Brocade colin@colindixon.com (http://colindixon.com) @colin_dixon Some content borrowed from David Meyer, Kyle Mestery, Anees Shaikh, and Luis Gomez

Agenda! What is SDN?! What is OpenDaylight?! Some things I ve learned! A Few OpenDaylight Metrics! Where OpenDaylight is Going! SDN Grand Challenges 2

Traditional Networking Per-switch Control Plane Data Plane Per-switch Control Plane Data Plane Per-switch Control Plane Data Plane Per-switch Control Plane Data Plane Per-switch Control Plane Data Plane 3

Control Plane vs Data Plane Line rate forwarding (Data) vs Slow table management (Control) Data Plane!!!! Forwards/modifies packets (ingress-egress pipeline) Match-action operations Implemented entirely in specialized switch hardware Uber fast (10Gbps) Control Plane!!!! Determines how to handle packets (fwd, mcast, ) Installs rules into HW tables Implemented by control processor (firmware) Slow as heck (1000s/sec)

Software-Defined Networking Commodity (x86) Server SDN Application SDN Application SDN Application Software-defined Per-switch Network (SDN) Controller Control Plane Per-switch Control Plane Data Plane Data Plane Per-switch Control Plane Data Plane Per-switch Control Plane Data Plane Per-switch Control Plane Data Plane 5

! Modern switches:! SDN Software Defined Networks Migrate the Control Plane to a Separate Controller! Control plane populates forwarding tables! Data plane acts based on table entries! Both run locally on the switch! Decouple control plane from the data plane! Data plane on the switch! Control plane elsewhere (typically separate controller)! Example: OpenFlow Most features go here This gets smaller, turns into controller to switch chip translator 0A->0E 0A->0C SDN Controller Control Plane CPU Switch Chip Install table entry, send packet 0C->p3 Table miss, send to controller dst 0E 5 0A 1 0C 3 port Ports, 1-6

Software Defined Networks What s the big deal? Potential Benefits:! Enables innovation! Exploit global ntwk view! Traffic engineering! Traffic steering! Security enforcement!! Simpler switches! Co-manage virtual compute, storage, and network! Software-defined environments Potential Drawbacks:! Overheads / scalability! Potential bottleneck! Potential single point of failure! Interoperability issues! OpenFlow and ONF help

App App App App App App App App App App App Specialized Applications Specialized Operating System Specialized Hardware Windows (OS) Open Interface or Linux or Open Interface Microprocessor Mac OS Vertically integrated Closed, proprietary Slow innovation Small industry McKeown, Hot Interconnects 2012 Horizontal Open interfaces Rapid innovation Huge industry

AppAppAppAppAppAppAppAppAppAppApp Specialized Features Specialized Control Plane Open Interface Control Plane or Open Daylight or Open Interface Merchant Switching Chips Specialized Hardware Horizontal Open interfaces Rapid innovation Vertically integrated Closed, proprietary Slow innovation McKeown, Hot Interconnects 2012 Control Plane

Agenda! What is SDN?! What is OpenDaylight?! Some things I ve learned! A Few OpenDaylight Metrics! Where OpenDaylight is Going! SDN Grand Challenges 10

What is OpenDaylight OpenDaylight is an Open Source Software project under the Linux Foundation with the goal of furthering the adoption and innovation of Software Defined Networking (SDN) through the creation of a common industry supported platform Code Acceptance Community To create a robust, extensible, open source code base that covers the major common components required to build an SDN solution To get broad industry acceptance amongst vendors and users Using OpenDaylight code directly or through vendor products Vendors using OpenDaylight code as part of commercial products To have a thriving and growing technical community contributing to the code base, using the code in commercial products, and adding value above, below and around. 11

What is OpenDaylight building?! An evolvable SDN platform capable of handling diverse use cases and implementation approaches! Common abstractions for people to program! Northbound Interfaces! Southbound drivers, e.g., OpenFlow, OVSDB, BGP-LS! Intermediation between north and south! Programmable Network services! Network Applications! Whatever else we need to make it work 12

Project Framework 13

Major Architectural Feature: Service Abstraction Layer (SAL) (AD-SAL) https://wiki.opendaylight.org/view/opendaylight_controller:md-sal:faq 14

Base Network Service Functions Topology Mgr Stats Mgr Switch Mgr Fwding Ruls Mgr Host Tracker ARP Handler Base Virtualization Service Provider OpenDove GUI D4A Protection VTN Coordinator Neutron Interface Virt + SP REST APIs NETCONF RESTCONF APIs LISP odmc Base Network Service Functions Affinity VTN Mgr OVSDB CONF OF Base Network Functions BGP PCEP AD-SAL MD-SAL LISP REST OpenFlow 1.0 SNMP OVSDB OpenFlow 1.0 1.3 NETCONF BGP PCEP OpenFlow Enabled Devices Open vswitches Additional Virtual & Physical Devices OF: OpenFlow D4A: Defense for All VTN: Virtual Tenant Network odmc: Open Dove Management console LISP: Locator/Identifier Separation Protocol OVSDB: Open vswitch DataBase protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Protocol SNMP: Simple Network Management Protocol

Who is OpenDaylight? (Members) http:/// pendaylight A Linux Foundation Collaborative Project PLATINUM MEMBERS PLATINUM MEMBERS GOLD MEMBERS SILVER MEMBERS GOLD MEMBERS SILVER MEMBERS 16

Who is OpenDaylight? (Really)! Like any Open Source Project, OpenDaylight primarily consists of those who show up to do the work.! Currently commits from over 180 contributors from many different organizations (and unaffiliated individuals)! Running around 150 200 commits per week! 30 Days: 1037 commits, 81 contributors! 12 Months: 8964 commits, 219 contributors! Strong integration and testing community! This stuff really matters http://www.ohloh.net/p/opendaylight 17

The Hydrogen Simultaneous Release! First release of OpenDaylight on Feburary 3 rd, 2014! Codename: Hydrogen! 15 different projects! Lots of integration and testing! Several editions to group related functionality together! base, virtualization, service provider! virtualization edition provides OpenStack integration! We all learned A LOT 18

Impressive List of Projects in H 2! Controller! VTN! OpenDove! Affinity Management Service! LISP Mapping Service! OpenFlow Protocol! OpenFlow SB Plugin! OVSDB! SNMP4SDN! DLUX! Yang Tools! Defense4All! BGP-LS/PCEP 19

Hydrogen Release Management GUI/CLI VTN Coordinator D4A Protection OpenStack Neutron Network Applications Orchestration & Services OpenDaylight APIs (REST) Base Network Service Functions Affinity Service OpenStack Service Topology Mgr Stats Mgr Switch Mgr FRM Host Tracker ARP Handler LISP Service OVSDB Neutron VTN Manager odmc Controller Platform Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, ) OpenFlow 1.0 1.3 NETCONF OVSDB SNMP BGP PCEP LISP Southbound Interfaces & Protocol Plugins OpenFlow Enabled Devices Open vswitches Additional Virtual & Physical Devices Data Plane Elements (Virtual Switches, Physical Device Interfaces) VTN: Virtual Tenant Network odmc: open Dove Management Console D4A: Defense4All protection LISP: Locator/Identifier Separation Protocol OVSDB: Open vswitch Data Base Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol

Base Edition Management GUI/CLI Network Applications Orchestration & Services OpenDaylight APIs (REST) Base Network Service Functions Topology Mgr Stats Mgr Switch Mgr FRM Host Tracker ARP Handler Controller Platform Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, ) OpenFlow 1.0 1.3 NETCONF OVSDB Southbound Interfaces & Protocol Plugins OpenFlow Enabled Devices Open vswitches Additional Virtual & Physical Devices Data Plane Elements (Virtual Switches, Physical Device Interfaces) VTN: Virtual Tenant Network odmc: open Dove Management Console D4A: Defense4All protection LISP: Locator/Identifier Separation Protocol OVSDB: Open vswitch Data Base Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol

Virtualization Edition Management GUI/CLI VTN Coordinator D4A Protection OpenStack Neutron Network Applications Orchestration & Services OpenDaylight APIs (REST) Topology Mgr Base Network Service Functions Stats Mgr Switch Mgr FRM Host Tracker ARP Handler Affinity Service OVSDB Neutron OpenStack Service VTN Manager odmc Controller Platform Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, ) OpenFlow 1.0 1.3 NETCONF OVSDB Southbound Interfaces & Protocol Plugins OpenFlow Enabled Devices Open vswitches Additional Virtual & Physical Devices Data Plane Elements (Virtual Switches, Physical Device Interfaces) VTN: Virtual Tenant Network odmc: open Dove Management Console D4A: Defense4All protection LISP: Locator/Identifier Separation Protocol OVSDB: Open vswitch Data Base Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol

Service Provider Edition Management GUI/CLI D4A Protection Network Applications Orchestration & Services OpenDaylight APIs (REST) Topology Mgr Base Network Service Functions Stats Mgr Switch Mgr FRM Host Tracker ARP Handler Affinity Service LISP Service Controller Platform Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, ) OpenFlow 1.0 1.3 NETCONF OVSDB SNMP BGP PCEP LISP Southbound Interfaces & Protocol Plugins OpenFlow Enabled Devices Open vswitches Additional Virtual & Physical Devices Data Plane Elements (Virtual Switches, Physical Device Interfaces) VTN: Virtual Tenant Network odmc: open Dove Management Console D4A: Defense4All protection LISP: Locator/Identifier Separation Protocol OVSDB: Open vswitch Data Base Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol

OpenStack Integration OpenStack Neutron Neutron ML2 MechanismDriver OpenDaylight APIs (REST)! OpenDaylight exposes a single common OpenStack Service Northbound! API exposed matches Neutron API precisely! multiple implementations of Neutron networks in OpenDaylight Neutron Service VTN Provider DOVE Provider OpenDaylight OVSDB Provider! OpenDaylight OpenStack Neutron Plugin simply passes through! simplifies OpenStack plugin! pushes complexity to OpenDaylight 24

OpenStack Integration: Status ML2 Driver available in Icehouse release! Supports VXLAN and GRE tunnel networks devstack support merged upstream Run OpenDaylight as a top-level service in devstack! OpenStack Neutron API Service available now in OpenDaylight o provides Neutron API handling for multiple implementations Initial ML2 plugin focused on core Neutron functionality o Still uses Neutron [DHCP, L3] agents 25

OpenStack Integration: Next Steps Updates planned for Helium and Juno: VIF plugging changes for stability improvements Notify from ODL to MechanismDriver once ODL has setup the port on the host Security groups implemented using OpenFlow rules L3 routing handled by OpenDaylight Removes the need for the L3 agent Additional refinements and bug fixes 26

Agenda! What is SDN?! What is OpenDaylight?! Some things I ve learned! A Few OpenDaylight Metrics! Where OpenDaylight is Going! SDN Grand Challenges 27

Key Learnings Community building is a core objective In fact, innovation through collaboration is one of the most powerful features of open source development Code is the coin of the realm Engineering systems are as important as artifacts Putting this all Together! http://www.sdncentral.com/education/david-meyer-reflections-opendaylight-open-source-project-brocade/2014/03/ 28

Trend: Engineering artifacts are no longer the source of sustainable advantage and/or innovation Perhaps surprisingly, the hyper- scale and open source communi4es have taught me that actual ar4facts (in our case network applica4ons as well as HW/SW) are ephemeral en44es and that the only source of sustainable advantage/innova4on consists of Engineering Systems Culture People/Process h"p://en.wikipedia.org/wiki/aeroelas4city - Flu"er 29

Factories vs. Babies! Most vendors develop product like an overly anxious parents making a baby. There is a lot preparation and planning and once the baby is born the product requires ongoing attention to reach maximum potential.! By comparison, has organized itself as a product factory. Each product is the result of a unified production line and the next product or feature is just a year or two away. Each product builds on the previous product.! Even faster in open source software.! Networking hasn t seen this yet. http://etherealmind.com/difference-arista-competitors-factories-babies/ 30

One Way To Think About OSD 31

Transparency! Transparency matters! When there are disagreements in the community! Transparency makes everyone feel heard! Transparency makes sure the community does not fracture! OpenDaylight is transparent to the extreme! All calls, mailing lists, wikis, etc. are open to the public! Even the technical steering committee calls 32

Agenda! What is SDN?! What is OpenDaylight?! Some things I ve learned! A Few OpenDaylight Metrics! Where OpenDaylight is Going! SDN Grand Challenges 33

OpenDaylight project creation Slides courtesy of Anees Shaikh: https://www.youtube.com/watch?v=fkc6wgcejhe http://events.linuxfoundation.org/sites/events/files/slides/ OpenDaylight-Year1%20v4-ext.pdf 7 new project proposals pending 34

OpenDaylight code volume (ohloh.net) 35

Project comparisons (ohloh.net) LOC contributors OpenStack 1.67M 1,974 CloudStack 1.5M 250 Eclipse platform 2.67M 404 OpenDaylight 1.05M 154 Floodlight 97K 52 contrailvrouter contrail controller 19K 258K 15 53 36

Membership who wants to play 37

Agenda! What is SDN?! What is OpenDaylight?! Some things I ve learned! A Few OpenDaylight Metrics! Where OpenDaylight is Going! SDN Grand Challenges 38

! Controller! Virtual Tenant Network (VTN)! Open DOVE! OpenFlow Plugin! Affinity Metadata Service! YANG Tools! LISP Flow Mapping! OVSDB! OpenFlow Protocol Library! BGP-LS/PCEP! Defense4All! SNMP4SDN Current Projects 14 more project proposals in some state of preparation! Integration Group! Dlux! Group-based Policy! OpenDaylight Toolkit! PacketCable PCMM! OpFlex Implementation! Documentation! Dynamic Resource Reservation! Table Type Patterns (TTPs)! SDNi! OpenContrail (Red are new since Hydrogen) https://wiki.opendaylight.org/view/project_proposals:main 39

Other Future Technical Work! Core Infrastructure! Factoring apart the controller, e.g., MD-SAL, etc.! Data Persistence, DOM manipulation, etc.! Distributed Systems (Infinispan, Akka, )! Performance, Scalability, Stability! Code Quality, Test Coverage,! Python OpenDaylight Client! We need more code that writes code! MD-SAL is an example! Fewer humans in the loop! More automation is more better 40

Non Technical Work! Continue to build/refine our community! Increasing committer diversity across projects! Weekly status meetings! More transparency is more better! Staffing! Release engineering! Documentation! Continue to refine our engineering systems! Thanks Andrew!! Fewer humans in the loop! SDN Simulation Platform 41

Agenda! What is SDN?! What is OpenDaylight?! Some things I ve learned! A Few OpenDaylight Metrics! Where OpenDaylight is Going! SDN Grand Challenges 42

Centralized vs. Distributed (Consistency, Clustering and Federation)! SDN promises a (logically) centralized control plane! In practice, we have a distributed cluster of controllers, rather than just one so that! we can tolerate faults! we can scale out our performance! in network partitions there are controllers on both sides! Providing consistency, federation, scale-out, dealing with CAP trade-offs, etc. is HARD http://events.linuxfoundation.org/sites/events/files/ slides/sdn-consistency-ods2014.pdf https://www.youtube.com/watch?v=xq-lnb3x30g 43

How to get there from here! How do we deploy SDN when it s not green field! Because pretty much nothing is actually green field! Hybrid switches, hybrid networks, legacy protocols for interop, etc.! Trust and stability! Current networks build on 40 years of code/experience! How can SDN compete with that?! Borrow good code/ideas from legacy code! Provide better visibility, debugging, etc.! Model checking, verification, etc. 44

Hardware Diversity! OpenFlow 1.0 provided a lowest common denominator API! Real hardware is much more diverse! and has many more capabilities! Exposing this diversity without burdening developers with per-device programming is hard! Some Attempts! Programming Protocol-Independent Packet Processors! TTPs from the ONF s FAWG https://www.youtube.com/watch?v=bcabs6w_k_o http://events.linuxfoundation.org/sites/events/files/slides/ TTPs%20and%20NBIs%20for%20ods2014-final_0.pdf http://arxiv.org/pdf/1312.1719v1.pdf 45

Application Composition! How can we let multiple SDN apps share the network?! PC OSes partition and allocate resources! You can t easily partition the network! It s value comes from the fact that it spans everything! You can in some cases, e.g., by address space (FlowVisor)! Some ideas! Most apps should be middleboxes, i.e., NFV! Simply chain them together in the right order! There s more to it than this, but linear chaining is powerful! Other apps are concerned only with the physical path! There is hope that conflicts here can be sanely managed 46

Conclusions! OpenDaylight is a rapidly growing open source community! Already shipping a large suite of tools to build SDN solutions! By most metrics, on-par with other successful open source! Community, process and culture matters more than code! Focus on being able to adapt, fix, and ship the next thing! SDN Grand Challenges! Centralized vs. Distributed! How to get there from here! Hardware Diversity! Application Composition 47