Contributors

­Name

Organization

Email

Jian Li

POSTECH

ON.Lab

gunine@postech.ac.kr

jian@onlab.us

Overview

Control Plane Manager (CPMan) adds management capability to control plane in a way to provide higher availability and reliability for ONOS.

The features of CPMan are comprised of  two parts: 1) control plane monitoring, 2) enhanced mastership management.

  1. Control plane monitoring: CPMan monitors various types of control plane metrics that include control message, system metrics.
    We collect stats information for six types of control message and those are PACKET_IN, PACKET_OUT, FLOW_MOD, FLOW_REMOVED, STATS_REQUEST, STATS_REPLY.
    We also collect stats information for four types of system metrics that include CPU, memory, disk I/O, network I/O.
    Note that the monitoring granularity is 1 minute.
  2. Enhanced mastership management: Work-In-Progress.

Architecture

Control message subsystem

This subsystem is used to aggregate and collect various types of control message from network devices. Followings are the components of the subsystem.

 

Following table shows the mapping between abstracted message type and OpenFlow message type.

Abstracted Message TypeOpenFlow Message Type
INBOUND_PACKETPACKET_IN
OUTBOUND_PACKETPACKET_OUT
FLOW_MOD_PACKETFLOW_MOD
FLOW_REMOVED_PACKETFLOW_REMOVED
REQUEST_PACKETSTATS_REQUEST
REPLY_PACKETSTATS_REPLY

 

Usage

Installation

Before you start, you will need followings:

ONOS, mininet Installation and CPMan Activation

Install and run ONOS instance. The detailed procedures can be refer from here.

To collect control message, we also need to deploy a set of devices and connect to ONOS.

This can be realizable by setting up an OpenFlow network using mininet. 
Mininet installation and configuration can be referred from http://mininet.org/download/

After ONOS and mininet get initialized, we can activate CPMan application.

onos > app activate org.onosproject.cpman 

As long as CPMan is activated, it automatically senses control messages and stores stats. into local RRD.

If you want to collect system metrics (e.g., CPU, memory usages, disk I/O, etc.), please refer to this link.

Command Line Interface (CLI)

 

Web Graphic User Interface (GUI)

 

Terminology

TBD

 

References