%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
Clash of Titans in SDN: OpenDaylight vs ONOS - Elisa Rojas
1. Clash of titans in SDN:
OpenDaylight vs ONOS
Elisa Rojas Sánchez
elisa.rojas@telcaria.com
TECHDAY MADRID, SPAIN, 11 MARCH 2016
1
2. Outline
• A bit of history…
• OpenDaylight (ODL)
• ONOS
• ODL vs ONOS
2
3. A bit of history…
OpenFlow controller
SDN controller
SDN framework
Network Operating System
3
4. A bit of history…
• NOX (2008) C++ & Python
• NOX-MT & POX (2010) C++ & Python
(respectively)
• Trema (2011) Ruby & C
• Beacon (2011) Java
• Floodlight (2011) Java
• Ryu (2012) Python
• ODL (2013) Java + OSGi
• ONOS (2014) Java + OSGi
More: IRIS, MUL,
Jaxon, Maestro,
NodeFlow, ovs-
controller, RUNOS, etc…
(+ more approaches in
Unit 5)
4
5. … + a bunch of commercial SDN
solutions
• Big Switch Big Cloud Fabric
• Plexxi Big Data Fabric
• Brocade Vyatta Controller
• HP Virtual Application Networks (VAN) SDN
Controller/Virtual Cloud Networking (VCN)
• Juniper Contrail ( OpenContrail)
• Cisco Application Centric Infrastructure
(ACI)/Application Policy Infrastructure Controller (APIC)
• Ericsson SDN controller (based on ODL)
5
6. A bit of history…
• NOX (2008) C++ & Python
• NOX-MT & POX (2010) C++ & Python
(respectively)
• Trema (2011) Ruby & C
• Beacon (2011) Java
• Floodlight (2011) Java
• Ryu (2012) Python
• ODL (2013) Java + OSGi
• ONOS (2014) Java + OSGi
6
7. OpenDaylight (ODL)
• What is OpenDaylight (ODL)?
<<OpenDaylight is leading the transformation to Open SDN. By uniting the industry
around a common SDN platform, the ODL community is helping to make interoperable,
programmable networks a reality. This is why so many regard OpenDaylight as the
industry’s de facto standard.>>
– Highly available, modular, extensible, scalable and
multi-protocol controller infrastructure
– Multi project SDN framework (integration)
– Supports OpenFlow (1.0, 1.3), NETCONF, OVSDB,
OpFlex
– Written in Java
– Eclipse Public License (EPL-1.0)
– Work of the ODL community is funded by the
members
7
13. MVC platform
• OpenDaylight is a Model-View-Control
platform:
– Model YANG: Model for data, RPC and
notifications. Used in MD-SAL architecture
• E.g. the model of a flow
– View REST API: View self-generated and
accessible through NB (AD-SAL) or RESTconf (MD-
SAL). “User” interface.
– Control Java Implemented Code: To handle
data changes, notifications and RPC callbacks.
13
17. Importance
• Supports a wide variety of SBI protocols
versions
• Active community
• Aligned with vendors and telcos
• Easy proposal of projects
• Easy deployment (OSGi)
• However…!
– Not so good documentation (e.g. “flavours”?)
– Development of modules requires a deep
knowledge of ODL
17
18. ONOS
• What is Open Network Operating System (ONOS)?
<<The Open Network Operating System (ONOS) is a software defined networking (SDN)
OS for service providers that has scalability, high availability, high performance and
abstractions to make it easy to create apps and services. The platform is based on a
solid architecture and has quickly matured to be feature rich and production ready.>>
– Highly available, modular, extensible, distributed,
scalable and multi-protocol controller infrastructure
– Supports OpenFlow (1.0, 1.3), NETCONF, OVSDB
– Protocol and device behaviour independence
– Written in Java
– Apache 2.0 license
18
19. ONOS
19
• Board
– Service providers:
• AT&T
• China Unicom
• NTT Communications
Corp
• SK Telecom Co., Ltd.
• Verizon
Vendors:
Alcatel Lucent
Ciena Corporation
Cisco Systems, Inc.
Ericsson
Fujitsu Ltd.
Huawei Technologies Co. Ltd.
Intel Corporation
NEC Corporation
ON.Lab
20. ONOS
• Origin and releases:
– 2014 Avocet
– Currently Falcon (03/2016)
– Periodic releases every ~3 months
• Keys:
1. Grow a community of partners
2. Produce high quality NOS software
3. Create an effective open source process
allowing contributors to be productive
20
22. Architecture
• Services and Subsystems
– A service/subsystem is a unit of functionality that
is comprised of multiple components that create a
vertical slice through the tiers as a software stack.
– ONOS defines several primary services:
• Device Subsystem
• Link Subsystem
• Host Subsystem
• Topology Subsystem
• PathService
• FlowRule Subsystem
• Packet Subsystem
22
26. Architecture
• Model Objects
– ONOS maintains protocol-agnostic + protocol-specific
network element and state representations.
• The former are constructs of the core tier, referred to
as Model Objects, and the latter are constructs of the
appropriate provider.
– Model Objects are what ONOS exposes to its applications.
– Types
• Network Topology ( networks as directed graphs)
Device, Port, Host, Link, EdgeLink, Path,Topology
• Network Control ( high-level flow rules: match+action)
FlowRule (!=OF), Intent, RoleValue (clusters: NONE, SLAVE, MASTER)
• Network Packets ( protocol agnostic)
OutboundPacket , InboundPacket
26
27. Intents
• Intent Framework
– Subsystem that allows applications to specify their
network control desires in form of policy rather than
mechanism.
• An Intent is an immutable model object that
describes an application's request to the ONOS
core to alter the network's behavior. Described by:
– Network Resource
– Constraints
– Criteria
– Instructions
27
29. Importance
• Supports a wide variety of SBI protocols
versions
• Very active community
• Good documentation
• Aligned with vendors and telcos
• Easy deployment (OSGi)
• However…!
– Still in its early phases (some project are still
under development and not fully supported)
29
30. ODL vs. ONOS
• Linux Foundation!
• From: https://www.sdxcentral.com/articles/news/onos-joins-the-linux-foundation-
becoming-an-opendaylight-sibling/2015/10/ (Oct’2015)
– “It’s important to understand how code flows. People pick
components and mix them together when it makes sense to do
so. One nice thing about a single umbrella is it creates harmony”
Zemlin says.
– “ONOS and ODL focused on different problems. While ONOS has
focused on service providers’ needs, which landed it a role as
a local controller for AT&T, ODL was created to be the Linux of
networking: one platform to have a very long life and enable
people to build a wide range of solutions to solve a wide range of
problems.” AT&T is using the ODL framework as the basis for its
global SDN controller.
– “One of my big hopes,” says Jacques (ODL executive director), “is
that we don’t need to be in opposition anymore. It allows us to
create collaboration.”
30
31. ODL vs. ONOS
• Cloud vs. Carrier-grade networks?
• Legacy vs. “Pure” SDN?
• Private companies vs. Academic?
31
33. Maven, OSGi, Karaf
• Apache Maven
– Apache Maven is a software project
management and comprehension tool.
– Based on the concept of a project object
model (POM), Maven can manage a project's
build, reporting and documentation from a
central piece of information.
https://maven.apache.org/
33
34. Maven, OSGi, Karaf
• OSGi
– Dynamic Module System for Java bundles
https://www.osgi.org/
• Apache Karaf
– OSGI environment implementation that provides
some additional features (Apache Felix)
• Folder based hot deployment
• Remote SSH access to the console
• Centralized logging
• Own Maven plugins
http://karaf.apache.org/
34