Service Function Chaining Driver for Open Network Operating System

Blueprint Link

This spec implements a OpenStack networking-sfc driver for Open Network Operating System (ONOS).

Problem Statement

This specification introduces an networking-sfc driver for ONOS controller. ONOS controller exposes NBI interfaces which allows users to configure and control network infrastructure layer using ONOS controller applications, In networking-sfc we already having well defined APIs which can push SFC APIs to ONOS NBI to realize service function chaining(SFC) functionalities by defining specific Ml2 mechanism driver(onos_ml2).

Proposed Change

This spec implements ONOS driver for networking-sfc to forwards the API rest calls to ONOS NBIs which is further handled by ONOS application to generate and download flow rules to the underlying OVS networking datapath to realize service function chaining (SFC) functionalities.

Detailed Design

To relaize SFC using ONOS requires specific ONOS controller applications to receive REST API calls from Openstack and handle them. ONOS SFC driver will act as a shim layer between OpenStack and ONOS. This shim layer makes the communication between ONOS and networking-sfc possible via ReST calls.:

                      +------------+        +------------+                    +-------------+
                      |            |        |            |                    |             |
                      |            |        |            |                    |             |
                      | Openstack  |        | ONOS SFC   | REST Communication |             |
networking-sfc API----+ Neutron    +--------+ Mechanism  +--------------------+  ONOS NBI   |
                      | ML2        |        | Driver     |                    |  for SFC    |
                      | Plugin     |        |            |                    |             |
                      |            |        |            |                    |             |
                      +------------+        +------------+                    +-------------+

ONOS NBI will forwards the REST API calls to ONOS application (VTN) which will prepare and downloads forwarding behaviour (flow_rules) to all the OVS along the service chain path. A port chain specifies which port pair group and flow classifier to use for the chain.

Please refer sfc driver and flowclassifier for specific driver usage guidelines.

Impact

None

Assignee(s)

Work Items

  1. Add driver ‘networking-sfc’ for ONOS.
  2. Add applicable unit tests.
  3. Integrate with networking-sfc port-chain.