Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Introduction to the Helium release of OpenDaylight

11,919 views

Published on

"Helium" is the second release of OpenDaylight made on Oct 2, 2014. This release has more expanded support for Yang, modeling and autogeneration of REST API, improved performance of MD-SAL datastore using Tree-based Akka storage, better integration with OpenStack Neutron API, support for Group-based Policy and support for Service Function Chaining.

Published in: Technology

Introduction to the Helium release of OpenDaylight

  1. 1. Introduction to OpenDaylight and its Helium release Srini Seetharaman srini.seetharaman@gmail.com Oct 2014
  2. 2. Problem in Today’s Ossified Network 2 Routing, management, mobility management, access control, VPNs, … Million of lines of source code 6000+ RFCs Barrier to entry Feature Feature Operating System Specialized Packet Billions of gates Bloated Power Hungry Forwarding Hardware Many complex functions baked into the infrastructure OSPF, BGP, multicast, differentiated services, Traffic Engineering, NAT, firewalls, MPLS, redundant layers, …
  3. 3. Solution: “Software-defined Network” 3 Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Simple Packet Simple Packet Forwarding Hardware Simple Packet Forwarding Hardware Forwarding Hardware Network Operating System OpenFlow or other API North-bound interface API Unchanged mgmt API LB service FW service IP routing service Legacy Router This is the purist view with clear separation of data and control
  4. 4. Expanded View of SDN in OpenDaylight Hybrid approaches supported 1. FIB programmable through OpenFlow, irrespective of whether there is an onboard control plane 2. Programmable exclusively through embedded control plane: e.g., Yang modeled NetConf, OpFlex 3. Programming both embedded control plane and FIB: e.g., Open vSwitch Mgmt plane Orchestration Extnl. Control plane Intl. Control plane Data plane Hybrid control plane where the hardware contains a more open platform for adding logic
  5. 5. SDN Killer App #1: Network Virtualization SDN-based Virtualized Network Platform Dynamic, Programmable, Automated 5 Computing Infrastructure
  6. 6. SDN Killer App #2: Service Function Chaining 6 Internet Internet NFV
  7. 7. Business Potential of SDN Business potential How? Reduced time to revenue Speed up of service provisioning New revenue Through new business models centered around 7 on-demand usage Improved policy compliance Ensure that cloud workload is compliant with enterprise policies (e.g., access control) OpEx saving Automated operations and easier management of resources Reduced OpEx during upgrades Introduce new functions and service by replacing just software stack
  8. 8. 8
  9. 9. OpenDaylight Consortium ► Heavy industry involvement and backing ► Focused on having an open framework for building upon SDN/NFV innovations  Not limited to OpenFlow innovations, but in fact decoupled from it allowing the two to evolve independently 9
  10. 10. Hydrogen Release 10 Base Network Service Functions Management GUI/CLI Controller Platform Southbound Interfaces & Protocol Plugins DDoS Protection OpenDaylight APIs (REST) OpenStack Service DOVE Mgr Data Plane Elements (Virtual Switches, Physical Device Interfaces) Network Config Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, …) OpenFlow 1.0 1.3 LISP Topology Mgr Stats Mgr Switch Mgr Host Tracker Shortest Path Forwarding VTN Coordinator Affinity Service Network Applications Orchestration & Services OpenStack Neutron VTN Manager VTN: Virtual Tenant Network DOVE: Distributed Overlay Virtual Ethernet DDoS: Distributed Denial Of Service LISP: Locator/Identifier Separation Protocol OVSDB: Open vSwitch DataBase Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol LISP Service NETCONF SNMP BGP-LS OVSDB PCEP OpenFlow Enabled Devices Main difference from other OpenFlow-centric controller platforms Devices with Proprietary control plane OVSDB enabled devices
  11. 11. Helium Release 11 Dlux UI Base Network Service Functions Controller Platform Southbound Interfaces & Protocol Plugins OpenDaylight APIs (REST) Data Plane Elements (Virtual Switches, Physical Device Interfaces) OpenStack Service Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, …) OpenFlow 1.0 1.3 LISP Topology Mgr Stats Mgr Switch Mgr Host Tracker Flow Rules Mgr VTN Coordinator AAA Network Applications Orchestration & Services OpenStack Neutron OVSDB PCEP OpenFlow Enabled Devices VTN: Virtual Tenant Network DDoS: Distributed Denial Of Service LISP: Locator/Identifier Separation Protocol OVSDB: Open vSwitch DataBase Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol PCMM: Packet Cable MultiMedia SNMP: Simple Network Management Protocol LISP Service NETCONF BGP-LS Devices with Proprietary control plane SNMP DDoS Protection OVSDB enabled devices Main difference from other OpenFlow-centric controller platforms SDNi Wrapper GBP Service SFC TTP SNBI PCMM/ COPS OPEN CONTRAIL GBP renderer OVSDB Neutron VTN Mgr Open Contrail L2 switch SNBI service DOCSIS SDNI aggreg AAA – AuthN filter
  12. 12. Java, Interface, Maven, OSGi, Karaf ► Java chosen as an enterprise-grade, cross-platform compatible language ► Java Interfaces are used for event listening, specifications and forming patterns ► Maven – build system for Java ► OSGi:  Allows dynamically loading bundles  Allows registering dependencies and services exported  For exchanging information across bundles Feature Feature A B … SAL Karaf OSGi Framework ► Karaf: Light-weight Runtime for loading modules/bundles  OSGi based. Primary distribution mechanism for Helium 12 (Equinox)
  13. 13. Active projects based on phone calls  OpenFlowPlugin MD-SAL LISP Flow Mapping OVSDB Documentation SNBI Integration, SFC ► OVSDB – Southbound plugin and OpenStack Neutron integration ► SNBI – Secure Network Bootstrapping Infrastructure ► GBP – Group Based Policy ► SFC – Service Function Chaining (NSH) ► Dlux – OpenDaylight UI Security analysis AAA, Dlux GBP OpFlex PacketCable Full project list here: https://wiki.opendaylight.org/view/Main_Page#Projects
  14. 14. Helium: Full List of Projects opflex OpFlex protocol ovsdb OVSDB protocol and OpenStack integration packetcable PacketCable PCMM/COPS plugin2oc Southbound plugin to the OpenContrail platform reservation Dynamic Resource Reservation project sdninterfaceapp SDNi Cross-controller interface sfc Service Function Chaining snbi Secure Network Bootstrap Infrastructure snmp4sdn SNMP4SDN Plugin tcpmd5 TCP-MD5 Support library toolkit Quickstart Toolkit ttp TTP Project vtn VTN (Virtual Tenant Network) yangtools YANG Tools Project keyword Description aaa AAA Project bgpcep BGP/PCEP protocol library controller OpenDaylight Controller defense4all Radware Defense4All discovery Discovery Service dlux OpenDaylight UI docs Documentation Project groupbasedpolicy Group Based Policy Plugin integration Integration Framework l2switch Separate Layer 2 switching lispflowmapping LISP Mapping Service openflowjava OpenFlow Protocol Library openflowplugin OpenFlow Plugin
  15. 15. Helium: Feature Dependency Chart
  16. 16. Helium: Running Karaf distribution $ wget http://nexus.opendaylight.org/content/groups/public/org/op endaylight/integration/distribution-karaf/0.2.0- Helium/distribution-karaf-0.2.0-Helium.zip $ unzip distribution-karaf-0.2.0-Helium.zip $ cd distribution-karaf-0.2.0-Helium $ ./bin/karaf opendaylight-user@root> feature:list (get all apps available) opendaylight-user@root> feature:install odl-dlux-core opendaylight-user@root> feature:install odl-openflowplugin-all opendaylight-user@root> feature:install odl-l2switch-all opendaylight-user@root> bundle:list | grep Active Now your controller is ready to connect to switches and handle incoming flows.
  17. 17. Helium: REST APIs ► Using REST APIs are much easier with Helium ► Restconf allows for checking config and operational state  feature:install odl-restconf  http://localhost:8181/restconf/.... ► List of exposed Northbound APIs are autogenerated using swagger.  feature:install odl-mdsal-apidocs  http://localhost:8181/apidoc/explorer
  18. 18. OpenDaylight Hands-on Exploration ► Tutorial at: http://sdnhub.org/tutorials/opendaylight ► Dependency chart: 18 Legend: Blue = Feature, Green = Bundle
  19. 19. Sample project: OVSDB 1) OVSDB southbound-plugin 2) OpenStack integration for net-virt
  20. 20. Orchestration North-bound API Application Controller South-bound API Dataplane elements OpenStack Network Mgmt 20 Typical workflow 1. Create a network 2. Associate a subnet with the network 3. Boot a VM and attach it to the network 4. Delete the VM 5. Delete any ports 6. Delete the network ML2 Plugin ODL Mech driver Network Virtualization App SDN Controller OpenFlow OVSDB pSwitch pSwitch vSwitch vSwitch Neutron API

×