OpenDaylight: An Open Source SDN
for Your OpenStack Cloud
Phil Robb – Feb 18, 2014
Originally presented by:
Stephan Baucke, Ericsson
Kyle Mestery, Cisco
Anees Shaikh, IBM
Chris Wright, Red Hat
Nov 6, 2013

www.opendaylight.org
Where is this talk going?
• 

OpenDaylight overview
•  What is OpenDaylight?
• 

Who is OpenDaylight?

• 

Projects in Hydrogen

• 

Hydrogen Virtualization Edition

• 

OpenDaylight with OpenStack

• 

Plenty of time for open Q/A

www.opendaylight.org

*
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

To create a robust,
To get broad industry
extensible, open source acceptance amongst
code base that covers
vendors and users
• using OpenDaylight code
the major common
directly or through vendor
components required to
products
build an SDN solution
•Vendors using OpenDaylight
code as part of commercial
products

Community
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.
www.opendaylight.org
What is OpenDaylight building?
OpenDaylight is an open community that is building:
•  An evolvable SDN platform capable of handling diverse
use cases and implementation approaches
• 

Common abstractions of capabilities NorthBound for
people to program

• 

Intermediation of those capabilities to multiple
Southbound implementations

• 

Programmable network services

• 

Network applications

• 

Whatever else we need to make it work
www.opendaylight.org

*
Project Framework

www.opendaylight.org

*
Broad Industry Support for
OpenDaylight

www.opendaylight.org

6
Who is OpenDaylight?
(community)
• 

Like any Open Source Project, OpenDaylight primarily
consists of those who show up to do the work
•  Currently commits from over 150 contributors from many different
organizations (and unaffiliated individuals) and growing
• 

Running around 100 commits per week and accelerating

•  Strong integration and testing community

www.opendaylight.org

*
OpenDaylight Simultaneous Release
▪ 

OpenDaylight is multi-project
▪  15 projects currently in “bootstrap” or “incubation”
▪ 

Bringing components together in a simultaneous release
▪  Code name: Hydrogen
▪  Delivered: February 3rd, 2014

▪  Several “editions” to group related functionality together
▪  base, virtualization, service provider
▪  virtualization edition will provide OpenStack integration
www.opendaylight.org

*
Projects in the Simultaneous Release
▪ 

Controller

▪ 

OpenFlow Protocol

▪ 

VTN

▪ 

OpenFlow SB Plugin

▪ 

OpenDove

▪ 

OVSDB

▪ 

Affinity Management Service

▪ 

SNMP4SDN

▪ 

LISP Mapping Service

▪ 

Yang Tools

▪ 

Defense4All

▪ 

BGP-LS/PCEP

www.opendaylight.org

*
 Hydrogen	
  Release	
  
VTN
Coordinator

Management
GUI/CLI

OpenStack
Neutron

DDoS
Protection

Network Applications
Orchestration & Services

OpenDaylight APIs (REST)

Topology
Mgr

Base
Stats
Mgr

Shortest
Network Service Functions
Switch
Host
Path
Mgr
Tracker

Forwarding

Affinity
Service
Network
Config

LISP
Service

OpenStack Service
VTN
Manager

Controller Platform
DOVE Mgr

Service Abstraction Layer (SAL)
(plug-in mgr., capability abstractions, flow programming, inventory, …)
OpenFlow
1.0

1.3

OpenFlow Enabled
Devices

NETCONF

OVSDB

Open vSwitches

SNMP

BGP-LS

PCEP

LISP

Additional Virtual &
Physical Devices

Southbound Interfaces
& Protocol Plugins

Data Plane Elements
(Virtual Switches,
Physical Device
Interfaces)

VTN: Virtual Tenant Network
DOVE: Distributed Overlay Virtual Ethernet
DDoS: Distributed Denial Of Service
LISP: Locator/Identifier Separation Protocol
www.opendaylight.org
OVSDB: Open vSwitch DataBase Protocol
BGP: Border Gateway Protocol
PCEP: Path Computation Element Communication Protocol
SNMP: Simple Network Management Protocol
Network Application Life Cycle (Today)
Application
change

Application

Application

GUI/API change

Controller change

Application

API

Controller
…

…

Network
Representation

API

API change

Feature change

API

…

Network Element

API

Network

…

Network Element

www.opendaylight.org
Network Application Life Cycle
(End-to-End Model-Driven Archictecture)
Application
change

Application

Application

Application

Auto-update API
API

Autogenerate code

Controller
…

…

Network
Representation

API
Load NE Model
API

Feature change

…

Network Element

API

Network

…

Network Element

www.opendaylight.org
Model-Driven SAL
Applications
Northbound APIs (Generated & Handcrafted)

Network Service
Plugin

Platform Service
Plugin

Transformer/
Adapter

Internal Plugin

Java & REST SAL APIs (Generated)

Abstraction
Layer

Network
NE
System

Topology

NE

…

Flows
Table

Stats

…

NE

…
Table

Stats

…

Config

Table

…

…
Flow Flow

Nodes Links

Table

Table

Config

Tunnels

Flow Flow

Flow

Flow

Paths

Java SAL APIs (Generated)

Netconf

OF-Config/OVSDB

OF x.y

Network Elements

PCEP

…

BGP-LS

www.opendaylight.org
Model-Driven SAL:
The Software Engineer’s View
Network

Applications

Netconf

NB APIs (Generated & Handcrafted)
Network
Service

REST
CONF

Platform
Service

Internal
Plugin

SB Protocol

…

OfConfig
OVSDB

OF x.y

FCAPS

Java SAL APIs (Generated)
Consumer

SAL

Producer

Controller (Container Instance)

www.opendaylight.org
Moving to Model-Driven SAL:
Add Clustering
Network

Applications

Netconf

NB APIs (Generated & Handcrafted)
Network
Service

Platform
Service

Internal
Plugin

REST
CONF

SB Protocol

…

OfConfig
OVSDB

OF x.y

FCAPS

Java SAL APIs (Generated)

SAL

Consumer

Producer

Controller (Container Instance)
Message Bus

Data Store kv-store, SQL, ...

AMQP, 0MQ...

Container instance

…

Container Instance

www.opendaylight.org
Base Edition
Network Applications
Orchestration & Services

Management
GUI/CLI

OpenDaylight APIs (REST)

Base Network Service Functions
Topology
Mgr

Switch
Mgr

Stats
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

OpenFlow Enabled Devices

Southbound Interfaces
& Protocol Plugins

OVSDB

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 www.opendaylight.org
vSwitch Data Base Protocol
BGP: Border Gateway Protocol
PCEP: Path Computation Element Communication Protocol
SNMP: Simple Network Management Protocol
Service	
  Provider	
  Edi4on	
  
DDoS
Protection

Management
GUI/CLI

Network Applications
Orchestration & Services

OpenDaylight APIs (REST)

Topology
Mgr

Base
Stats
Mgr

Shortest
Network Service Functions
Switch
Host
Mgr

Tracker

Path

Forwarding

Affinity
Service

LISP
Service

Network
Config

Controller Platform

Service Abstraction Layer (SAL)
(plug-in mgr., capability abstractions, flow programming, inventory, …)
OpenFlow
1.0

1.3

SNMP

NETCONF

OpenFlow Enabled
Devices

Open vSwitches

BGP-LS

PCEP

LISP

Additional Virtual &
Physical Devices

Southbound Interfaces
& Protocol Plugins

Data Plane Elements
(Virtual Switches,
Physical Device
Interfaces)

VTN: Virtual Tenant Network
DOVE: Distributed Overlay Virtual Ethernet
DDoS: Distributed Denial Of Service
LISP: Locator/Identifier Separation Protocol
www.opendaylight.org
OVSDB: Open vSwitch DataBase Protocol
BGP: Border Gateway Protocol
PCEP: Path Computation Element Communication Protocol
SNMP: Simple Network Management Protocol
 Virtualiza4on	
  Edi4on	
  
VTN
Coordinator

Management
GUI/CLI

OpenStack
Neutron

DDoS
Protection

Network Applications
Orchestration & Services

OpenDaylight APIs (REST)

Topology
Mgr

Base
Stats
Mgr

Shortest
Network Service Functions
Switch
Host
Path
Mgr
Tracker

Forwarding

Affinity
Service
Network
Config

OpenStack Service
VTN
Manager

Controller Platform
DOVE Mgr

Service Abstraction Layer (SAL)
(plug-in mgr., capability abstractions, flow programming, inventory, …)
OpenFlow
1.0

1.3

OpenFlow Enabled
Devices

NETCONF

Southbound Interfaces
& Protocol Plugins

OVSDB

Open vSwitches

Additional Virtual &
Physical Devices

Data Plane Elements
(Virtual Switches,
Physical Device
Interfaces)

VTN: Virtual Tenant Network
DOVE: Distributed Overlay Virtual Ethernet
DDoS: Distributed Denial Of Service
LISP: Locator/Identifier Separation Protocol
www.opendaylight.org
OVSDB: Open vSwitch DataBase Protocol
BGP: Border Gateway Protocol
PCEP: Path Computation Element Communication Protocol
SNMP: Simple Network Management Protocol
 OpenStack	
  Integra4on	
  
OpenStack Neutron

• 

Neutron plugin

OpenDaylight exposes a single
common OpenStack Service
Northbound
•  API exposed matches Neutron API
precisely
•  multiple implementations of
Neutron networks in OpenDaylight

OpenDaylight APIs (REST)
Neutron Service

VTN
Provider

OpenDaylight

DOVE
Provider

OVS
Provider

• 

OpenDaylight OpenStack
Neutron Plugin simply passes
through

•  simplifies OpenStack plugin
•  pushes complexity to OpenDaylight

www.opendaylight.org
OpenStack Integration: Status and Next Steps
•  OpenStack Neutron API Service available now in
OpenDaylight
•  provides Neutron API handling for multiple
implementations

•  Initial ML2 plugin focused on core Neutron functionality
• 

L4-L7 service support as a next step

•  Plugin planned to be upstreamed into OpenStack Neutron
during the Icehouse release
Try OpenDaylight now with Devstack

www.opendaylight.org
Affinity Management Service
§ 

Examples:

§ 

Contributed by Plexxi

§ 

Service for storing Affinity
Information

§ 

Hop Count Sensitive

§ 

Isolate

Affinity Information allows
association of metadata
about workload

§ 

Encrypt

§ 

Class of Service

§ 

§ 

Affinity Release Plan

www.opendaylight.org

21
Affinity Management Service

www.opendaylight.org

22
Call to Action
▪ 

OpenDaylight is open to everyone

▪ 

Join the mailing lists

▪ 

Join the IRC channel

▪ 

Bring patches

▪ 

Bring project proposals

▪ 

Kick the tires

www.opendaylight.org

*
Resources
▪ 

▪ 

More information and to get involved:
▪  http://www.opendaylight.org/software/downloads
▪  http://www.youtube.com/user/opendaylightproject
▪  wiki.opendaylight.org
▪  weekly open conference calls
Keep informed and join the conversation
▪ 
▪ 
▪ 
▪ 

IRC: #opendaylight on Freenode
Open mailing lists: lists.opendaylight.org
@openDaylightSDN
#OpenDaylight
www.opendaylight.org

*
More on Downloads

www.opendaylight.org
Thank You

www.opendaylight.org

Open daylight openstack_meetup_20140218

  • 1.
    OpenDaylight: An OpenSource SDN for Your OpenStack Cloud Phil Robb – Feb 18, 2014 Originally presented by: Stephan Baucke, Ericsson Kyle Mestery, Cisco Anees Shaikh, IBM Chris Wright, Red Hat Nov 6, 2013 www.opendaylight.org
  • 2.
    Where is thistalk going? •  OpenDaylight overview •  What is OpenDaylight? •  Who is OpenDaylight? •  Projects in Hydrogen •  Hydrogen Virtualization Edition •  OpenDaylight with OpenStack •  Plenty of time for open Q/A www.opendaylight.org *
  • 3.
    What is OpenDaylight OpenDaylightis 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 To create a robust, To get broad industry extensible, open source acceptance amongst code base that covers vendors and users • using OpenDaylight code the major common directly or through vendor components required to products build an SDN solution •Vendors using OpenDaylight code as part of commercial products Community 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. www.opendaylight.org
  • 4.
    What is OpenDaylightbuilding? OpenDaylight is an open community that is building: •  An evolvable SDN platform capable of handling diverse use cases and implementation approaches •  Common abstractions of capabilities NorthBound for people to program •  Intermediation of those capabilities to multiple Southbound implementations •  Programmable network services •  Network applications •  Whatever else we need to make it work www.opendaylight.org *
  • 5.
  • 6.
    Broad Industry Supportfor OpenDaylight www.opendaylight.org 6
  • 7.
    Who is OpenDaylight? (community) •  Likeany Open Source Project, OpenDaylight primarily consists of those who show up to do the work •  Currently commits from over 150 contributors from many different organizations (and unaffiliated individuals) and growing •  Running around 100 commits per week and accelerating •  Strong integration and testing community www.opendaylight.org *
  • 8.
    OpenDaylight Simultaneous Release ▪  OpenDaylightis multi-project ▪  15 projects currently in “bootstrap” or “incubation” ▪  Bringing components together in a simultaneous release ▪  Code name: Hydrogen ▪  Delivered: February 3rd, 2014 ▪  Several “editions” to group related functionality together ▪  base, virtualization, service provider ▪  virtualization edition will provide OpenStack integration www.opendaylight.org *
  • 9.
    Projects in theSimultaneous Release ▪  Controller ▪  OpenFlow Protocol ▪  VTN ▪  OpenFlow SB Plugin ▪  OpenDove ▪  OVSDB ▪  Affinity Management Service ▪  SNMP4SDN ▪  LISP Mapping Service ▪  Yang Tools ▪  Defense4All ▪  BGP-LS/PCEP www.opendaylight.org *
  • 10.
     Hydrogen  Release   VTN Coordinator Management GUI/CLI OpenStack Neutron DDoS Protection NetworkApplications Orchestration & Services OpenDaylight APIs (REST) Topology Mgr Base Stats Mgr Shortest Network Service Functions Switch Host Path Mgr Tracker Forwarding Affinity Service Network Config LISP Service OpenStack Service VTN Manager Controller Platform DOVE Mgr Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, …) OpenFlow 1.0 1.3 OpenFlow Enabled Devices NETCONF OVSDB Open vSwitches SNMP BGP-LS PCEP LISP Additional Virtual & Physical Devices Southbound Interfaces & Protocol Plugins Data Plane Elements (Virtual Switches, Physical Device Interfaces) VTN: Virtual Tenant Network DOVE: Distributed Overlay Virtual Ethernet DDoS: Distributed Denial Of Service LISP: Locator/Identifier Separation Protocol www.opendaylight.org OVSDB: Open vSwitch DataBase Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol
  • 11.
    Network Application LifeCycle (Today) Application change Application Application GUI/API change Controller change Application API Controller … … Network Representation API API change Feature change API … Network Element API Network … Network Element www.opendaylight.org
  • 12.
    Network Application LifeCycle (End-to-End Model-Driven Archictecture) Application change Application Application Application Auto-update API API Autogenerate code Controller … … Network Representation API Load NE Model API Feature change … Network Element API Network … Network Element www.opendaylight.org
  • 13.
    Model-Driven SAL Applications Northbound APIs(Generated & Handcrafted) Network Service Plugin Platform Service Plugin Transformer/ Adapter Internal Plugin Java & REST SAL APIs (Generated) Abstraction Layer Network NE System Topology NE … Flows Table Stats … NE … Table Stats … Config Table … … Flow Flow Nodes Links Table Table Config Tunnels Flow Flow Flow Flow Paths Java SAL APIs (Generated) Netconf OF-Config/OVSDB OF x.y Network Elements PCEP … BGP-LS www.opendaylight.org
  • 14.
    Model-Driven SAL: The SoftwareEngineer’s View Network Applications Netconf NB APIs (Generated & Handcrafted) Network Service REST CONF Platform Service Internal Plugin SB Protocol … OfConfig OVSDB OF x.y FCAPS Java SAL APIs (Generated) Consumer SAL Producer Controller (Container Instance) www.opendaylight.org
  • 15.
    Moving to Model-DrivenSAL: Add Clustering Network Applications Netconf NB APIs (Generated & Handcrafted) Network Service Platform Service Internal Plugin REST CONF SB Protocol … OfConfig OVSDB OF x.y FCAPS Java SAL APIs (Generated) SAL Consumer Producer Controller (Container Instance) Message Bus Data Store kv-store, SQL, ... AMQP, 0MQ... Container instance … Container Instance www.opendaylight.org
  • 16.
    Base Edition Network Applications Orchestration& Services Management GUI/CLI OpenDaylight APIs (REST) Base Network Service Functions Topology Mgr Switch Mgr Stats 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 OpenFlow Enabled Devices Southbound Interfaces & Protocol Plugins OVSDB 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 www.opendaylight.org vSwitch Data Base Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol
  • 17.
    Service  Provider  Edi4on   DDoS Protection Management GUI/CLI Network Applications Orchestration & Services OpenDaylight APIs (REST) Topology Mgr Base Stats Mgr Shortest Network Service Functions Switch Host Mgr Tracker Path Forwarding Affinity Service LISP Service Network Config Controller Platform Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, …) OpenFlow 1.0 1.3 SNMP NETCONF OpenFlow Enabled Devices Open vSwitches BGP-LS PCEP LISP Additional Virtual & Physical Devices Southbound Interfaces & Protocol Plugins Data Plane Elements (Virtual Switches, Physical Device Interfaces) VTN: Virtual Tenant Network DOVE: Distributed Overlay Virtual Ethernet DDoS: Distributed Denial Of Service LISP: Locator/Identifier Separation Protocol www.opendaylight.org OVSDB: Open vSwitch DataBase Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol
  • 18.
     Virtualiza4on  Edi4on   VTN Coordinator Management GUI/CLI OpenStack Neutron DDoS Protection NetworkApplications Orchestration & Services OpenDaylight APIs (REST) Topology Mgr Base Stats Mgr Shortest Network Service Functions Switch Host Path Mgr Tracker Forwarding Affinity Service Network Config OpenStack Service VTN Manager Controller Platform DOVE Mgr Service Abstraction Layer (SAL) (plug-in mgr., capability abstractions, flow programming, inventory, …) OpenFlow 1.0 1.3 OpenFlow Enabled Devices NETCONF Southbound Interfaces & Protocol Plugins OVSDB Open vSwitches Additional Virtual & Physical Devices Data Plane Elements (Virtual Switches, Physical Device Interfaces) VTN: Virtual Tenant Network DOVE: Distributed Overlay Virtual Ethernet DDoS: Distributed Denial Of Service LISP: Locator/Identifier Separation Protocol www.opendaylight.org OVSDB: Open vSwitch DataBase Protocol BGP: Border Gateway Protocol PCEP: Path Computation Element Communication Protocol SNMP: Simple Network Management Protocol
  • 19.
     OpenStack  Integra4on   OpenStackNeutron •  Neutron plugin OpenDaylight exposes a single common OpenStack Service Northbound •  API exposed matches Neutron API precisely •  multiple implementations of Neutron networks in OpenDaylight OpenDaylight APIs (REST) Neutron Service VTN Provider OpenDaylight DOVE Provider OVS Provider •  OpenDaylight OpenStack Neutron Plugin simply passes through •  simplifies OpenStack plugin •  pushes complexity to OpenDaylight www.opendaylight.org
  • 20.
    OpenStack Integration: Statusand Next Steps •  OpenStack Neutron API Service available now in OpenDaylight •  provides Neutron API handling for multiple implementations •  Initial ML2 plugin focused on core Neutron functionality •  L4-L7 service support as a next step •  Plugin planned to be upstreamed into OpenStack Neutron during the Icehouse release Try OpenDaylight now with Devstack www.opendaylight.org
  • 21.
    Affinity Management Service §  Examples: §  Contributedby Plexxi §  Service for storing Affinity Information §  Hop Count Sensitive §  Isolate Affinity Information allows association of metadata about workload §  Encrypt §  Class of Service §  §  Affinity Release Plan www.opendaylight.org 21
  • 22.
  • 23.
    Call to Action ▪  OpenDaylightis open to everyone ▪  Join the mailing lists ▪  Join the IRC channel ▪  Bring patches ▪  Bring project proposals ▪  Kick the tires www.opendaylight.org *
  • 24.
    Resources ▪  ▪  More information andto get involved: ▪  http://www.opendaylight.org/software/downloads ▪  http://www.youtube.com/user/opendaylightproject ▪  wiki.opendaylight.org ▪  weekly open conference calls Keep informed and join the conversation ▪  ▪  ▪  ▪  IRC: #opendaylight on Freenode Open mailing lists: lists.opendaylight.org @openDaylightSDN #OpenDaylight www.opendaylight.org *
  • 25.
  • 26.