| .. This work is licensed under a Creative Commons Attribution 4.0 International License. |
| .. SPDX-License-Identifier: CC-BY-4.0 |
| |
| |
| Requirements for the Non-RT RIC project |
| ========================================== |
| |
| Find detailed description of what Non-RT RIC is on this `page`_. |
| |
| .. _page: https://wiki.o-ran-sc.org/display/RICNR/ |
| |
| There are functional requirements emitted by O-RAN WG2 for the Non-RT RIC, which are the following: |
| |
| #. Non-RT RIC shall support data retrieval and analysis; the data may include performance, configuration or other data related to the application (recommended data shown in required data section for different use cases). |
| #. Non-RT RIC shall support relevant AI/ML model training based on the data in 1. for non-real-time optimization of configuration parameters in RAN or Near-RT RIC, as applicable for the use case. |
| #. Non-RT RIC shall support relevant AI/ML model training based on the data in 1. for generating/optimizing policies and intents to guide the behavior of applications in Near-RT RIC or RAN, as applicable for the use case. |
| #. Non-RT RIC shall support training of relevant AI/ML models based on the data in 1. to be deployed/updated in Near-RT RIC as required by the applications. |
| #. Non-RT RIC shall support performance monitoring and evaluation. |
| #. Non-RT RIC shall support a fallback mechanism to prevent drastic degradation/fluctuation of performance, e.g. to restore to the previous policy or configuration. |
| |
| The non-functional requirements are the following ones: |
| |
| #. Non-RT RIC shall not update the same policy or configuration parameter for a given near-RT RIC or RAN function more often than once per second. |
| #. Non-RT RIC shall be able to update policies in several near-RT RICs. |
| |
| Moreover, there are functional requirements regarding the A1 interface: |
| |
| #. A1 interface shall support communication of policies/intents from Non-RT RIC to Near-RT RIC. |
| #. A1 interface shall support AI/ML model deployment and update from Non-RT RIC to Near-RT RIC. |
| #. A1 interface shall support communication of enrichment information from Non-RT RIC to Near-RT RIC. |
| #. A1 interface shall support feedback from Near-RT RIC for monitoring AI/ML model performance. |
| #. A1 interface shall support the policy/intents feedback from Near-RT RIC to Non-RT RIC. |
| |
| A1 policy procedure |
| ------------------- |
| |
| As for A-release, the methods are as follows: |
| |
| +---------------------+--------------------------+--------------------------+ |
| | A1 policy procedure | Single policy method | Multiple policies method | |
| +---------------------+--------------------------+--------------------------+ |
| | Create policy | PUT | | |
| +---------------------+--------------------------+--------------------------+ |
| | Query policy | GET | GET (sequence of \*) | |
| +---------------------+--------------------------+--------------------------+ |
| | Update policy | PUT | | |
| +---------------------+--------------------------+--------------------------+ |
| | Delete policy | DELETE | | |
| +---------------------+--------------------------+--------------------------+ |
| | Notify policy | POST | POST | |
| +---------------------+--------------------------+--------------------------+ |
| |
| Policy Agent Overview |
| ======================= |
| |
| The Policy Agent maintains a transient ropository of the following items to support R-Apps: |
| |
| * All NearRT RICs in the network. This information is configured using the ONAP CDS database (which is using the Cloudify Consul database). |
| * All Policy types for all NearRT RICs |
| * All configured Policy instances in the network |
| |
| It provides an NBI for the R-Apps (and for the dashboard) for policy management. This is a REST API. |
| As an option, policy management can also be done via asynchronous messages through ONAP/Dmaap. |
| The NBI provides support for an R-APP to locate the correct NearRT RIC based on identifiers as defined in O1. |
| |
| The agent monitors all Near-RT RICs and recovers from data inconsistencies, which may happen when (for instance) an Near-RT RIC restarts. |
| |
| The R-Apps can be monitored so that their Policies can be automatically removed when an R-App is stopped/removed. |
| |
| On its southbound side the agent can connect to a number of different A1 providers: |
| |
| * Directly to the NonRT RIC: |
| |
| - OSC API, which is influenced by the A1 standard |
| - The NonRT RIC simulator, which supports the A1 standard with a number of not yet CRs included. |
| * To an ONAP style controller. |
| |
| Amber release Policy Agent architecture |
| ----------------------------------------- |
| |
| .. image:: ./images/NonRtRicComponents.png |
| :scale: 50 % |
| |
| NonRT RIC components: |
| |
| #. Non-RT RIC Dashboard |
| #. Policy agent |
| #. SDNC A1 Controller |
| #. Near-RT RIC Simulator |
| |
| Dashboard Overview |
| =================== |
| |
| The NonRT RIC Dashboard is a graphical user user interface that enables the user to manage the Policies in the network. The dashboard interacts with the Policy agent via a REST API. |
| The dashboard generates its GUI from JSON schemas in a model driven fashion. |
| |
| The dashboards consists of a back end implemented as a Java Springboot application and a fronted developed using the Angular framework. |
| |
| Amber release Dashboard architecture |
| ----------------------------------------- |
| |
| The architecture of the dashboardis as shown on the following picture: |
| |
| .. image:: ./images/architecture.png |
| :scale: 50 % |
| |
| The dashboard itself is split |
| into the backend and the frontend, and can be deployed following the instructions in the README.md file in the repo. |