Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The xApp descriptor follows a JSON structure. The following are the key sections that defines an xApp.

  • xapp_name: (REQUIRED) this is the unique identifier to address an xApp. A valid xApp descriptor must includes the xapp\_name attribute. The following is an example.

    Code Block
    "xapp_name": "example_xapp"


  • version: (REQUIRED) this is the semantic version number of the xApp descriptor. It defines the version numbers of the xApp artifacts (e.g., xApp helm charts) that will be generated from the xApp descriptor. Together with the xapp\_name, they defines the unique identifier of an xApp artifact that can be on-boarded, distributed and deployed. The following is an example.

    Code Block
    "version": "1.0.0"


  • containers: (REQUIRED) This section defines a list of containers that the xApp will run. For each container, a structure that defines the container name, image registry, image name, image tag, the command that it runs, and container http and rmr service ports are required. The following is an example that defines two containers.

    Code Block
    "containers": [
        {
            "name": "example_container_1",
            "image": {
                "registry": "example_image_registry_1",
                "name": "example_image_name_1",
                "tag": "example_image_tag_1"
            },
            "command": "example_command_1",
            "ports":{
                "http": 8080,
                "rmr_data": 4560,
                "rmr_route": 4561
            }
        },
        {
            "name": "example_container_2",
            "image": {
                "registry": "example_image_registry_2",
                "name": "example_image_name_2",
                "tag": "example_image_tag_2"
            },
            "command": "example_command_2",
            "ports":{
                "http": 8080,
                "rmr_data": 4560,
                "rmr_route": 4561
            }
        }
    ]


  • controls: The control section holds the configuration data that are visible to the external network management systems (NMS) and can be configured via Portal or SMO through CM O1 interface. The initial configuration of xApp is defined in the xApp descriptor and created during xApp deployment. Therefore, the configuration can only be uploaded and modified via Portal or SMO. The following is an example.

    Code Block
        "controls": {
            "active": True,
            "requestorId": 66,
            "ranFunctionId": 1,
            "ricActionId": 0,
            "interfaceId": {
                "globalENBId": {
                    "plmnId": "310150",
                    "eNBId": 202251
                }
            }
        }


  • metrics: The metrics section of the xApp descriptor holds information about metrics provided by the xApp. These information include the \textit{name}, \textit{type} and \textit{description} of each counter. The metrics section is required by VESPA manager (RIC platform component) and the actual metrics data are exposed to external servers via Prometheus/VESPA interface. The following is an example.

    Code Block
        "metrics": [
            {
                "objectName": "UEEventStreamingCounters",
                "objectInstance": "SgNBAdditionRequest",
                "name": "SgNBAdditionRequest",
                "type": "counter",
                "description": "The total number of SG addition request events processed"
            },
            {
                "objectName": "UEEventStreamingCounters",
                "objectInstance": "SgNBAdditionRequestAcknowledge",
                "name": "SgNBAdditionRequestAcknowledge",
                "type": "counter",
                "description": "The total number of SG addition request acknowledge events processed"
            }
        ]


  • RMR messaging: This section defines parameters for RMR and list the message types that are sent and received by this xApp, and the A1 policies implemented by this xApp.

...