This page describes how to demonstrate the entire flow from Non-Rt RIC Controlpanel Controlpanel -> Policy Agent -> (A1 controller in SDNC) -> Near Realtime Ric Simulator Simulator. Optionally A1 controller can be left out.
Table of Contents
Overview of the End to End call
Details of the architecture can be found from the following link: Release A
...
End to End call from Dashboard to NearRT-RIC simulator
Preparation
See Release A - Build/Run for building and starting the environment
...
Make a call from Open Daylight GUI to Simulator :
- Use browser to http://localhost:8282/apidoc/explorer/index.html#!/NONRT-RIC-API(2019-09-26)
- if password asked, find the related password and username at :
nonrtric/sdnc-a1-controller/oam/installation/sdnc/src/main/scripts/startODL.sh
check the username and passwordODL_ADMIN_USERNAME
ODL_ADMIN_PASSWORD - Make a call in the A1-ADAPTER-API:
check file: nonrtric/sdnc-a1-controller/northbound/nonrt-ric-api/provider/src/main/resources/NearRtRicList.properties
NearRtRic1 = nearRtRic-sim1:8080
NearRtRic2 = nearRtRic-sim2:8080
update value:
"A1-ADAPTER-API:near-rt-ric-id": "NearRtRic1"
For example:
...
.
Either option A or B can be setup and all end to end actions from Dashboard should work same way.
Perform Policy Operations via Dashboard
- Open Dashboard UI at http://localhost:8080/
- Click on Config and the screen below with STD_QosNudging_0.2.0 policy type should open
- Click on '+' icon to create new policy
- Choose your ric (ric1 or ric2) from drop-down menu and provide any arbitrary values for QoS Id, Ue Id and Priority
- Submit the policy (you then need to also press Close to return from creation view)
- An entry to the chosen nearRT-RIC simulator console/log should appear (see, for example, docker logs ric1 in case ric1 policy was created):
172.18.0.3 - - [02/Apr/2020 07:33:57] "PUT /A1-P/v1/policies/ac3e914a-b39c-4d93-b77c-d2ebac756267?policyTypeId=STD_QoSNudging_0.2.0 HTTP/1.1" 201 -
- You may repeat the creation process a few times for different rics - below we see one policy created to ric1 and two to ric2
- Click the pen icon to modify any policy
- Even though the dashboard allows changing any value, the simulator will only accept Priority changes
- Modifications are submitted in the same way as in creation, and the resulting simulator log should also be identical to the one we saw in creation
172.18.0.3 - - [02/Apr/2020 07:51:19] "PUT /A1-P/v1/policies/ac3e914a-b39c-4d93-b77c-d2ebac756267?policyTypeId=STD_QoSNudging_0.2.0 HTTP/1.1" 201 -
- Delete any policy by clicking the red trashcan icon
- Confirm deletion and verify the log on simulator side:
172.18.0.3 - - [02/Apr/2020 08:02:21] "DELETE /A1-P/v1/policies/ac3e914a-b39c-4d93-b77c-d2ebac756267 HTTP/1.1" 204 -
Call from CCSDK A1 Controller to NearRT-RIC simulator
Limited tests to verify just OSC CCSDK A1 Controller calls towards NearRT-RIC simulator can be done by using ODL GUI. Dashboard and policy-agent are not needed in this case.
Preparation
See Release A - Build/Run for building and starting the environment. If following those instructions, just skip the following steps:
Now only "a1-controller-container" and "sdnc_db_container" and simulators are running.
Perform Policy Operations via Open Daylight GUI
- Open GUI: Release A - Build/Run#OpenDaylightGUI
- Click Sub API:
Get policy types
Payload
Code Block | ||||
---|---|---|---|---|
| ||||
{
"A1-ADAPTER-API:input": {
"near-rt-ric-url": "http://ric1:8085/"
}
} |
Create policy
Payload
Code Block | ||||
---|---|---|---|---|
| ||||
{
"A1-ADAPTER-API:input": {
"near-rt-ric-url": "http://ric1:8085/",
"policy-id": "my-policy-instance1",
"policy-type-id": "STD_QoSNudging_0.2.0",
"policy": '{
"scope": {
"qosId": "999",
"ueId": "5001"
},
"statement": {
"priorityLevel": 5
}
}'
}
} |
Get policy instances
Payload
Code Block | ||||
---|---|---|---|---|
| ||||
{
"A1-ADAPTER-API:input": {
"near-rt-ric-url": "http://ric1:8085/"
}
} |