Tutorials at ONF Connect

Tuesday, September 10

9 AM – 5 PM
Tutorials will introduce and help developers gain hands-on experience with:

Next-Gen SDN (Stratum/ONOS/P4/P4Runtime) Broadband Access (SEBA/VOLTHA) 5G & Mobile (COMAC/OMEC)

These tutorials are geared towards architects, developers, network engineers, product managers, and anyone interested in getting up-to-speed on open source technologies transforming operator networks.

Tutorials will run in parallel and you are required to select a specific tutorial to attend during the registration process. 

Space is limited. Register today to reserve your seat.

Tutorial Descriptions

Next-Gen SDN

Next-Gen SDN is delivering fine-grained network programmability with zero touch configuration and management, enabling operators’ complete control of their networks. Leveraging P4, P4Runtime, OpenConfig/gNMI and gNOI, NG-SDN is now truly delivering on the ‘software defined’ promise of SDN for future transformation, new applications and unprecedented levels of new value creation.

This tutorial is an opportunity for architects and engineers to learn the basics and to practically experiment with some of the building blocks of the NG-SDN architecture, such as:

  • P4 language
  • Stratum (P4Runtime, OpenConfig over gNMI, gNOI)
  • ONOS

The goal of the tutorial is to answer questions such as:

  • What is P4 and how do I use it?
  • How do I go from a P4 program to a complete network solution?
  • What is Stratum and how can I use its interfaces to control packet forwarding, configure ports, or push software upgrades to my network devices?
  • How can I use ONOS to write control-plane apps for my P4 program?

It is organized around a sequence of introductory presentations, as well as hands-on exercises that show how to build a leaf-spine data center fabric from scratch based on IPv6 using P4 and ONOS.

The tutorial will include an introduction to the P4 language, Stratum, and ONOS. Participants will be provided with starter P4 code and an ONOS app implementation, along with instructions to run a Mininet-emulated leaf-spine topology of Stratum-enabled software switches. Only basic programming and networking knowledge is required to complete the hands-on exercises. Knowledge of Java and Python will be helpful to understand some of the starter code.


SEBA is an open source platform that virtualizes broadband networks. By extracting and ‘cloudifying’ the majority of functions that traditionally ran in complicated chassis-based PON systems, operators can leverage (and intermix) white-box single rack-unit PON systems from various vendors while running common control software. This optimizes capex and opex spend, and creates a deployment model that has been embraced by leading operators.

The SEBA tutorial is for everyone – architects, developers, engineers, PMs, TMEs, QA, CTOs, curious onlookers, everyone – who are new to SEBA and want a tutorial-style introduction to the SEBA pod, its various components, how they integrate and interact. It is organized around a series of alternating presentations from SEBA experts, and interactive exercises using a fully featured SEBA pod deployed in a VM, aka SEBA-in-a-Box (SiaB).

A large portion of the tutorial will focus on answering the topics below:

  • How is the SEBA profile launched on the CORD platform with Kubernetes and Helm charts?
  • What is VOLTHA and how is it presenting an abstraction of the PON?
  • What do the apps written on the SDN controller (ONOS) do?
  • What are the collections of containers that make up NEM?
  • How are operator workflows implemented in XOS, and what are its internal models and services?
  • How are multiple OLTs aggregated by the AGG switch?
  • How is SEBA doing monitoring, telemetry and FCAPS with ELK stack, Prometheus and Grafana?
  • How do we test functionality end-to-end? How do we test system scale?
  • How do we troubleshoot the system?

Once these topics are covered, late afternoon session will be geared towards developers and will be organized around hands-on exercises that demonstrate a developer workflow when working with SEBA. Instead of focusing on the development of an ONOS app, an XOS service, or a VOLTHA adaptor, we will instead focus on the developer workflow when working in a system such as SEBA which has multiple moving parts. The goal is to answer the question “I have made a change in XXX, now how do I easily try it out in the SEBA pod?”

Mobile & 5G

5G is one of the biggest transformation of operators’ networks and services. This tutorial is for everyone who is interested in gaining insights into the next-generation mobile projects:

COMAC (Converged Multi-Access and Core) – Deliver next-generation services over both mobile and broadband networks to seamlessly support subscriber management and consistent service experience regardless of access technology.

In the COMAC portion of tutorial you will learn about:

  • Access & Core
  • Disaggregation & Virtualization
  • Programmable SDN
  • Coexistence
  • Convergence
  • Role of P4
  • COMAC Edge

Second part of the tutorial will focus on OMEC – Open Mobile Evolved Core (OMEC) is intended to become an open source production grade Evolved Packet Core (EPC).
It is built using an NFV (Network Function Virtualization) architecture and includes all of the areas below which will be covered in the tutorial:

  • Complete connectivity, billing and charging capabilities
  • 3GPP Release 13 compatibility (more on this in a bit)
  • Support for large numbers of subscribers with a high performance DPDK based data plane
  • Optimization for lightweight cost effective deployments and IoT applications
  • Integrated CI/CD test and verification capabilities