clash of titans in sdn: opendaylight vs onos - elisa rojas

Post on 07-Jan-2017

3.409 Views

Category:

Software

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Clash of titans in SDN:

OpenDaylight vs ONOS

Elisa Rojas Sánchez elisa.rojas@telcaria.com

TECHDAY MADRID, SPAIN, 11 MARCH 2016

1

Outline

• A bit of history…

• OpenDaylight (ODL)

• ONOS

• ODL vs ONOS

2

A bit of history…

OpenFlow controller

SDN controller

SDN framework

Network Operating System

3

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

… + 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

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

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

OpenDaylight (ODL)

• Project members (1/2)

8

OpenDaylight (ODL)

• Project members (2/2)

9

OpenDaylight (ODL)

• Origin and releases:

– 2013 Hydrogen

– Currently Beryllium (03/2016)

– Periodic releases every ~9 months

• Keys:

1. Dynamic network services

2. Dynamic intent-based policies

3. Virtualizing functions with Service Function Chaining (SFC)

10

Architecture

11

Project list

12

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

AD-SAL vs MD-SAL

14

MD-SAL

15

Web GUI

• DLUX

16

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

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

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

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

Architecture

21

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

Architecture

23

Architecture

• Subsystem architecture

24

Architecture

• Events and Descriptions

25

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

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

Web GUI

28

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

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

ODL vs. ONOS

• Cloud vs. Carrier-grade networks?

• Legacy vs. “Pure” SDN?

• Private companies vs. Academic?

31

Questions?

Thanks for your attention!

32

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

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

top related