SlideShare a Scribd company logo
1 of 27
ONOS
Open Network Operating System
Architecture Overview
onosproject.org
Ali Al-Shabibi
March 2nd OpenDaylight Meetup
ONOS:
SDN OS for Service Provider Networks
● Scalability, High Availability & Performance
● Northbound & Southbound Abstractions
● Modularity
Service Provider Networks
● WAN core backbone
o Multi-Protocol Label Switching (MPLS) with Traffic Engineering (TE)
o 200-500 routers, 5-10K ports
● Metro Networks
o Metro cores for access networks
o 10-50K routers, 2-3M ports
● Cellular Access Networks
o LTE for a metro area
o 20-100K devices, 100K-100M ports
● Wired access / aggregation
o Access network for homes; DSL/Cable
o 10-50K devices, 100K-1M ports
Key Performance Requirements
ONOS
AppsApps
Global Network View / StateGlobal Network View / State
high throughput | low latency | consistency | high availability
High Throughput:
~500K-1M paths setups / second
~1-2M network state ops / second
High Volume:
~10GB of network state data
Difficult challenge!
Distributed Architecture
NB Core API
Distributed Core
(state management, notifications, high-availability & scale-out)
SB Core API
Protocols
Adapters
Protocols
Adapters
Protocols
Adapters
Protocols
Adapters
AppsApps
Distributed Architecture
NB Core API
Distributed Core
(state management, notifications, high-availability & scale-out)
SB Core API
Protocols
Adapters
Protocols
Adapters
Protocols
Adapters
Protocols
Adapters
AppsApps
ONOS Architecture Tiers
Northbound - Application Intent Framework
(policy enforcement, conflict resolution)
OpenFlow NetConf . . .
AppsApps
Distributed Core
(scalability, availability, performance, persistence)
Southbound
(discover, observe, program, configure)
Northbound Abstraction:
- network graph
- application intents
Core:
- distributed
- protocol independent
Southbound Abstraction:
- generalized OpenFlow
- pluggable & extensible
Manager
Component
ONOS Core Subsystem Structure
Adapter
Component
Adapter
Component
App
Component
ServiceAdminService
Listener
notify
command
command
sync & persist
add & remove
query &
command
App
Component
Adapter
Component
Manager
Component
AdapterRegistry
Adapter
AdapterService
ServiceAdminService
Listener
notify
register & unregister
command
command
sensing
add & remove
query &
command
Store Store
Protocols
sync & persist
Adapter
Component
AdapterRegistry
Adapter
AdapterService
register & unregistersensing
Protocols
Application Intent Framework
● Application specifies high-level intents; not low-level rules
o focus on what should be done, rather than how it should be done
● Intents are compiled into actionable objectives which are installed
into the environment
o e.g. HostToHostIntent compiles into two PathIntents
● Resources required by objectives are then monitored
o e.g. link vanishes, capacity or lambda becomes available
● Intent subsystem reacts by recompiling intent and re-installing
revised objectives
Intent Example
Host to Host Intent
Intent Example
COMPILATION
Path IntentPath Intent
Host to Host Intent
Intent Example
COMPILATION
INSTALLATION
Flow Rule Batch Flow Rule Batch
Flow Rule BatchFlow Rule Batch
Path IntentPath Intent
Host to Host Intent
Distributed Core
● Distributed state management framework
o built for high-availability and scale-out
● Different types of state require different types of synchronization
o fully replicated
o master / slave replicated
o partitioned / distributed
● Novel topology replication technique
o logical clock in each instance timestamps events observed in underlying
network
o logical timestamps ensure state evolves in consistent and ordered fashion
o allows rapid convergence without complex coordination
o applications receive notifications about topology changes
ONOS Distributed Core
● Responsible for all state management concerns
● Organized as a collection of “Stores”
o Ex: Topology, Intents, Link Resources, etc.
● Properties of state guide ACID vs BASE choice
State and Properties
State Properties
Network Topology Eventually consistent, low latency
access
Flow Rules, Flow Stats Eventually consistent, shardable,
soft state
Switch - Controller mapping
Distributed Locks
Strongly consistent, slow
changing
Application Intents
Resource Allocations
Strongly consistent, durable
Immutable
ONOS Southbound
● ONOS supports multiple
southbound protocols,
enabling a transition to true
SDN.
● Adapters provide
descriptions of dataplane
elements to the core - core
utilizes this information.
● Adapters hide protocol
complexity from ONOS.
Area of focus
● Attempt to be as generic as possible
● Enable partners/contributors to submit their own device/protocol
specific providers
● Providers should be stateless; state may be maintained for
optimization but should not be relied upon
Adapter Pattern
1. Adapter registers with core
a. Core returns a AdapterService bound to the Adapter
2. Adapter uses AdapterService to notify core of new events (device connected, pktin) via
Descriptions
3. Core can use Adapter to issue commands to elements under Adapter control
4. Eventually, the adapter unregisters itself; core will invalidate the AdapterService
1
2 3
4
Adapter
Component
Manager
Component
AdapterRegistry
Adapter
AdapterService
register & unregistersensing
Protocols
This is where the
magic happens
Descriptions
● Serve as scratch pads to
pass information to core
● Descriptions are immutable
and extremely short lived
● Descriptions contains URI for
the object they are
describing
● URI also encode the Adapter
the device is linked to
Modularity Objectives
● Increase architectural coherence, testability and maintainability
o establish tiers with crisply defined boundaries and responsibilities
o setup code-base to follow and enforce the tiers
● Facilitate extensibility and customization by partners and users
o unit of replacement is a module
● Avoid speciation of the ONOS code-base
o APIs setup to encourage extensibility and community code contributions
● Preempt code entanglement, i.e. cyclic dependencies
o reasonably small modules serve as firewalls against cycles
● Facilitate pluggable southbound
ONOS 1.0.0 Release Priorities
● Release ONOS with coherent and modular architecture
● Enable and demonstrate high-availability operation
● Enable sustained pursuit of performance and scale objectives
● Enable development of apps and engagement of SDN community
● Demonstrate SDN-IP & Packet-Optical use cases
● User Interface
ONOS Priorities for Feb. Release
● Prove out performance at scale
o current release falls short in our own view
o testing with real hardware
o provide comprehensive assessment
● Continue to increase robustness
o defects, edge-cases, additional failure scenarios
o continuous testing framework
● Segment Routing use-case
o port to the released version of ONOS
● REST API & Security
● Support for multiple-tables
Performance Objectives
● Throughput of proactive provisioning actions
o path flow provisioning
o global optimization or rebalancing of existing path flows
● Latency of responses to topology changes
o path repair in wake of link or device failures
● Throughput of distributing and aggregating state
o batching, caching, parallelism
o dependency reduction
● Controller vs. Device Responsibilities
o defer to devices to do what they do best, e.g low-latency reactivity, backup
paths
Performance - CBench
Performance – Flow Installation
System Environment:
• Server: Dual XeonE5-2670 v2 2.5GHz; 64GB
DDR3; 512GB SSD
• 1Gbps NIC
"Constant-Load" Test Conditions:
• F = 122500 - total # of flows installed
• N: # of neighboring ONOS's for flows to be
installed when ONOS1 is the server installing
flows
• S: #servers installing flows
• SW = 35 - total # of switches (Null Devices)
connected to ONOS cluster evenly distributed to
active ONOS nodes
• FL: # flows to be installed on each switch
What’s available in ONOS today?
● ONOS with all its key features
o high-availability, scalability*, performance*
o northbound abstractions (application intents)
o southbound abstractions (OpenFlow adapters)
o modular code-base
o GUI
● Open source
o ONOS code-base on GitHub
o documentation & infrastructure processes to engage the community
● Use-case demonstrations
o SDN-IP, Packet-Optical
● Sample applications
o reactive forwarding, mobility, proxy arp
Thank you!
Questions?

More Related Content

What's hot

VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)
VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)
VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)Vikas Shokeen
 
Expose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug MadridExpose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug MadridVinay Kumar
 
PHP Interview Questions and Answers | Edureka
PHP Interview Questions and Answers | EdurekaPHP Interview Questions and Answers | Edureka
PHP Interview Questions and Answers | EdurekaEdureka!
 
Introduction to Mobile Ad hoc Networks
Introduction to Mobile Ad hoc NetworksIntroduction to Mobile Ad hoc Networks
Introduction to Mobile Ad hoc NetworksSayed Chhattan Shah
 
Huawei S5700 Basic Configuration Command
Huawei S5700 Basic Configuration CommandHuawei S5700 Basic Configuration Command
Huawei S5700 Basic Configuration CommandHuanetwork
 
Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)NetProtocol Xpert
 
MANET routing protocols Issues and Classifications
 MANET routing protocols Issues and Classifications MANET routing protocols Issues and Classifications
MANET routing protocols Issues and ClassificationsArunChokkalingam
 
PLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data Center
PLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data CenterPLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data Center
PLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data CenterPROIDEA
 
How to configure eo c services for huawei ol ts
How to configure eo c services for huawei ol tsHow to configure eo c services for huawei ol ts
How to configure eo c services for huawei ol tsHuanetwork
 
Web API authentication and authorization
Web API authentication and authorization Web API authentication and authorization
Web API authentication and authorization Chalermpon Areepong
 
OpenvSwitch Deep Dive
OpenvSwitch Deep DiveOpenvSwitch Deep Dive
OpenvSwitch Deep Diverajdeep
 
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry BuzdinModern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry BuzdinJava User Group Latvia
 
Netmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW ArchitectureNetmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW ArchitectureChris Changmo Yoo
 
SAML VS OAuth 2.0 VS OpenID Connect
SAML VS OAuth 2.0 VS OpenID ConnectSAML VS OAuth 2.0 VS OpenID Connect
SAML VS OAuth 2.0 VS OpenID ConnectUbisecure
 

What's hot (20)

ONOS
ONOSONOS
ONOS
 
VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)
VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)
VoWifi 03 - vowifi epdg aaa and architecture (pdf ppt)
 
Expose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug MadridExpose your data as an api is with oracle rest data services -spoug Madrid
Expose your data as an api is with oracle rest data services -spoug Madrid
 
PHP Interview Questions and Answers | Edureka
PHP Interview Questions and Answers | EdurekaPHP Interview Questions and Answers | Edureka
PHP Interview Questions and Answers | Edureka
 
Aruba OS 6.3 Command Line Interface Reference Guide
Aruba OS 6.3 Command Line Interface Reference GuideAruba OS 6.3 Command Line Interface Reference Guide
Aruba OS 6.3 Command Line Interface Reference Guide
 
Introduction to Mobile Ad hoc Networks
Introduction to Mobile Ad hoc NetworksIntroduction to Mobile Ad hoc Networks
Introduction to Mobile Ad hoc Networks
 
Huawei S5700 Basic Configuration Command
Huawei S5700 Basic Configuration CommandHuawei S5700 Basic Configuration Command
Huawei S5700 Basic Configuration Command
 
Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)
 
MANET routing protocols Issues and Classifications
 MANET routing protocols Issues and Classifications MANET routing protocols Issues and Classifications
MANET routing protocols Issues and Classifications
 
Ospf
 Ospf Ospf
Ospf
 
Vpc notes
Vpc notesVpc notes
Vpc notes
 
PLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data Center
PLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data CenterPLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data Center
PLNOG 13: Emil Gągała: EVPN – rozwiązanie nie tylko dla Data Center
 
How to configure eo c services for huawei ol ts
How to configure eo c services for huawei ol tsHow to configure eo c services for huawei ol ts
How to configure eo c services for huawei ol ts
 
Json web token
Json web tokenJson web token
Json web token
 
Web API authentication and authorization
Web API authentication and authorization Web API authentication and authorization
Web API authentication and authorization
 
Private vlan
Private vlanPrivate vlan
Private vlan
 
OpenvSwitch Deep Dive
OpenvSwitch Deep DiveOpenvSwitch Deep Dive
OpenvSwitch Deep Dive
 
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry BuzdinModern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
Modern Security with OAuth 2.0 and JWT and Spring by Dmitry Buzdin
 
Netmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW ArchitectureNetmanias L2,L3 Training (5) L3 SW Architecture
Netmanias L2,L3 Training (5) L3 SW Architecture
 
SAML VS OAuth 2.0 VS OpenID Connect
SAML VS OAuth 2.0 VS OpenID ConnectSAML VS OAuth 2.0 VS OpenID Connect
SAML VS OAuth 2.0 VS OpenID Connect
 

Viewers also liked

Clash of Titans in SDN: OpenDaylight vs ONOS - Elisa Rojas
Clash of Titans in SDN: OpenDaylight vs ONOS - Elisa RojasClash of Titans in SDN: OpenDaylight vs ONOS - Elisa Rojas
Clash of Titans in SDN: OpenDaylight vs ONOS - Elisa RojasOpenNebula Project
 
Introduction of ONOS and core technology
Introduction of ONOS and core technologyIntroduction of ONOS and core technology
Introduction of ONOS and core technologysangyun han
 
ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)sangyun han
 
ONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and testONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and testsangyun han
 
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발sangyun han
 
Customizing Sunstone Provisioning and Admin Portal - Daniel Molina
Customizing Sunstone Provisioning and Admin Portal - Daniel MolinaCustomizing Sunstone Provisioning and Admin Portal - Daniel Molina
Customizing Sunstone Provisioning and Admin Portal - Daniel MolinaOpenNebula Project
 
Tech Talk: ONOS- A Distributed SDN Network Operating System
Tech Talk: ONOS- A Distributed SDN Network Operating SystemTech Talk: ONOS- A Distributed SDN Network Operating System
Tech Talk: ONOS- A Distributed SDN Network Operating Systemnvirters
 
ONOS Open Network Operating System
ONOS Open Network Operating SystemONOS Open Network Operating System
ONOS Open Network Operating SystemON.Lab
 
Onos overview meetup sdn paris - redux
Onos overview  meetup sdn paris - reduxOnos overview  meetup sdn paris - redux
Onos overview meetup sdn paris - reduxSDN_Paris
 
Tools and Platforms for OpenFlow/SDN
Tools and Platforms for OpenFlow/SDNTools and Platforms for OpenFlow/SDN
Tools and Platforms for OpenFlow/SDNUmesh Krishnaswamy
 
ONOS build 2016 Sharing
ONOS build 2016 SharingONOS build 2016 Sharing
ONOS build 2016 SharingChun Ming Ou
 
CORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a DatacenterCORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a DatacenterOpen Networking Summits
 
XOS in open CORD project
XOS in open CORD projectXOS in open CORD project
XOS in open CORD projectsangyun han
 
OVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider NetworksOVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider NetworksNAIM Networks, Inc.
 

Viewers also liked (20)

Clash of Titans in SDN: OpenDaylight vs ONOS - Elisa Rojas
Clash of Titans in SDN: OpenDaylight vs ONOS - Elisa RojasClash of Titans in SDN: OpenDaylight vs ONOS - Elisa Rojas
Clash of Titans in SDN: OpenDaylight vs ONOS - Elisa Rojas
 
Introduction of ONOS and core technology
Introduction of ONOS and core technologyIntroduction of ONOS and core technology
Introduction of ONOS and core technology
 
ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)ONOS - multiple instance setting(Distributed SDN Controller)
ONOS - multiple instance setting(Distributed SDN Controller)
 
ONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and testONOS - setting, configuration, installation, and test
ONOS - setting, configuration, installation, and test
 
Open Network Operating System
Open Network Operating SystemOpen Network Operating System
Open Network Operating System
 
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
ONOS와 Raspberry Pi 기반 가상물리 SDN 실증 환경 구축과 응용 개발
 
Customizing Sunstone Provisioning and Admin Portal - Daniel Molina
Customizing Sunstone Provisioning and Admin Portal - Daniel MolinaCustomizing Sunstone Provisioning and Admin Portal - Daniel Molina
Customizing Sunstone Provisioning and Admin Portal - Daniel Molina
 
Tech Talk: ONOS- A Distributed SDN Network Operating System
Tech Talk: ONOS- A Distributed SDN Network Operating SystemTech Talk: ONOS- A Distributed SDN Network Operating System
Tech Talk: ONOS- A Distributed SDN Network Operating System
 
ONOS Open Network Operating System
ONOS Open Network Operating SystemONOS Open Network Operating System
ONOS Open Network Operating System
 
Onos overview meetup sdn paris - redux
Onos overview  meetup sdn paris - reduxOnos overview  meetup sdn paris - redux
Onos overview meetup sdn paris - redux
 
Tools and Platforms for OpenFlow/SDN
Tools and Platforms for OpenFlow/SDNTools and Platforms for OpenFlow/SDN
Tools and Platforms for OpenFlow/SDN
 
ONOS build 2016 Sharing
ONOS build 2016 SharingONOS build 2016 Sharing
ONOS build 2016 Sharing
 
CORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a DatacenterCORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a Datacenter
 
how to simulate ACI
how to simulate ACIhow to simulate ACI
how to simulate ACI
 
Bài 2.2
Bài 2.2Bài 2.2
Bài 2.2
 
SDN TEST Suite
SDN TEST SuiteSDN TEST Suite
SDN TEST Suite
 
XOS in open CORD project
XOS in open CORD projectXOS in open CORD project
XOS in open CORD project
 
SDN Presentation
SDN PresentationSDN Presentation
SDN Presentation
 
Telecom OEM
Telecom OEMTelecom OEM
Telecom OEM
 
OVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider NetworksOVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
OVNC 2015-Enabling Software-Defined Transformation of Service Provider Networks
 

Similar to ONOS Platform Architecture

TechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the DatacenterTechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the DatacenterRobb Boyd
 
Inter-controller Traffic in ONOS Clusters for SDN Networks
Inter-controller Traffic in ONOS Clusters for SDN Networks Inter-controller Traffic in ONOS Clusters for SDN Networks
Inter-controller Traffic in ONOS Clusters for SDN Networks Paolo Giaccone
 
HPC Controls Future
HPC Controls FutureHPC Controls Future
HPC Controls Futurercastain
 
lect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxlect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxJesicaDcruz1
 
4th SDN Interest Group Seminar-Session 2-3(130313)
4th SDN Interest Group Seminar-Session 2-3(130313)4th SDN Interest Group Seminar-Session 2-3(130313)
4th SDN Interest Group Seminar-Session 2-3(130313)NAIM Networks, Inc.
 
sdnppt-140325015756-phpapp01.pptx
sdnppt-140325015756-phpapp01.pptxsdnppt-140325015756-phpapp01.pptx
sdnppt-140325015756-phpapp01.pptxAamirMaqsood8
 
Software defined networking
Software defined networkingSoftware defined networking
Software defined networkingGoogle
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar
 
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...Software Innovations and Control Plane Evolution in the new SDN Transport Arc...
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...Cisco Canada
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basicGyewan An
 
Light Reading BTE_SDNtoolbox_June_2015
Light Reading BTE_SDNtoolbox_June_2015Light Reading BTE_SDNtoolbox_June_2015
Light Reading BTE_SDNtoolbox_June_2015Deborah Porchivina
 
Distributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined NetworkingDistributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined NetworkingUS-Ignite
 
FlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerFlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerHolger Winkelmann
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SAMeh Zaghloul
 
OIF Open Transport API for Interoperable Optical Networking
OIF Open Transport API for Interoperable Optical NetworkingOIF Open Transport API for Interoperable Optical Networking
OIF Open Transport API for Interoperable Optical NetworkingLeah Wilkinson
 
Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...
Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...
Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...Danny Alex Lachos Perez
 
Cisco Prime for IP NGN
Cisco Prime for IP NGNCisco Prime for IP NGN
Cisco Prime for IP NGNCisco Canada
 
Software Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_truptiSoftware Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_truptitrups7778
 

Similar to ONOS Platform Architecture (20)

TechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the DatacenterTechWiseTV Workshop: Segment Routing for the Datacenter
TechWiseTV Workshop: Segment Routing for the Datacenter
 
Inter-controller Traffic in ONOS Clusters for SDN Networks
Inter-controller Traffic in ONOS Clusters for SDN Networks Inter-controller Traffic in ONOS Clusters for SDN Networks
Inter-controller Traffic in ONOS Clusters for SDN Networks
 
HPC Controls Future
HPC Controls FutureHPC Controls Future
HPC Controls Future
 
lect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxlect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptx
 
4th SDN Interest Group Seminar-Session 2-3(130313)
4th SDN Interest Group Seminar-Session 2-3(130313)4th SDN Interest Group Seminar-Session 2-3(130313)
4th SDN Interest Group Seminar-Session 2-3(130313)
 
Software Defined Networking: Primer
Software Defined Networking: Primer Software Defined Networking: Primer
Software Defined Networking: Primer
 
sdnppt-140325015756-phpapp01.pptx
sdnppt-140325015756-phpapp01.pptxsdnppt-140325015756-phpapp01.pptx
sdnppt-140325015756-phpapp01.pptx
 
Sdn ppt
Sdn pptSdn ppt
Sdn ppt
 
Software defined networking
Software defined networkingSoftware defined networking
Software defined networking
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
 
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...Software Innovations and Control Plane Evolution in the new SDN Transport Arc...
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...
 
netconf, restconf, grpc_basic
netconf, restconf, grpc_basicnetconf, restconf, grpc_basic
netconf, restconf, grpc_basic
 
Light Reading BTE_SDNtoolbox_June_2015
Light Reading BTE_SDNtoolbox_June_2015Light Reading BTE_SDNtoolbox_June_2015
Light Reading BTE_SDNtoolbox_June_2015
 
Distributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined NetworkingDistributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined Networking
 
FlowER Erlang Openflow Controller
FlowER Erlang Openflow ControllerFlowER Erlang Openflow Controller
FlowER Erlang Openflow Controller
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
 
OIF Open Transport API for Interoperable Optical Networking
OIF Open Transport API for Interoperable Optical NetworkingOIF Open Transport API for Interoperable Optical Networking
OIF Open Transport API for Interoperable Optical Networking
 
Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...
Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...
Multi-domain Orchestration leveraging the Application-Layer Traffic Optimizat...
 
Cisco Prime for IP NGN
Cisco Prime for IP NGNCisco Prime for IP NGN
Cisco Prime for IP NGN
 
Software Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_truptiSoftware Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_trupti
 

More from OpenDaylight

OpenDaylight OpenFlow clustering
OpenDaylight OpenFlow clusteringOpenDaylight OpenFlow clustering
OpenDaylight OpenFlow clusteringOpenDaylight
 
Network Intent Composition in OpenDaylight
Network Intent Composition in OpenDaylightNetwork Intent Composition in OpenDaylight
Network Intent Composition in OpenDaylightOpenDaylight
 
OpenDaylight MD-SAL Clustering Explained
OpenDaylight MD-SAL Clustering ExplainedOpenDaylight MD-SAL Clustering Explained
OpenDaylight MD-SAL Clustering ExplainedOpenDaylight
 
Integration Group - Lithium test strategy
Integration Group - Lithium test strategyIntegration Group - Lithium test strategy
Integration Group - Lithium test strategyOpenDaylight
 
Integration Group - Robot Framework
Integration Group - Robot Framework Integration Group - Robot Framework
Integration Group - Robot Framework OpenDaylight
 
Introduction to JUnit testing in OpenDaylight
Introduction to JUnit testing in OpenDaylightIntroduction to JUnit testing in OpenDaylight
Introduction to JUnit testing in OpenDaylightOpenDaylight
 
Security of OpenDaylight platform
Security of OpenDaylight platformSecurity of OpenDaylight platform
Security of OpenDaylight platformOpenDaylight
 
Using OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound pluginsUsing OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound pluginsOpenDaylight
 
Yang in ODL by Jan Medved
Yang in ODL by Jan MedvedYang in ODL by Jan Medved
Yang in ODL by Jan MedvedOpenDaylight
 

More from OpenDaylight (9)

OpenDaylight OpenFlow clustering
OpenDaylight OpenFlow clusteringOpenDaylight OpenFlow clustering
OpenDaylight OpenFlow clustering
 
Network Intent Composition in OpenDaylight
Network Intent Composition in OpenDaylightNetwork Intent Composition in OpenDaylight
Network Intent Composition in OpenDaylight
 
OpenDaylight MD-SAL Clustering Explained
OpenDaylight MD-SAL Clustering ExplainedOpenDaylight MD-SAL Clustering Explained
OpenDaylight MD-SAL Clustering Explained
 
Integration Group - Lithium test strategy
Integration Group - Lithium test strategyIntegration Group - Lithium test strategy
Integration Group - Lithium test strategy
 
Integration Group - Robot Framework
Integration Group - Robot Framework Integration Group - Robot Framework
Integration Group - Robot Framework
 
Introduction to JUnit testing in OpenDaylight
Introduction to JUnit testing in OpenDaylightIntroduction to JUnit testing in OpenDaylight
Introduction to JUnit testing in OpenDaylight
 
Security of OpenDaylight platform
Security of OpenDaylight platformSecurity of OpenDaylight platform
Security of OpenDaylight platform
 
Using OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound pluginsUsing OVSDB and OpenFlow southbound plugins
Using OVSDB and OpenFlow southbound plugins
 
Yang in ODL by Jan Medved
Yang in ODL by Jan MedvedYang in ODL by Jan Medved
Yang in ODL by Jan Medved
 

Recently uploaded

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

ONOS Platform Architecture

  • 1. ONOS Open Network Operating System Architecture Overview onosproject.org Ali Al-Shabibi March 2nd OpenDaylight Meetup
  • 2. ONOS: SDN OS for Service Provider Networks ● Scalability, High Availability & Performance ● Northbound & Southbound Abstractions ● Modularity
  • 3. Service Provider Networks ● WAN core backbone o Multi-Protocol Label Switching (MPLS) with Traffic Engineering (TE) o 200-500 routers, 5-10K ports ● Metro Networks o Metro cores for access networks o 10-50K routers, 2-3M ports ● Cellular Access Networks o LTE for a metro area o 20-100K devices, 100K-100M ports ● Wired access / aggregation o Access network for homes; DSL/Cable o 10-50K devices, 100K-1M ports
  • 4. Key Performance Requirements ONOS AppsApps Global Network View / StateGlobal Network View / State high throughput | low latency | consistency | high availability High Throughput: ~500K-1M paths setups / second ~1-2M network state ops / second High Volume: ~10GB of network state data Difficult challenge!
  • 5. Distributed Architecture NB Core API Distributed Core (state management, notifications, high-availability & scale-out) SB Core API Protocols Adapters Protocols Adapters Protocols Adapters Protocols Adapters AppsApps
  • 6. Distributed Architecture NB Core API Distributed Core (state management, notifications, high-availability & scale-out) SB Core API Protocols Adapters Protocols Adapters Protocols Adapters Protocols Adapters AppsApps
  • 7. ONOS Architecture Tiers Northbound - Application Intent Framework (policy enforcement, conflict resolution) OpenFlow NetConf . . . AppsApps Distributed Core (scalability, availability, performance, persistence) Southbound (discover, observe, program, configure) Northbound Abstraction: - network graph - application intents Core: - distributed - protocol independent Southbound Abstraction: - generalized OpenFlow - pluggable & extensible
  • 8. Manager Component ONOS Core Subsystem Structure Adapter Component Adapter Component App Component ServiceAdminService Listener notify command command sync & persist add & remove query & command App Component Adapter Component Manager Component AdapterRegistry Adapter AdapterService ServiceAdminService Listener notify register & unregister command command sensing add & remove query & command Store Store Protocols sync & persist Adapter Component AdapterRegistry Adapter AdapterService register & unregistersensing Protocols
  • 9. Application Intent Framework ● Application specifies high-level intents; not low-level rules o focus on what should be done, rather than how it should be done ● Intents are compiled into actionable objectives which are installed into the environment o e.g. HostToHostIntent compiles into two PathIntents ● Resources required by objectives are then monitored o e.g. link vanishes, capacity or lambda becomes available ● Intent subsystem reacts by recompiling intent and re-installing revised objectives
  • 10. Intent Example Host to Host Intent
  • 11. Intent Example COMPILATION Path IntentPath Intent Host to Host Intent
  • 12. Intent Example COMPILATION INSTALLATION Flow Rule Batch Flow Rule Batch Flow Rule BatchFlow Rule Batch Path IntentPath Intent Host to Host Intent
  • 13. Distributed Core ● Distributed state management framework o built for high-availability and scale-out ● Different types of state require different types of synchronization o fully replicated o master / slave replicated o partitioned / distributed ● Novel topology replication technique o logical clock in each instance timestamps events observed in underlying network o logical timestamps ensure state evolves in consistent and ordered fashion o allows rapid convergence without complex coordination o applications receive notifications about topology changes
  • 14. ONOS Distributed Core ● Responsible for all state management concerns ● Organized as a collection of “Stores” o Ex: Topology, Intents, Link Resources, etc. ● Properties of state guide ACID vs BASE choice
  • 15. State and Properties State Properties Network Topology Eventually consistent, low latency access Flow Rules, Flow Stats Eventually consistent, shardable, soft state Switch - Controller mapping Distributed Locks Strongly consistent, slow changing Application Intents Resource Allocations Strongly consistent, durable Immutable
  • 16. ONOS Southbound ● ONOS supports multiple southbound protocols, enabling a transition to true SDN. ● Adapters provide descriptions of dataplane elements to the core - core utilizes this information. ● Adapters hide protocol complexity from ONOS.
  • 17. Area of focus ● Attempt to be as generic as possible ● Enable partners/contributors to submit their own device/protocol specific providers ● Providers should be stateless; state may be maintained for optimization but should not be relied upon
  • 18. Adapter Pattern 1. Adapter registers with core a. Core returns a AdapterService bound to the Adapter 2. Adapter uses AdapterService to notify core of new events (device connected, pktin) via Descriptions 3. Core can use Adapter to issue commands to elements under Adapter control 4. Eventually, the adapter unregisters itself; core will invalidate the AdapterService 1 2 3 4 Adapter Component Manager Component AdapterRegistry Adapter AdapterService register & unregistersensing Protocols This is where the magic happens
  • 19. Descriptions ● Serve as scratch pads to pass information to core ● Descriptions are immutable and extremely short lived ● Descriptions contains URI for the object they are describing ● URI also encode the Adapter the device is linked to
  • 20. Modularity Objectives ● Increase architectural coherence, testability and maintainability o establish tiers with crisply defined boundaries and responsibilities o setup code-base to follow and enforce the tiers ● Facilitate extensibility and customization by partners and users o unit of replacement is a module ● Avoid speciation of the ONOS code-base o APIs setup to encourage extensibility and community code contributions ● Preempt code entanglement, i.e. cyclic dependencies o reasonably small modules serve as firewalls against cycles ● Facilitate pluggable southbound
  • 21. ONOS 1.0.0 Release Priorities ● Release ONOS with coherent and modular architecture ● Enable and demonstrate high-availability operation ● Enable sustained pursuit of performance and scale objectives ● Enable development of apps and engagement of SDN community ● Demonstrate SDN-IP & Packet-Optical use cases ● User Interface
  • 22. ONOS Priorities for Feb. Release ● Prove out performance at scale o current release falls short in our own view o testing with real hardware o provide comprehensive assessment ● Continue to increase robustness o defects, edge-cases, additional failure scenarios o continuous testing framework ● Segment Routing use-case o port to the released version of ONOS ● REST API & Security ● Support for multiple-tables
  • 23. Performance Objectives ● Throughput of proactive provisioning actions o path flow provisioning o global optimization or rebalancing of existing path flows ● Latency of responses to topology changes o path repair in wake of link or device failures ● Throughput of distributing and aggregating state o batching, caching, parallelism o dependency reduction ● Controller vs. Device Responsibilities o defer to devices to do what they do best, e.g low-latency reactivity, backup paths
  • 25. Performance – Flow Installation System Environment: • Server: Dual XeonE5-2670 v2 2.5GHz; 64GB DDR3; 512GB SSD • 1Gbps NIC "Constant-Load" Test Conditions: • F = 122500 - total # of flows installed • N: # of neighboring ONOS's for flows to be installed when ONOS1 is the server installing flows • S: #servers installing flows • SW = 35 - total # of switches (Null Devices) connected to ONOS cluster evenly distributed to active ONOS nodes • FL: # flows to be installed on each switch
  • 26. What’s available in ONOS today? ● ONOS with all its key features o high-availability, scalability*, performance* o northbound abstractions (application intents) o southbound abstractions (OpenFlow adapters) o modular code-base o GUI ● Open source o ONOS code-base on GitHub o documentation & infrastructure processes to engage the community ● Use-case demonstrations o SDN-IP, Packet-Optical ● Sample applications o reactive forwarding, mobility, proxy arp

Editor's Notes

  1. To be more concrete, I would like to illustrate this using a simple example. We begin with a high level object defined by the application that requests connectivity is established between specific hosts. That object is transformed into more specific intent objects through a process called compilation. Once the intents that contain enough information that they can be programmed, we convert these lower-level intents into resource reservations and work in a process called installation.
  2. To be more concrete, I would like to illustrate this using a simple example. We begin with a high level object defined by the application that requests connectivity is established between specific hosts. That object is transformed into more specific intent objects through a process called compilation. Once the intents that contain enough information that they can be programmed, we convert these lower-level intents into resource reservations and work in a process called installation.
  3. To be more concrete, I would like to illustrate this using a simple example. We begin with a high level object defined by the application that requests connectivity is established between specific hosts. That object is transformed into more specific intent objects through a process called compilation. Once the intents that contain enough information that they can be programmed, we convert these lower-level intents into resource reservations and work in a process called installation.
  4. Hi, This is Madan Jampani. I’ll briefly talk about the role of the distributed core subsystem in ONOS and how it is architected. As Thomas alluded to in his presentation, the core subsystem’s primary responsibility is to manage state and do so in a highly available and performant manner. To that end and to better align with our modularity objectives, the core is organized as a collection of stores with each store serving the persistence needs of a specific service. Topology store, Store for intents are couple of examples. The idea here is for the specific store to abstract away all the gory details of replication, fault-tolerance, etc. Now, as Thomas mentioned, we assume there is no such thing as a one-stop-solution when it comes to state management and therefore the approach we take and choices we make for each store is dictated by the properties of the associated state. For example some state mandates ACID semantics, some state is eventually consistent and so on.
  5. In this slide is a partial listing of some of the state that is tracked inside ONOS and the associated properties. As you can see, there are some similarities as well as some differences. Some state is eventually consistent whereas some state needs stronger guarantees. Even for stuff at the same consistency level, the number of replicas could be dictated by the nature of read/write access and desired level of durability and performance.