Under construction!
This page describes how to run current implementation for the O-DU Slice Assurance usecase.
Standalone script version
The standalone script version of the usecase is implemented in Golang.
It provides a simulator that stub both Dmaap MR and SDNR (orange boxes in the picture below), so both processes can share its data.
Prerequisites
The following need to be installed to run the script according to these instructions:
- Go must be installed, see https://go.dev/doc/install.
- Pull the ran slice assurance usecase repo:
git clone "https://gerrit.o-ran-sc.org/r/nonrtric/rapp/ransliceassurance"
Run using simulators
Run Dmaap MR / SDNR stub
This stub has been coded on Go, similar to the simulator used in O-RU O-DU Closed loop recovery use case previously described. However, this stub simulates both Dmaap VES messages and also SDNC. By default, the stub listens to port 3905, can be changed with the flag "--sdnr-port".
To run the stub, follow the steps below:
- Goto "ransliceassurance/smoversion/stub" in the repo.
- Build the stub, "go build".
- Start the stub, "./stub"
cd ransliceassurance/smoversion/stub go build ./stub [--sdnr-port <portNo>] [--dmaap-port <portNo>] Example: └─ $ ▶ ./sdnr --sdnr-port 3906 Starting DmaapMR stub on port: 3905 Starting SDNR stub on port: 3606
Run O-DU Slice Assurance Rapp
The application takes a number of environment variables for configuration, but only MR_HOST and MR_PORT are required, others are optional. More information can be found in README.md file
cd ransliceassurance/smoversion/ go build
Environment variables can be defined as part of the command line as follow:
Example: └─ $ ▶ MR_HOST=http://localhost MR_PORT=3905 ./oduclosedloop
ICS version
This version of the usecase is implemented as an Information Coordinator Service (ICS) job consumer, and is implemented in Go.
Use case using simulators
There are two simulator that can be used to run this usecase. First, as the standalone version, there is one stub that simulates both received VES messages from Dmaap Adapter with information about performance measurements for the slices in a DU and also simulates SDNR, that sends information about Radio Resource Management Policy Ratio and allows to modify value for RRM Policy Dedicated Ratio from default to higher value, second stub simulates ICS, where job is created with information about the rapp so the Dmaap Adapter can send information to it.
Run Dmaap MR / SDNR stub
To run the stub, follow the steps below:
- Goto "ransliceassurance/icsversion/stub/prodSdnc" in the repo.
- Build the stub, "go build".
- Start the stub, "./prodSdnc"
Run ICS stub
To run the stub, follow the steps below:
- Goto "ransliceassurance/icsversion/stub/ics" in the repo.
- Build the stub, "go build".
- Start the stub, "./ics"
Run O-DU Slice Assurance Rapp
Environment variables can be defined as part of the command line as follow:
Example: └─ $ ▶ CONSUMER_HOST=http://localhost CONSUMER_PORT=3905 ./icsversion
Use case using SMO deployment
For this case, the following components will be needed:
- DU simulator, that will send VES message.
- OAM controller, that will create stream to communicate with VES collector and trigger PM Job event in DU.
- VES Collector, representing the VES (REST) provider at SMO for all kind of events
- ONAP Dmaap, representing SMO DMaaP component, includes message-router
- Dmaap Adapter, that takes information from DMaaP and present it as a coordinated Information Producer
- ICS Information Coordinator Service, that coordinate/Register Information Types, Producers, Consumers, and Jobs.
For starting the OAM Controller and VES Collector, a minimal SMO deployment is needed. This can be started using the instructions from here and ignoring the ONAP-Policy steps. NonRT-RIC should be replaced for docker-compose file located in
ransliceassurance/docker-compose/icsversion