onos build 2016 sharing

25
#OpenCORD #ONOSProject ONOS Build 2016 與會分享 Chun Ming Ou NCTU CS SDNDS-TW meetup 11/19, NCTU

Upload: chun-ming-ou

Post on 16-Apr-2017

297 views

Category:

Technology


1 download

TRANSCRIPT

#OpenCORD #ONOSProject

ONOS Build 2016 與會分享

Chun Ming OuNCTU CS

SDNDS-TW meetup11/19, NCTU

#OpenCORD #ONOSProject

自我介紹

❏ 歐俊明

❏ 交大資工碩班 戊組

❏ 社群參與

❏ SDNDS-TW

❏ ONOS/CORD Ambassador

[email protected]

#OpenCORD #ONOSProject

Outline

❏ What is ONOS Build?

❏ What is ONOS?

❏ ONOS Overview & Roadmap

❏ ONOS Deployments

❏ Brigades

#OpenCORD #ONOSProject

What is ONOS Build?

❏ First large scale developer conference

❏ Share, learn, align, plan and hack together.

❏ Three days with 200 core developers, Community.

❏ ONOS Hackathon

❏ ONOS Basics

❏ ONOS Community Showcase

#OpenCORD #ONOSProject

What is ONOS?

❏ Software defined networking (SDN) OS

❏ Scalability

❏ High availability

❏ High performance

❏ Abstractions

#OpenCORD #ONOSProject

ONOS Core Subsystems

Device Link Host

Topology

Flow Rule

Path

Packet

StatisticsIntent

Application

Leadership

Messaging

Storage Region

Mastership

Driver

Group

Security

Flow Objective

Event

OpenFlow NetConf OVSDB

Core Cluster

. . .

Proxy ARPMobility L2 Forwarding

REST API GUI CLI

Network Cfg.

SDN IP / BGP Packet / Optical

Tunnel

. . .

OSGi / Apache Karaf

Network Virt.Device Cfg.

Config

UI Extension

External Apps

Graph

Discovery Tenant . . .

#OpenCORD #ONOSProject

Outline

❏ What is ONOS Build?

❏ What is ONOS?

❏ ONOS Overview & Roadmap

❏ ONOS Deployments

❏ Brigades

#OpenCORD #ONOSProject

Quarterly Releases

❏ Avocet (1.0.0) released 2014-12❏ initial release of clean and modular code-base, protocol independence

❏ Blackbird (1.1.0) released 2015-03❏ improved performance, scale-out, increased robustness

❏ Cardinal (1.2.0) released 2015-06❏ new use-cases, additional core features, additional SB protocols

❏ Drake (1.3.0) released 2015-09❏ platform enhancements, security, UI enhancements

❏ Emu (1.4.0) - released 2015-12❏ CORD features, prototype of dynamic cluster scaling

#OpenCORD #ONOSProject

Quarterly Releases

❏ Falcon (1.5.0) - released 2016-03❏ dynamic cluster scaling, model extensibility, YANG compiler incubation

❏ secure mode ONOS enhancements

❏ new southbound protocols: OSPF, REST & SNMP

❏ Goldeneye (1.6.0) - released 2016-06❏ distributed core enhancements

❏ compiling intents to flow objectives

❏ spring cleaning, YANG compiler incubation, GUI scaling, P4 PoC

❏ Hummingbird (1.7.0) - released 2016-09❏ new distributed primitives, Kafka & RabbitMQ integration

❏ new GUI L&F, incubation of new GUI scalability features

❏ build tooling migrated from Maven to Buck for faster builds

#OpenCORD #ONOSProject

Ibis (1.8.0) planned for 2016-12

❏ Dynamic Configuration of Devices and Services❏ allow new YANG models for devices and services to be introduced at runtime so that

applications can leverage new models and features without recompilation

❏ Virtualization❏ provide SDN-capable virtual networks and virtualized services for each network; introduce

virtual networks as a first class abstraction

❏ GUI Scalability Enhancements❏ provide support for nested layouts & regions

❏ Intent Framework Enhancements❏ enhance existing intent framework to enable new deployments that require SDN-IP & VPLS

capabilities

#OpenCORD #ONOSProject

Near-Term Roadmap Items

❏ Dynamic Configuration (in progress)

❏ Virtualization (in progress)

❏ GUI Scalability (in progress)

❏ In-Service Software Upgrade

❏ gRPC API

❏ Federation (hierarchical & peering)

❏ Intent Subsystem 2.0 (a.k.a Intent Domains)

❏ Distributed Platform & Network Core Separation

#OpenCORD #ONOSProject

Virtualization

❏ ONOS as network hypervisor❏ using OVX model aimed at virtualization for off-platform apps

❏ on-platform apps can be network-aware, not network-specific

❏ Produces SDN-capable virtual networks❏ with topology and without implicit connectivity

❏ connectivity is explicitly programmed via REST & OpenFlow APIs

❏ permits arbitrary topologies

❏ Protocol independent & modular❏ manual or programmatic network embedding

❏ support for arbitrary data-plane virtualization mechanisms

#OpenCORD #ONOSProject

GUI Scalability Enhancements

❏ Allow users to use GUI in large network deployments❏ focus on usability and flexibility of topology layouts

❏ manage amount of information on the screen via zooming in/out

❏ Nested & customizable layouts❏ physical layouts, e.g. geographical map, floor-plan, rack

❏ logical layouts, e.g. spine-leaf

❏ Customizable icon scaling❏ allows users to adjust the density of information on screen

#OpenCORD #ONOSProject

In-Service Software Upgrade

❏ Mechanism for gradually upgrading an ONOS cluster❏ upgrades cluster one node at a time without downtime

❏ Requires portable serialization for cluster comms❏ upgraded nodes must be able to speak the “old” language

#OpenCORD #ONOSProject

gRPC API

❏ Allow fine-grained & high-performance interactions

between ONOS and off-platform apps❏ presently available only for on-platform apps via Java API

❏ REST API suitable only for relatively low-frequency & coarse interactions

❏ Enables apps to be run on or off platform❏ permits compute resource isolation

❏ off-platform apps as micro-services

❏ Allows ONOS apps to be written in other languages

#OpenCORD #ONOSProject

Cluster Federation

❏ Coordination mechanism for multiple ONOS clusters❏ permits peer-to-peer & hierarchical arrangements

❏ aims to support different administrative domains

#OpenCORD #ONOSProject

Intent Subsystem 2.0

❏ Based on networks comprising of regions with different

technologies & limitations❏ different regions of network can use different means to satisfy an intent

❏ multiple intent domains within a single administrative domain

❏ Offers composable network-centric primitives❏ e.g. tunnel, default route, {broad|multi|any}cast

❏ efficient use of network resources via shared use of primitives

❏ Offers apps to negotiate/select from alternatives❏ presently only one intent “solution” is implicitly selected

#OpenCORD #ONOSProject

Outline

❏ What is ONOS Build?

❏ What is ONOS?

❏ ONOS Overview & Roadmap

❏ ONOS Deployments

❏ Brigades

#OpenCORD #ONOSProject

Global SDN Deployment Powered by ONOS

OpenFlow

OpenFlow

OF

Q3 2015ONOS Deployment in Australia

OpenFlow

Q3 2015Korea announces the firstONOS deployment

Q4 2015ONOS deployed in Korea

Q4 2015First ONOS

production deploymentin South America

Q1-Q2 2015First ONOS DeploymentsSouth America, US, EU

Q4 2015 – New connectionsSidney – Seattle - MiamiSao Paolo – Amsterdam

Q1 2016NCTU / Taiwandeploys ONOS

Q1 2016 – New connectionsMiami - Korea

Miami - TaiwanKorea - Taiwan

#OpenCORD #ONOSProject

The Federated Testbed Initiative

❏ Goal: Create a federated 5G playground for the industry. Experiment SDN, NFV and cloud technologies in a multi-domain, multi-vendor environment, looking forward to 5G.

❏ Based on the SoftFIRE testbed infrastructure

❏ Integration of ONOS and CORD❏ Control of the infrastructure❏ Act as platform to evaluate for Users

❏ First Participants:❏ Deutsche Telekom❏ Ericsson❏ Fraunhofer FOKUS❏ IEEE❏ Politecnico di Torino❏ TIM (JolNET)❏ University of Surrey

#OpenCORD #ONOSProject

RENs, Action Plan

Packet-Optical

VPLS + CE + BoD

SDN-IP / SDX-L3 / Castor

Layer 0 /1

Layer 2

Layer 3OpenFlow

switches CORD / ONOS Applications

XOS (E-CORD)

Orchestrator

Optical circuits

- Point-to-Point Circuits- Broadcast L2 networks on demand

- BGP peering between internal Users- International peering

Ability for both Users and Operatorsto allocate end-to-end resourcesat multiple layers..

#OpenCORD #ONOSProject

❏ AmLight (South America)❏ Moving L2 services to production using VPLS

❏ GEANT (Official network)❏ VPLS, BoD, SDN-IP / SDX-L3

❏ Internet2 (US)❏ VPLS, SDN, IP, new OpenCloud (~E-CORD)

❏ Israel Institute of Technology (Israel)❏ VPLS, SDN-IP, CORD PODs experimentation

New Participants, new deployments

❏ JGN-X (Japan)❏ VPLS, SDN-IP

❏ KISTI / KREONET (Korea)❏ Packet-optical, VPLS, SDN-IP, support for

VDN (custom virtualization app)

❏ NCTU (Taiwan)❏ VPLS, SDN-IP, CORD PODs

experimentation

Global SDN demo deployment -> focus on single production networks

#OpenCORD #ONOSProject

Outline

❏ What is ONOS Build?

❏ What is ONOS?

❏ ONOS Overview & Roadmap

❏ ONOS Deployments

❏ Brigades

#OpenCORD #ONOSProject

Brigades

❏ Brigades - harnessing the power of community❏ help to make forward progress on key ONOS roadmap items

❏ ON.Lab & TST acting mostly as shepherds

❏ Started with 5 brigades❏ Deployments Brigade (enhancing existing intent framework)

❏ Dynamic Configuration Brigade

❏ Virtualization Brigade

❏ GUI Brigade

❏ Teaching Brigade

❏ Number of brigades may grow in the future

#OpenCORD #ONOSProject 25

THANK YOU!