Collaborating with OpenDaylight for a Network-Enabled Cloud
1. Phil Robb, Sr. Director Of Technical Operations, OpenDaylight
Collaborating with OpenDaylight for a
Network-Enabled Cloud
2. 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
2
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 code in
commercial products, and adding
value above, below and around.
5. In a Nutshell, OpenDaylight…
... has had 31,388 commits made by 696 contributors representing
2,614,066 lines of code
... is mostly written in Java with an average number of source code
comments
... has a well established, mature codebase maintained by a very large
development team with stable Y-O-Y commits
... took an estimated 764 years of effort (COCOMO model)
5
6. OpenDaylight
6
• The biggest networking OSS project by any measure (www.openhub.net):
150+ known* commercial deployments by 20+ companies
SW / Equipment vendors, SPs, …
Networking, entertainment, energy management, …
* = reported to Linux Foundation
ODL: 2,614,066
DPDK: 1,662,113
Contrail: 739,905
ONOS: 526,549
Lines of Code
ODL: 696
DPDK: 262
Contrail: 253
ONOS: 198
OVS: 326
Contributors
ODL: 31,388
DPDK: 4,832
Contrail: 12,307
ONOS: 7,992
OVS: 12,464
Commits
OVS:306,888
Floodlight: 86
RYU:95
FD.io: 90
Floodlight: 2,722
RYU:2,783
FD.io: 1,418
Floodlight: 93,198
9. Desires Have Changed
9
I want to build my app or
service and have it run well
Infrastructure automation is finally
beyond banging on rocks and cups
with string
Things are still being built and
organized bottoms-up. HOW
DO THESE PIECES FIT
TOGETHER?
I want my apps to easily run across
HV-Containers, DCs, Clouds.
Networking still seems FUBAR.
Networking is complex...
But I don’t have anyway to
communicate with it in PaaS
Why can’t the infrastructure just figure out how
to program itself?
What actually happened when
my WL ran?
11. The Whole Stack Open Source Building Blocks
11*New to LinuxFoundation in 2015/2016
PaaSCloudInfra&ToolingInfrastructure
Additional
PaaS platforms
Open-O
CI/CD
PaNDA
*
*
*
*
* * *
Hardware
Network Control
Operating Systems
VIM Management System
Orchestration
Application Layer / App Server
IO Abstraction & Feature Path
Evolve/Integrate/Install/Test
Network Data Analytics
12. What Must Be Managed in a Network…
chain-in
chain-out
EP:1
EP:2 EP:3
EP:4
Contracts
Match:*
Action:
chain: vFW-gb
chain-in
Match:*a
Action:
chain: vFW-bg
chain-out
vFW
EP1
EP2
EP3
EP4
GBP:blueGBP:green
EP1
EP2
EP3
EP4
VPP VPP
ASA
1000v
VPP
br-gb br-bg
EP1
EP2
EP3
EP4
UCS-B
M460vmnic0 vmnic1
UCS 6200
eth20 eth20
CPU MEM STG
Policy View
Service View
Virtual Topology
Physical Topology
Resource View
Application View App GoRouter Message Bus GoRouter
Everything below
this Line should be
a “NO-STACK
WORLD”
Where’s BW?
IP
Network
IP
Network
IP
Network
IP
Network
IP
Network
IP
Network
App
12
13. The Ability To Spin Up
Compute & Storage Nodes
At Will Is Pointless If They
Can’t Be Connected
Intelligently
14. Real World Use Cases with ODL & OpenStack
• Key Challenge: OpenStack Neutron by itself provides a tenant-facing
cloud networking API but is limited what it exposes to cloud operators.
NFV requires significant new functionality (e.g. Service Function
Chaining)
14
ODL Case Studies:
• AT&T
• China Mobile
• Orange
• Massachusetts Open Cloud
ODL Use Cases:
• Network Virtualization for OpenStack
• Multi-tenant Network
• NFV Telco Services
• Policy and Intent
• OVS Virtualization for Software Switches
• SFC Support with a Virtualized Environment
15. Benefits of OpenDaylight in Your Cloud
1. OpenDaylight Sees and Manages the Network End-to-End
• Within a datacenter, across datacenters, to other public/private clouds, across
Campus, Metro, or long haul WAN links
• Is aware of physical underlay as well as overlay
• Implements/maintains network policy across virtual/physical boundaries
2. Supports many protocols across heterogeneous networking equipment
3. Provides instrumentation/monitoring of network
• Allows for reactive traffic shaping based on conditions
4. Integrates with “higher level” orchestrators/managers
15
19. From Layers to Microservices
19
Controller
SAL/Core
Protocol
Plugin
Protocol
Plugin
...
Application ... Application
Northbound API
Southbound API
Controller
ProcessingProcessing
SAL/Core
Application
Protocol
Plugin
Model
API
Application
(Processing)
API
Model
23. Beryllium:
Enhanced OpenStack Integration
• OpenDaylight Features
• Neutron API enhancements to enable use of ML2 Plug-in
• Full support for OpenStack HA and Clustering
• Improved security with HW-VTEP and efficient security group configuration
via OpenFlow vs IPTables
• OpenStack BGP-VPN support
• Benefits
• Enhanced robustness and security for OpenStack over OpenDaylight
deployments
23
24. What’s Coming In Boron
• Better Scaling
• Better Performance
• Enhanced HA & Clustering
• Evolution of the OpenDaylight ML2 Driver
• App-agnostic app composition pipeline (GBP, SFC, VPN, Etc.)
• New Features/Projects….
24
25. What’s Coming In Boron - Features
• Genius:
• Provides generic network interfaces, utilities & services
• Creates composition pipeline for ODL applications
• Eliminates resource allocation interference between ODL apps
• NetVirt:
• Open vSwitch-based virtualization for software switches
• Hardware VTEP for hardware switches
• Service Function Chaining support
• Yang IDE
Provides an Eclipse plugin that can be used to view and edit YANG model files
25
26. What’s Coming In Boron (Continued)
• OCP Plugin
• ETSI standard protocol for control and management of Remote Radio Head
(RRH) equipment
• Plugin allows applications and controller services to interact with RRHs using
OCP
• Cardinal (OpenDaylight Monitoring as a Service)
• Extends the following for a remote NMS:
• OpenDaylight MIB (Management Information Base) defined in OID experimental
• ODL diagnostics to be exposed across SNMP
• Integrates OpenDaylight TSDR and Centinel for monitoring data and analytics
• ODL diagnostics across northbound for autonomous notifications (SNMP Traps)
26
27. How to Get Started:
• Download directly from OpenDaylight.org.
• Find a Solution or Provider
ODL is the only open source SDN platform with a robust ecosystem of
products, solutions, distributions, and other providers who can help you
deploy open SDN in your network.
• Getting Started Guide
A comprehensive guide for newbies and advanced users to learn about, install
and deploy OpenDaylight.
http://www.opendaylight.org/start
27