View
2
Download
0
Category
Preview:
Citation preview
ONOS Overview
OPNFV Design SummitNovember 9, 2015
Brian O'ConnorOpen Networking Lab
What is ONOS?
Open Network Operating System (ONOS) is an open source SDN network operating system. Our mission is to enable Service Providers to build real SDN/NFV Solutions.
ONOS Framework (ONOSFW) is the OPNFV project focused on ONOS integration. It is targeted for inclusion in the Brahmaputra release.
ONOS Ecosystem
ON.LAB SERVICE PROVIDER PARTNERS
COLLABORATORSVENDORPARTNERS
COMMUNITY
Quarterly Releases● Avocet (1.0.0) released in December 2014
○ Initial release of clean & modular code-base, protocol independence
● Blackbird (1.1.0) released in March 2015○ Improved performance, scale-out, increased robustness
● Cardinal (1.2.0) released in June 2015○ New use-cases, additional core features, additional SB protocols
● Drake (1.3.0) released in September 2015○ Platform enhancements, security features, UI enhancements
● Emu (1.4.0) - currently in progress for December 2015○ Dynamic cluster scaling, Virtual Network and CORD features
Architectural Tenets● High-availability, scalability and performance
○ required to sustain demands of service provider & enterprise networks
● Strong abstractions and simplicity○ required for development of apps and solutions
● Protocol and device behaviour independence○ avoid contouring and deformation due to protocol specifics
● Separation of concerns and modularity○ allow tailoring and customization without speciating the code-base
Distributed Architecture
NB Core API
Distributed Core(state management, notifications, high-availability & scale-out)
SB Core API
Protocols
Providers
Protocols
Providers
Protocols
Providers
Protocols
Providers
AppsApps
Distributed Architecture
NB Core API
Distributed Core(state management, notifications, high-availability & scale-out)
SB Core API
Protocols
Providers
Protocols
Providers
Protocols
Providers
Protocols
Providers
AppsApps
Distributed Core(state management, notifications, high-availability & scale-out)
SB Core API
NB Core API
Providers Providers Providers Providers
Protocols Protocols Protocols Protocols
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 . . .
Key Northbound Abstractions● Network Graph
○ Directed, cyclic graph comprising of infrastructure devices, infrastructure links and end-station hosts
● Flow Objective○ Device-centric abstraction for programming data-plane flows in table
pipeline-independent manner
● Intent○ Network-centric abstraction for programming data-plane in topology-
independent manner
Device Protocol SupportIncluded- OpenFlow
- 1.0, 1.3+, driver-based pipeline support via Flow Objectives- OVSDB- NetConf- PCEP- TL1 (available from select vendors)
Under development- BGP-LS- SNMP (v2c)
Approaches to Virtualization1. Overlay (implemented)● OpenStack/Nicira-style virtualization● Collection of ports with L2/L3/etc. connectivity● No topology
2. Hypervisor (in progress)● OpenVirtex-style virtualization● Virtual topology elements (devices, ports, links)● No implied connectivity
Overlay Virtualization
OVS (br-int)
Service VM (FW) VM
Compute Node
OVS (br-int)
VMVM
Compute Node
OVS (br-int)
VMVM
Compute Node
Neutron
ML2 Plugin L3 Plugin
Nova
OVSDB OF1.3
SFC Manager
Neutron API
SFC Plugin
VTN Manager
Distributed VTN store
VTN
Overlay Net Topology
Device (OVS) Host (VM) Link
(VxLAN) Flow Rule
Tunnel Packet Stats Master
OVS (br-int)
DHCP
Network Node
DHCP
VxLAN VxLAN
Tunnel Port
IngressSF Port
CORE
Provider
Egress SF Port
- Single Bridge (“br-int”) per node- OF-based L3 Forwarding- ARP proxy on each compute node
- Physical and Overlay Network- Flow Rule management- Full Mesh Overlay network with two variants: 1. create a full mesh of tunnel ports 2. Create one tunnel port per compute node
- VTN is a multi-bundle Application- Distributed VTN Store build using ONOS primitives
Port
External Port
Join the journey @ onosproject.org
Software Defined Transformation of Service Provider Networks
Recommended