Work in progress

Overview

This page describes the details of metro path provisioner: functions of the module, internal structure, and how to use the module.  If you only need to try the module, read “How to use” section first.

Functions

Main functions of metro path provisioner are listed below.

How it works

Architecture

Package of metro path provisioner is org.onosproject.ecord.metro.  Following shows the file composition of metro path provisioner.

    ecord
    └── metro
        ├── MetroPathProvisioner.java
        ├── MetroConnectivity.java
        ├── PacketLinkRealizedByOptical.java
        ├── CeVlanConfig.java
        ├── api
        │   ├── MetroPathService.java
        │   ├── MetroConnectivityId.java
        │   ├── MetroPathListener.java
        │   └── MetroPathEvent.java
        └── cli
            ├── AddMetroConnectivityCommand.java
            └── RemoveMetroConnectivityCommand.java

Path setup flow

  1. Receive metro connectivity request

  2. Calculate path

    1. Considering available bandwidth

  3. Reserve bandwidth along the path

  4. Find optical cross connect points in the path

  5. Create and install OpticalConnectivityIntent/OpticalCircuitIntent

  6. Get notified all of intents installed

  7. Notify listeners that path is established

Path removal flow

  1. Receive metro connectivity removal request

  2. Find existing metro connectivity

  3. Remove related optical intents

  4. Get notified all of intents removed

  5. Remove bandwidth allocations

  6. Notify listeners that path is withdrawn

How to use

 Before proceeding to the following steps, see “wiki: Installing and Running ONOS” and “” for make it ready to run ONOS.

  1. Pull source

  1. Build package

  2. Configure the VLAN assignment

  3. Run ONOS

  4. Install package

  5. Connect devices

  6. GUI

  7. CUI