ONOS

From Wikipedia the free encyclopedia

ONOS (Open Network Operating System)
Company typeOpen Source project under The Linux Foundation
HeadquartersMenlo Park, Calif.
Key people
Guru Parulkar, Executive Director
Websitewww.onosproject.org

The ONOS (Open Network Operating System) project is an open source community hosted by The Linux Foundation. The goal of the project is to create a software-defined networking (SDN) operating system for communications service providers that is designed for scalability, high performance and high availability.

History[edit]

On December 5, 2014, the Open Networking Lab (ON.Lab) along with other industry partners including AT&T and NTT Communications released the ONOS source code to start the open source community.[1] On October 14, 2015, the Linux Foundation announced that ONOS had joined the organization as one of its collaborative projects.[2]

The project was started around October 2012 under the leadership of Pankaj Berde, an architect at ON.Lab. The name ONOS was coined around end of 2012 by Berde. Early prototype was shown on April, 2013[3] at Open Networking Summit (ONS) and journey[4] of initial iterations featured at ONS 2014.

Technology overview[edit]

The software is written in Java and provides a distributed SDN applications platform atop Apache Karaf OSGi container. The system is designed to operate as a cluster of nodes that are identical in terms of their software stack and can withstand failure of individual nodes without causing disruptions in its ability to control the network operation.

ONOS Software Stack
ONOS Software Stack

While ONOS leans heavily on standard protocols and models, e.g. OpenFlow, NETCONF, OpenConfig, its system architecture is not directly tied to them. Instead, ONOS provides its own set of high-level abstractions and models, which it exposes to the application programmers. These models can be extended by the applications at run-time. To prevent the system from becoming tied to a specific configuration or control protocol, any software in direct contact with protocol-specific libraries and engaging in direct interactions with network environment is deliberately isolated into its own tier referred to as a provider or a driver. Likewise, any software in direct contact with intra-cluster communication protocols is deliberately isolated into its own tier referred to as a store.

The platform provides applications with a number of high-level abstractions, through which the applications can learn about the state of the network and through which they can control the flow of traffic through the network. The network graph abstraction provides information about the structure and topology of the network. The flow objective is a device-centric abstraction that allows applications to direct flow of traffic through a specific device without the need to be aware of the device table pipeline. Similarly, the intent is a network-centric abstraction that gives application programmers the ability to control network by specifying what they wish to accomplish rather than specifying how they want to accomplish it. This simplifies application development and at the same time provides the platform with added degrees of freedom to resolve what would normally be considered conflicting requests.

Applications (core extensions) can be loaded and unloaded dynamically, via REST API or GUI, and without the need to restart the cluster or its individual nodes. ONOS application management subsystem assumes the responsibility for distributing the application artifacts throughout the cluster to assure that all nodes are running the same application software. ONOS base distribution contains over 175 applications, which fall into numerous categories, e.g. traffic steering apps, device drivers, ready-to-use YANG models, utilities, monitoring apps.

The system provides REST API, CLI and an extensible, dynamic web-based GUI. gRPC interfaces for ONOS are under active development.

Use cases[edit]

The ONOS software has been used as a platform that applications have been written on top of or has been integrated into other projects. A number of use cases demonstrate how the software is being used today—including global research networking deployments, multilayer network control, and central office re-designed as a datacenter.

Releases[edit]

The following lists the different ONOS releases that are all named after different types of birds in alphabetical order:

Release Name Release Date
Avocet December 5, 2014
Blackbird February 28, 2015
Cardinal May 31, 2015
Drake September 18, 2015
Emu December 18, 2015
Falcon March 10, 2016
Goldeneye June 24, 2016
Hummingbird September 23, 2016
Ibis December 9, 2016
Junco February 28, 2017
Kingfisher June 5, 2017
Loon September 8, 2017
Magpie (LTS) December 11, 2017
Nightingale May 2, 2018
Owl September 4, 2018
Peacock (LTS) November 29, 2018
Quail January 18, 2019
Raven April 29, 2019
Sparrow Aug 30, 2019
Toucan Jan 27, 2020

Members[edit]

There are two tiers of membership for ONOS: Partner and Collaborator, with varying levels of commitment.

See also[edit]

References[edit]

  1. ^ "ON.Lab Delivers Software for New Open Source SDN Network Operating System - ONOS™". PR Newswire. 2014-12-04. Retrieved 2016-06-08.
  2. ^ Talbot, Chris (2015-10-14). "ONOS becomes a Linux Foundation collaborative project". FierceWireless. Retrieved 2016-06-08.
  3. ^ ON.LAB (2013-12-18). "ONOS: Open Network Operating System. An Open-Source Distributed SDN O…". {{cite journal}}: Cite journal requires |journal= (help)
  4. ^ Berde, Pankaj. "ONOS early journey". Youtube.

External links[edit]