This page requires update!

How to Read This Document

This roadmap is intended to provide information about what is being planned for upcoming ONOS releases and to provide guidance about how you can help us with planning for and delivering these items.  If you have any questions, comments or suggestions about this document, please feel free to post to the onos-dev mailing list.

How You Can Help

As an open source project, we welcome contributions from anyone in the community.  You are welcome to 'scratch your own itch' and contribute any new feature, bug fix or other contribution that you are interested in.  If you're excited about what we're planning for future releases and would like to help get these improvements out more quickly, we encourage you to work with us to accelerate these roadmap items.

Roadmap at a Glance

Thomas Vachuska presented information about the 2017 ONOS roadmap at the ONOS Build event in Paris in November 2016.


The major items on the roadmap are below.  For more details about each item, please scroll down the page.

We also maintain a set of 'bounty bugs' in JIRA that are issues we want in upcoming releases but don't have owners assigned to them yet.  Please feel free to take one of those and we'll be happy to thank you with ONOS swag after completing those tasks.

Motivations

The following are the high-level drivers/requirements which determine the priority of the major initiatives shown above.

Dynamic Configuration

Virtualization

GUI Scalability

Deployments

Intents v2.0

P4

In-Service Software Upgrade

gRPC

Federation

Disaggregation of ONOS code-base

Initiatives

The following are high-level narratives describing the use-cases and features comprising the various ONOS platform initiatives. After each narrative is also the proposed breakdown of work into buckets that are scoped to fit inside a single release and that illustrate the progression towards the goal set for each initiative. Each of these buckets will be tracked as a JIRA Epic within an ONOS release.

Dynamic Configuration

Provide a YANG model-driven configuration architecture to enable declarative data and service definitions.  This work would encompass an auto-generated RESTCONF NB, a distributed tree-based datastore in the Core, and a vendor agnostic SB that would enable ease of interactions with NETCONF devices.  It will leverage the YANG Utils and YMS work previously contributed to enable parsing of the YANG definitions to provide auto-generated Java constructs.

Phase 1: Target ONS 2017 (April, 2017) - Demo 1, Demo 2

Junco

Phase 2: Demo 3 (Multi Vendor Device)

Kingfisher

             “L”

Demos

Demo 1: Single vendor’s device configuration

Demo 2: Single service on single vendor’s device configuration.

Brigade

There is an active brigade around this roadmap item.  See the Dynamic Configuration Brigade wiki page for more details.

Virtualization

Virtualization focuses on enabling the creation of SDN capable virtual networks, allowing them to fully participate in control plane policies with southbound abstractions optimizing application to the physical topology.

Use Cases

  1. Creating virtual SDN networks for tenants

  2. Slicing regions of networks for use by different tenants (M-CORD)

  3. Federation - exposing abstracted view to peer/parent controllers (E-CORD)

Junco

Kingfisher

"L"

Brigade

There is an active brigade around this roadmap item.  See the Virtualization Brigade wiki page for more details.

GUI v2.0

GUI 2.0 will provide enhancements to the WebUI to support enhanced scale and usability via region-based topology views, context sensitive help, and global search.  Additional incremental changes will be made to improve overall user experience.

Junco

Kingfisher

"L"

NOTE: The WebUI is intended to be a tool that provides read-only/limited config feature state/preview, not intended to be at parity with the CLI.

 

Brigade

 There is an active brigade around this roadmap item.  See the GUI Brigade wiki page for more details.

In-Service Software Upgrade

gRPC APIs


Kingfisher


“L” 

Brigade

 There is an active brigade around this roadmap item.  See the gRPC Brigade wiki page for more details. 

Federation

Deployments

The goal of the deployment brigade is to create a concrete stack of software that can be deployed in networks, around the world. The stack would provide Layer 1-3 functionalities, convergence of packet-optical resources, compatibility with the MEF standards for the allocation and management of Layer2 VPNs, compatibility with the NSI framework - commonly used by RENs for multi-domain resource provisioning.


Kingfisher

Brigade

 There is an active brigade around this roadmap item.  See the Deployments Brigade wiki page for more details.

Northbound

Northbound will focus on improving the existing ONOS northbound feature enhancements and bug fixes.


Kingfisher

Brigade

 There is an active brigade around this roadmap item.  See the Northbound Brigade wiki page for more details.

Intent v2.0

Intent 2.0 will focus on enhancing the intent framework to optimize scale and performance, enable conversational style feedback for error resolution on intent install, and add support for domain specific intent definitions and installation.

Build and Package Infrastructure

 

 

Kingfisher

  1. POM obsolescence activity
    1. Deliverable : Fix pending BUCK issues and facilitate developers in migrating their apps from mvn to BUCK.

  1. Research, Design & Implement proof of concept on disaggregation of ONOS code base and assembling using repo

    1. Deliverable : Apps in separate repo ( in incubation mode )

  2. Identify simple freestyle jenkins job and convert to Jenkins pipeline ( pipeline as code )

    1. Deliverable : Nightly build job converted into Jenkins pipeline

  3. Identify , Aggregate information regarding build & release process and kickstart documentation using gitbook

    1. Deliverable : Initial version of GitBook about how to build ONOS using Buck.

Brigade

 There is an active brigade around this roadmap item.  See the Build and Package Infrastructure Brigade wiki page for more details.

Disaggregation of ONOS code-base

NOTE: This is being delivered as part of the charter for the Build and Package Infrastructure brigade.

Teaching

Continually enhance and improve the future of ONOS through education, growth and a skilled knowledgeable community. To that end, we aim at providing and re-organizing open source modular teaching materials in different levels so that it can be used for courses targeted for different types of audience. The brigade will try as well to create evaluation materials and provide certification services in collaboration with ONF and other partners.


Kingfisher

“L”

Brigade

 There is an active brigade around this roadmap item.  See the Teaching Brigade wiki page for more details.

Security and Performance Analysis 

 

Forthcoming actions

Brigade

 There is an active brigade around this roadmap item.  See the Performance and Security Analysis Brigade wiki page for more details. 

Packet Optical

Service Provider Networks are complex and multi-layer in nature. Each of these layers, including packet and optical, is provisioned and managed independently. Sometimes, the provisioning and adding of capacity or new services requires order of days if not months. A converged SDN control plane for packet and optical networks can help address all of these inefficiencies. Service providers can optimize across packet and optical layers in real-time for availability and economics, thereby reducing over-provisioning. They can add capacity based on traffic and other considerations in minutes instead of days or months.

Our goal is to build an open source solution that allows effective multi-layer network programmability using novel abstractions such as intent-based networking and converged topology graphs.

Kingfisher

The Packet Optical team will also be collaborating with the Northbound brigade for an NTT field trial.

OpenStack Integration

The goal of OpenStack integration is to make the existing OpenStack support modules(SONA project) production ready. It would encompass enhancing the existing implementation, adding more features, and improving deployment and operation.

Junco

Kingfisher

"L"

LISP Subsystem Support

The goal of this project is to add Locator/Identifier Separation Protocol (LISP) as a southbound plugin for ONOS controller. 
With this southbound, ONOS can talk with LISP routers, and manage the mapping information of RLOC and EID for all LISP routers.

Kingfisher

"L"

Security Mode ONOS

The goal of this project is to provide access control to restrict application access to the northbound APIs. 

Kingfisher

"L"