SDN-R Online help
Below are the references for SDN-R User Documentation
Contents
SDN controller for ‘Radio’ (SDN-R)
SDN-R adds features and functionality to the OpenDaylight-based ONAP controller ‘SDN-C’. It is built on the Common Controller Framework to control and manage wireless resources. Wireless resources are virtual network functions (e.g. vBBU, vEPC) or physical network functions (e.g. microwave and millimeter wave radios, eNodeB, RRH, DAS equipment).

SDN-R in ONAP
General functionality
The following functionality is common to all applications.
Table data export
Every table can export its data via the ‘︙’ button. The data, which gets exported is the currently viewed data in the table. As the default pagination is set to 10, only the first 10 rows or filtered rows will be exported. To increase the number of exported rows, change the pagination.
The behavior of the export can vary based on the browser:
Some browsers allow you to save the file with the predefined name export.csv. In case your browser does not offer this function please use the ‘Save as…’ option and define the filename with extension csv.
Some browsers save the file automatically with the alphanumeric name but without an extension. In such a case navigate to the downloaded file location and rename the file. The extension (csv) must be appended to the name. The result should look like ‘export_file.csv’.
Table filters
The following filters are supported by all tables based on the data type of the column.
Data type |
Possible Filter |
Example |
---|---|---|
Text |
Any characters or numbers, matches exactly unless a * or a ? are used. Both special characters act as wildcards, which can be used for contains, ends with and begins with queries. The * matches any number of characters whereas the ? matches exactly one character. Both wildcards can be used in the same query. |
Test, T,st, Te?t, ?est |
Numeric |
< or <= or > or >= or exact number |
>5000, 20, <=82 |
Boolean |
None (no filter set), true or false |
true, false |
Applications
Below are the UX Applications.
Connect
The ‘Connect’ application on OpenDaylight provides up-to-date connectivity information about the wireless devices in the network. It automatically displays new Network Elements and their connection status. Usually, the Network Elements mount themselves. If necessary, they can be mounted manually by right-clicking on the element and selecting the ‘mount’ action. For better understanding of alarms and status, a connection status log lists all the connection status changes of OpenDaylight mount points.
Views
The graphical user interface is divided into two sections.
Network Elements are physical network functions (PNFs). A table view shows all configured and connected NetConf Servers of the SDN-R cluster. This view also allows to manually configure/mount a device via the ‘+’ button. The SDN controller will start connecting to the NetConf server.
Network Elements can be marked as ‘required’. If an element is required, it will stay available even if disconnected. If an element is not required, it will be deleted once disconnected.
By right-clicking on an element, an action menu opens. The menu allows to mount, unmount, view the details, edit and remove the element. Additionally, it links to several applications like Fault and Configure, which will be filtered to display information relevant to the selected element.
The log lists the connection status changes between SDN Controller and NetConf servers (devices).
Fault Management
To operate a network, it is important to get an overview about the currently raised alarms. The application offers basic fault management of devices supporting ONF-TR-532. The alarms are classified according to the severity level (warning, minor, major, critical).
Views
The graphical user interface is separated into three views.
Lists all current active faults in the network. In addition, it also lists alarms sent by the SDN controller itself, which detects connection losses to the NetConf server (connectionLossOAM) or to a device via a mediator to a device (connectionLossNeOAM).
As long as the view is open, all alarm notifications received by the SDN Controller are listed. Please note that refreshing the view will start the collection again. Previous alarm notification can be viewed in the alarm log.
Next to the current active alarms an alarm log lists all alarm notifications of the past.
Implementation
The application has two parts. While the server is listening for NetConf notifications to store them in the database, the client retrieves the information from the database and displays them in a table.
The server synchronizes with the current alarm lists of the devices. Based on raised and cleared notifications, the current alarm status of the network is calculated. The current alarms are stored in a database. In addition, all Problem Notifications received by the SDN controller are stored. There is no logic implemented on the client side.
An alarm status bar in the header of the web application informs the operator about the health status of the network.
The ODLUX web application uses web sockets to update the graphical user interface of the Alarm Notifications (devices) and Connection Status Notifications in real-time.
Contents
Maintenance
The ‘Maintenance’ application on OpenDaylight provides information about planned maintenances of Network Elements, currently or in the future. Users can manage devices to set the maintenance mode so that no unnecessary alarms are created. When the device is in maintenance mode, alarms are not forwarded to DCAE. As soon as the maintenance is finished, the alarms will start flowing again.
The ‘active’ field in the table shows if the Network Element is currently in maintenance mode or not. If it is ‘active’ it means the Network Element is currently undergoing maintenance, if ‘not active’ it means maintenance might have been set for a future date or is already completed.
Users can disable the maintenance mode or change its start and end dates by using the available options in the actions column.
Contents
Configuration
The application shows the actual values of all attributes of the ONF-TR-532 for a selected physical network function (PNF). Each view of a functional element is divided into capabilities, configuration, status, current problem, current performance and history performance information according to TR-532.
A separate window is available for modifying the configuration. All changes made are sent to the device in a single NetConf bulk request. The operator is notified about successfully configuring the device.
Implementation
The application is implemented as ODLUX web application using the RestConf northbound interface of the SDN controller. The key frameworks are: Typescript, React and material-ui.
Connection status information is updated automatically using a web socket for notifications from OpenDaylight to the browser.
Contents
Performance
Performance Monitoring values measured by the devices are necessary to analyze and optimize the network. Therefore the application automatically retrieves all historical performance values from the devices and stores them in a database. The client retrieves the values from the database and displays them in a graphical user interface.
Performance history values
After selecting a connected PNF supporting ONF-TR-532 and a physical interface, the application collects the received and centralized stored performance values for this interface.
The values are visualized using two views: a line chart and a table, with the chart always shown first. To switch between them, toggle buttons can be used. The chart view offers a filter to quickly limit the shown values. To keep both views in sync, the filters of the chart and the table are connected. If one view is filtered, the other one gets updated in the background.
Inventory
The application offers basic inventory management of devices supporting ONF-TR-512 and ietf-hardware.
Views
The inventory application offers two different ways to visualize inventory data.
The view displays the inventory data of the network element – for example, serial-numbers and part-numbers according to the containment of the equipment – as a table. By right-clicking on an entry, the element can be viewed in the treeview.
The treeview visualizes relations between the inventory data of a network element. To load all relations, a ’*’ can be entered in the search-field.
The ‘︙’ button in the upper right corner of the table allows exporting the inventory data as a CSV file.
Only the currently viewed table data is exported. As the default pagination is set to 10, only the first 10 rows or filtered rows would be exported. To increase the number of exported rows change the pagination.
The behavior of the export can vary based on different browsers:
Some browsers allow you to save the file with the predefined name export.csv. In case your browser does not offer this function please use the ‘Save as…’ option and define the filename with extension csv.
Some browsers save the file automatically with the alphanumeric name but without an extension. In such a case navigate to the downloaded file location and rename the file. The extension (csv) must be appended to the name. The result should look like export_file.csv.
Contents
Mediator
Some device vendors (Altiostar, CommScope, Dragonwave-X) use the generic mediator framework. Such mediators offer an API to create, delete, start and stop mediator instances.
New mediator servers can be added via the ‘+’ button. Afterward, a server can be selected to view all available mediator instances.
A mediator instance can be started, stopped and deleted using the available actions. Additionally, its details can be viewed. The ‘+’ button allows the user to add a new instance. During the creation, at least one ‘ODL auto connect’ configuration must be added.
Installation
Below is the installation procedure for SDN-R Images and Configuration parameters
SDN-R WT Service Configuration parameters
ODL is operated as a cluster. The configuration settings must be the same for each cluster node.
Backgrounds regarding the container inter structure is described in SDN-R Docker Image configuration.
The configuration information of sdnr wireless transport parameters are in a single file.
For different devicemanager services, like DeviceMonitor there are individual sections in the configuration file available.
Configuration file location: *$ODL_HOME/etc/devicemanager.properties*
If SDN-R WT is starting
and the file exists, the configuration is used.
if it does not exist it will be created with the default parameters.
Below an example of the content.
Example
[toggleAlarmFilter] taEnabled=true taDelay=3000 [es] esCluster=sdnr esArchiveCheckIntervalSeconds=0 esArchiveLifetimeSeconds=2592000 [dcae] dcaeUrl=off dcaeUserCredentials=admin:admin dcaeHeartbeatPeriodSeconds=120 [aai] aaiUrl=off aaiUserCredentials= aaiHeaders=["X-TransactionId: 9999"] aaiDeleteOnMountpointRemove=false aaiTrustAllCerts=false aaiPropertiesFile= aaiApiVersion=aai/v13 aaiApplicationId=SDNR aaiClientConnectionTimeout=30000 aaiPcks12ClientCertFile= aaiPcks12ClientCertPassphrase= [pm] pmEnabled=true pmCluster=sdnr [devicemonitor] SeverityconnectionLossOAM=Major SeverityconnectionLossMediator=Major SeverityconnectionLossNeOAM=Major
Sections
Configure toggle alarm filter.
taEnabled=true taDelay=3000
Parameter |
Values |
Default |
Unit |
Description |
---|---|---|---|---|
taEnabled |
true, false |
false |
Enable or disable this service |
|
taDelay |
number |
milliseconds |
Integration time to take over the new alarm status |
Configure alarm severity of related alarms, generated by Device Monitor.
SDNC-616 - SDN-R WT app need to change alarm severity “Configurable” for ConnectionLossxxx alarm family (received from Mediator) , when it passed to DCAE VES collector.
Syntax: Parameter=Value
Example: SeverityconnectionLossOAM=Major
Values |
Default |
Unit |
Description |
|
---|---|---|---|---|
SeverityconnectionLossOAM |
NonAlarmed, Warning, Minor, Major, Critical |
Major |
SDN-Controller <> Mediator Mountpoint monitoring. Indicates a not connected mounpoint |
|
SeverityconnectionLossMediator |
NonAlarmed, Warning, Minor, Major, Critical |
Major |
SDN-Controller <> NetworkElement Device monitoring. No LTPs provided |
|
SeverityconnectionLossNeOAM |
NonAlarmed, Warning, Minor, Major, Critical |
Major |
SDN-Controller <> NetworkElement Device monitoring. SSH Connetion, Core model not answering |
SDN-R Docker Image configuration
Introduction
ONAP SDN-R is running in a docker container using ONAP/SDN-C image “onap/sdnc”.
The container is available as Alpine and Ubuntu version. The description uses examples for the Alpine version.
The alpine based sdnc docker imanges are stored in ONAP Nexus sdnc image.
The docker image contains a Opendaylight distribution in a standard configuration and ONAP/SDN-R specific microservices.
The Root location of ODL Karaf directory structure is ODL_HOME=/opt/opendaylight.
During container provisioning the installation of the feature is done, according to the provided configuration setting.
The docker image configuration is done by
Specific Environment variables settings
Files that are provided
Container startup parameters
The SDN-R specific configurations are provided during container start.
Different SDN-R services are using different parameter to be installed.
Parameter |
Content |
Description |
---|---|---|
SDNRWT |
true|false |
Set true to activate sdnr wt featureset. Set this during container start. Devicemanager configuration is provided via $ODL_HOME/etc/devicemanager.properties |
SDNRNORTHBOUND |
true|false |
Set true to activate sdnr oofpci service. |
Contents
Frequently asked questions
Which browser should I use to operate Opendaylight SDN-R User interface?
An actual version of Google Chromium or Google Chrome is recommended.
How to enable detailed logs in karaf for SDN-R applications
If you like to see more details in karaf logs for the NetConf communication between ODL and NetConf servers (mediators/devices) please invoke the following commands in the karaf console.
# Logging settings (on)
log:set DEBUG org.opendaylight.mwtn
log:set TRACE org.opendaylight.netconf
log:set TRACE com.highstreet.technologies.odl.app
Please note, setting the debug level to ‘TRACE’ may impact the performance on the controller. In production environment make sure to set back the debug level to ‘INFO’ as soon possible.
# Logging settings (off)
log:set INFO org.opendaylight.mwtn
log:set INFO org.opendaylight.netconf
log:set INFO com.highstreet.technologies.odl.app
Which commands should be used to analyse karaf logs?
cd $ODL_KARAF_HOME/data/log
rm *.txt
grep -anr --include=*.log* "| ERROR |" . | grep 2018 >> 01-error.txt
grep -anr --include=*.log* "RemoteDevice{" . | grep 2018 >> 02-devices.txt
grep -anr --include=*.log* "RemoteDevice{" . | grep "Unable to build schema context, unsatisfied imports" | grep 2018 >> 03-schema-issue.txt
grep -anr --include=*.log* "Matched request:" . | grep 2018 >> 04-matched-request.txt
grep -anr --include=*.log* "network-element" . | grep 2018 >> 05-network-element.txt
grep -anr --include=*.log* "urn:onf:params:xml:ns:yang:core-model" . | grep 2018 >> 06-core-module.txt
grep -anr --include=*.log* "PerformanceManagerTask" . | grep 2018 >> 07-pm-tick.txt
grep -anr --include=*.log* "Unable to read NE data for mountpoint" . | grep 2018 >> 08-unable-to-read.txt
grep -anr --include=*.log* "LKCYFL79Q01M01MSS801" . | grep 2018 >> 09-LKCYFL79Q01M01MSS801.txt
How to report an odlux issue
If you would like to report an odlux issue which you have noticed in the Graphical User Interface, please provide the following information:
Description: In which application you have noticed the issue?
Environment:
Which browser is used and the version of the browser. eg: Google chrome - version 71.0.3578.80 / Mozilla Firefox.
Which Operating system and version. eg: Linux/ Windows 10 - version 1803.
In which language you are using the application.
The application URL which is available on the browser address bar. eg: http://hostname/odlux/index.html#/connectApp
Expected Result: What is the expected result you are looking for?
Actual Result: What is the actual result you got?
Steps to reproduce: Describe the steps to reproduce the scenario. If possible, please provide the screenshots
The above information helps us to analyze the problem quicker.
Contents
Abbreviations
Abbreviation |
Description |
---|---|
AAF |
|
A&AI |
|
AAA |
|
AID |
Architecture Integration Document |
APPC |
|
BPEL |
Business Process Execution Language |
BPMN |
Business Process Model and Notation or Business Process Management Notation |
BRMS |
Business Rules Management System |
BSS |
Business Support System |
CCSDK |
Common Controller SDK project |
CDAP |
|
CDS |
Controller Design Studio |
CI/CD |
Continuous Integration / Continuous Delivery |
CL |
Control Loop |
CLAMP |
Closed Loop Automation Management Platform (project) |
CLI |
|
CMA |
Change Management Application (within ONAP) |
CNF |
Cloud Native network Function. |
COE |
Container Orchestration Engine |
CPE |
Customer Premise Equipment |
CSAR |
|
DAO |
|
DCAE |
|
DDoS |
Distributed Denial-of-Service attack |
DG |
Directed Graph |
DG Builder |
Directed Graph Builder |
DMaaP |
|
DME |
|
DNS |
Domain Name System |
DPDK |
Data Plane Development Kit |
EELF |
|
EMS |
|
ESR |
|
ETSI |
|
EUAG |
|
FCAPS |
Fault Configuration Accounting Performance Security |
GBP |
|
GNFC |
|
GUI |
|
HAS |
|
HDFS |
Hadoop Distributed File System |
HPA |
Hardware Platform Awareness |
HTTP |
HyperText Transfer Protococol |
HV VES |
|
IAM/IDAM |
Identity and Access Management |
ICE |
Incubation and Certification Environment |
IDS |
|
IETF |
|
IKE |
|
IPS |
|
IPSEC |
|
JAR |
|
JSC |
|
JSON |
JavaScript Object Notation |
LCM |
Life Cycle Management |
LFN CVC |
Linux Foundation Networking Compliance/Verification Committee |
LFN CVP |
|
LRM |
Local Resource Monitor |
M0 |
Release Kick-off milestone. See also Release Lifecycle |
M1 |
Release Planning milestone. See also Release Lifecycle |
M2 |
Release Functionality Freeze milestone. See also Release Lifecycle |
M3 |
Release API Freeze milestone. See also Release Lifecycle |
M4 |
Release Code Freeze milestone. See also Release Lifecycle |
MACD |
(Vendor specific) Move Add Change Delete/Disconnect |
MANO |
MANagement and Organization of NFV |
MD-SAL |
Model Driven Service Abstraction Layer |
MR |
Message Router (a Common Service of ONAP) |
MOP |
Method of Procedure |
MOTS |
Mechanized Operations Tracking System |
MSB |
Microservice Bus |
MSO |
|
MVP |
|
NAI |
Network Artificial Intelligence |
NANCSP |
Network Cloud Service Provider |
NBI |
North Bound Interface |
NEP |
Network Equipment Provider |
NETCONF |
|
NFV |
|
NFVI |
|
NOD |
Network On Demand |
NS |
Network Services |
NS |
(Vendor Specific) New Start |
O-RAN |
O-RAN Alliance, Operator Defined Next Generation Radio Access Networks Alliance |
O-RAN-SC |
|
OAM |
Operation and Maintenance |
OA&M |
Operations, Administration and Management |
OMF |
Operational Management Framework (of ONAP) |
OMSA |
ONAP Microservice Architecture |
ONAP |
|
OOF |
ONAP Optimization Framework |
ODL |
|
OOM |
|
OPNFV |
|
OSAM |
|
OSC |
O-RAN Software Community or Optical Supervisory Channel |
OSS |
Operations Support System |
PAP |
Policy Administration Point (ONAP) |
PCE |
Path Computation and Element (ONAP) |
PCI |
Physical Cell ID |
pCPE |
physical Customer Premise Equipment |
PDP-x |
Policy Decision Point - XACML (ONAP) |
PDP-d |
Policy Decision Point - Drools (ONAP) |
PO |
Platform Orchestrator |
PoC |
Proof of Concept |
POMBA |
|
PNDA |
|
PNF |
Physical Network Function |
RCA |
Root Cause Analysis |
RCT |
Reference Connection Tool |
REST |
|
RESTCONF |
A protocol based on HTTP for configuring data defined in YANG |
RO |
Resource Orchestrator |
RPC |
Remote Procedure Call |
S3P |
|
SDC |
Service Design and Creation (component of ONAP for visual modeling and design) |
SDN |
|
SDN-C |
|
SDN-R |
SDN-Radio <https://wiki.onap.org/display/DW/SDN-R> __ |
SDN-GP |
Software Defined Network - Global Platform |
SEBA |
SDN-Enabled Broadband Access, see also |
SLA |
Service Level Agreement |
SLI |
Service Logic Interpreter |
SME |
Subject Matter Expert |
SMTP |
Simple Mail Transfer Protocol |
SNMP |
Simple Network Management Protocol |
SO |
|
SOT |
Source Of Truth |
SR-IOV |
|
SSL |
|
SUPP |
(Vendor Specific) short for supplement, changing a connection before activation |
Swagger |
legacy name for the OpenAPI Specification |
TCP |
Transmission Control Protocol |
TEM |
Telecom Electronics Manufacturer |
TLS |
|
TOSCA |
Topology and Orchestration Specification for Cloud Applications |
TPS |
Transactions Per Second |
TSC |
Technical Steering Committee |
U-UI |
|
UI |
|
UX |
|
vCE |
virtual CE (Customer Edge) router (an example VNF) |
vCPE |
Virtual Customer Premise Equipment |
vDNS |
Virtual Domain Name Server (an example VNF) |
VDU |
|
VES |
|
vF |
Virtual Firewall (an example VNF) |
VF |
Virtual Function |
VFC |
|
VFC |
Virtual Function Component (Resource Onboarding) |
vfModule |
Virtual Function Module |
VID |
Virtual Instantiation Deployment |
VID |
|
VIM |
Virtualized Infrastructure Manager |
VLAN |
Virtual Local Area Network |
VM |
Virtual Machine |
VNF |
|
VNFC |
Virtual Network Function Component |
VNFD |
|
VNFM |
VNF Manager |
VNO |
Virtual Network Operator |
vPE |
virtual PE (Provider Edge) router (an example of a VNF) |
VPP |
|
VSP |
Vendor Software Product (from SDC Demo Guide) |
VTP |
|
VVP |
|
WAR |
|
xNF |
The combination of PNF and VNF; Network Function |
YANG |
Yet Another Next Generation - a Data Modeling Language for the Network Configuration Protocol (NETCONF) |