Architecture of ONOS

ONOS architecture is designed specifically for carrier-grade networks' requirements of performance, high availability, and scale, with well-defined abstractions:

Architecture of ONOS

Figure 3: ONOS architecture

Let's look at the key features of ONOS, which are listed here:

  • Distributed Core: The SDN operating system is designed to run in a cluster implementing carrier-grade network requirements for agility, resilience, fault-tolerance, high performance, elastic scalability based on application, and bandwidth demands.
  • Northbound abstraction/APIs: These provide configuration and management services for the development of SDN applications. They support network graphs providing network view applications. Application intent frameworks enables applications to specify their network control requirements in the form of policy insulating the mechanism definition, making it easier to develop applications. They also supports device abstractions.
  • Southbound abstraction/APIs: These provide protocol plugins to communicate with network devices. OpenFlow, OVSDB, and Netconf plugins are supported by default. A pluggable, extensible architecture enables support for protocols to communicate with legacy devices insulating the Core from the different device communication protocols.
  • Software modularity: Modular software architecture is designed for efficient development, deployment, and maintenance. It also facilitates contributions from the ecosystem of the open source community, development of apps, and services.

Let us now continue our learning using hands-on exercises with ONOS.

Prerequisites for installing ONOS

ONOS is built using the Java programming language, hence a Java Runtime (JRE) is required to use ONOS. It is recommended to use JRE 7 or JRE 8. We recommend using a 64-bit Ubuntu-based server for trying out ONOS. You can use VirtualBox to create this server as a virtual machine. You can download the ONOS VM from https://wiki.onosproject.org/display/ONOS/Downloads.

Installing ONOS

ONOS is bundled as a set of core OS components and add-on applications providing the desired functionality. In this section, let's see how to install core ONOS and add application components to it. Check https://wiki.onosproject.org/display/ONOS/Basic+ONOS+Tutorial for details:

  1. ONOS uses Apache Karaf to package, install and manage components. In order to start ONOS, start Karaf using the karaf command, as shown in the following screenshot:

    Installing ONOS

  2. ONOS comes installed with basic, yet key, components. You can use the feature:list -i Karaf command, as shown here:

    Installing ONOS

This completes the basic installation of ONOS.

Installing application components

ONOS comes with default core components. Let's now add the onos-app-fwd application package, which provides switching functionality.

Use the feature:install <features> command to install the L2 switch packages as shown in the following screenshot. Once the installation is complete, you can use the feature:list -i command to confirm that the L2 switch packages are installed:

Installing application components

This completes the configuration of a minimal ONOS setup. As seen in the architecture diagram, ONOS supports many other capabilities and as an end user, you can install and use the features you require.

Installing application components

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.147.193.37