commit | 63ff995daf122c43de445bb63fd32bf9e0dc2763 | [log] [tgz] |
---|---|---|
author | Anssi Mannila <anssi.mannila@nokia.com> | Tue Mar 17 09:57:46 2020 +0200 |
committer | Anssi Mannila <anssi.mannila@nokia.com> | Tue Mar 24 07:55:05 2020 +0200 |
tree | 76fc00d9f0270f05e0bc80f63ae8157e4468ceba | |
parent | d2ee0c717237a826350c0080ae02ab586bb6e614 [diff] |
FCA_RIC-434 Add support for Submgr's C-codes with ORAN E2SM-gNB-NRT spec FCA_RIC-435 Add support for Submgr's GO-codes with ORAN E2SM-gNB-NRT spec Change-Id: Ieb72c32e8a82aaa9d6feab4be27da8fdbdff9c02 Signed-off-by: Anssi Mannila <anssi.mannila@nokia.com>
Subscription Manager is a basic platform service of RIC. It is responsible to serve, coordinate and manage xApps' subscriptions.
Submgr acts as an anchor point for subscription related internal messaging, i.e. every xApp sends its subscription related messages to Submgr. Submgr invokes Routing Manager (Rtmgr) to create or tear down the subscription related routes, and the appropriate E2 Termination to signal the subscription related event also towards the RAN.
The solution base on the xapp-frame project which provides the common HttpREST, RMR and SDL interfaces.
Current implementation provides the following functionalities:
Check the separated RELNOTES
file.
Enter the project root and execute docker build -t submgr:tag .
. The Dockerfile has two main phases. First is the code compilation, where it creates an intermediate container for downloading all dependencies then compiles the code. In the second phase it builds the production ready container.
NOTE: If you are behind proxy, see this guide: https://docs.docker.com/network/proxy/#configure-the-docker-client
Tag the submgr
container according to the project release and push it to a registry accessible from all minions of the Kubernetes cluster. Edit the container image section of submgr-dep.yaml
file and set the submgr
image tag accordingly.
Issue the kubectl create -f {manifest.yaml}
command in the following order
manifests/namespace.yaml
: creates the example
namespace for routing-manager resourcesmanifests/submgr/submgr-dep.yaml
: instantiates the submgr
deployment in the example
namespacemanifests/submgr/submgr-svc.yaml
: creates the submgr
service in example
namespaceSubscription Manager's behaviour can be tested using the provided stub xApp (called RCO) and the stub E2 Termination (called E2T) on the following way.
./test/dbaas
folder and issue kubectl apply -f ./manifests
./test/e2t/
folder and run build.sh
. After docker image successfully built, issue kubectl apply -f ./manifests
./test/rco/
folder and run build.sh
. After docker image successfully built, issue kubectl apply -f ./manifests
Sunny Day testing scenario:
Rainy Day testing scenarios:
Wrong/Malformed Request
Wrong/Malformed Response
NOTES:
ricRequestSequenceNumber
in it and pass it between the components. The message presented as a hex dump which is inprinted in the code. Use the RCO_RAWDATA
and E2T_RAWDATA
environment variables in the pod manifest to override the default skeleton messages.RCO_SEED_SN
environment variable in the pod manifest to override this number.Basic configuration file provided in ./config/
folder. Consult xapp-frame project documentation for custom configuration settings. SUBMGR_SEED_SN
environment variable is defined in the pod manifest and used to control the initial value of the Subscription Sequence Number. If this environment variable is undefied, SUBMGR choses a random number from the range of 0-65535
[] Unit tests
[] Full RTMGR integration
[] Jaeger tracing support
[] Generate ASN1-C code in build time
[] Full RTMGR integration
[] Jaeger tracing support
[] Rainy Day scenarios
This project is licensed under the Apache License, Version 2.0 - see the LICENSE