Welcome to the Open Network Operating System (ONOS) Wiki!
This wiki aims to provide up-to-date information about the ONOS Project. This is a community effort - if you are interested in helping out, or would like to write about something, please refer to this page.
ONOS stands for Open Network Operating System. ONOS provides the control plane for a software-defined network (SDN), managing network components, such as switches and links, and running software programs or modules to provide communication services to end hosts and neighboring networks.
The most important benefit of an operating system is that it provides a useful and usable platform for software programs designed for a particular application or use case. ONOS applications and use cases often consist of customized communication routing, management, or monitoring services for software-defined networks.
ONOS can run as a distributed system across multiple servers, allowing it to use the CPU and memory resources of multiple servers while providing fault tolerance in the face of server failure and potentially supporting live/rolling upgrades of hardware and software without interrupting network traffic.
The ONOS kernel and core services, as well as ONOS applications, are written in Java as bundles that are loaded into the Karaf OSGi container. OSGi is a component system for Java that allows modules to be installed and run dynamically in a single JVM. Since ONOS runs in the JVM, it can run on several underlying OS platforms. More information on the internal design of ONOS may be found in Architecture and Internals Guide, and information on developing ONOS applications may be found in the Developer Guide.
ONOS is an open source project backed by an expanding community of developers and users, and you are invited and encouraged to join in discussion, development, documentation, and improvement of the ONOS system. This document itself is part of the ONOS wiki, so please feel free to fix any errors, add clarifying comments, and improve it as you see fit.
Welcome to ONOS!
If you would like to get involved and to keep track of the latest news about ONOS, the following might be interesting:
If you are interested in using or working with ONOS, you may find the following useful:
ONOS is a dynamic open-source project. Help us evolve ONOS and keep the information here up-to date!
Find out how to begin in A Beginner's Guide to Contribution.
ONOS is distributed under the Apache 2.0 license.