...
- The Bouncer xApp demonstrate RIC benchmarking using the E2 simulator communicating with Near-RT RIC platform .
- Bouncer xApp interacts with E2simulator using the Near- RT RIC platform for sending the RIC Subscription Request and receiving Response for the same.
- Bouncer xApp receives the RIC indication and sends the Control Message.
- This communication is stored in a file with timestamp to determine the latency/throughput as part of Performance RIC benchmarking purpose.
Architecture:
Prerequisites:
Near-RT RIC platform setup is required. Link for Near-RT RIC installation.
E2-interface (E2-Simulator) code needs to be deployed.
The Bouncer xApp needs to be deployed and onboarded on the Near RT RIC platform.
Building xApp:
docker build -f Dockerfile -t nexus3.o-ran-sc.org:10004/oran-ric/bouncer_test:1.0.0 .
docker push nexus3.o-ran-sc.org:10004/oran-ric/bouncer_test:1.0.0
Preparing an xApp for onboarding:
Here we are preparing for API calls into the xApp On-Boarder by providing the locations of the xApp descriptors:
Onboarding of xApp:
STEP -1:
echo '{"config-file.json_url": "https://gerrit.o-ran-sc.org/r/gitweb?p=ric-app/bouncer.git;a=blob_plain;f=Bouncer/init/config-file.json;hb=HEAD" }' > onboard.bouncer.url
STEP -2:
curl --location --request POST "http://$(hostname):32080/onboard/api/v1/onboard/download" --header 'Content-Type: application/json' --data-binary "@./onboard.bouncer.url"
To view onboarded charts:
curl --location --request GET "http://$(hostname):32080/onboard/api/v1/charts"
STEP -3: Deploying xApp
Deploy the xApp by invoking the xApp Manager's API.
Note that the names of the xApp to be deployed must match with what the on-boarder has.
Once receiving the deploy API call, the xApp Manager will make API call into Helm/Kubernetes to deploy the xApp's Helm chart.
The Routing Manager is also involved if the xApp needs to process RMR messages, – it will complete the routes and send out route updates.
curl --location --request POST "http://$(hostname):32080/appmgr/ric/v1/xapps" --header 'Content-Type: application/json' --data-raw '{"xappName": "bouncer-xapp"}'
To delete an onboarded xApp:
curl --location --request DELETE "http://$(hostname):32080/appmgr/ric/v1/xapps/bouncer-xapp"