X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=docs%2Frequirements.rst;h=471cf898de8ce72070a9db911dd2a2547f95f907;hb=HEAD;hp=9fe6d3772fb8b90544c115324ffc88d0832a3bd2;hpb=ea715211fab899b1fbe71e981b313ef6de71fa5a;p=nonrtric.git diff --git a/docs/requirements.rst b/docs/requirements.rst index 9fe6d377..471cf898 100644 --- a/docs/requirements.rst +++ b/docs/requirements.rst @@ -9,24 +9,40 @@ 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: +The NONRTRIC project (and the O-RAN Non-RealTime RIC function) can be considered from a number of different viewpoints. This page presents some of these views: -#. 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. +**Scope 1: A1 Controller (Mediator, Endpoint)** -The non-functional requirements are the following ones: +* Southbound: Provide termination point for A1 interface(s) - REST endpoint for messages to/from Near-RealTime RIC +* Northbound: Provide a more generic interface for A1 operations - provide interface to rApps, without the need for A1 message generation, addressing, coordination, mediation, etc. +* O1 interfaces do not terminate in NONRTRIC function (but may terminate in same controller host/instance) -#. 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. +**Scope 2: Coordinate/Host A1 Policy Management Services** -Moreover, there are functional requirements regarding the A1 interface: +* Map high level RAN goal/intent directives to finely-scoped A1 Policies towards individual Near-RT RIC instances +* Informed by observed RAN context (provided over O1 via OAM functions), and other external context (via other SMO functions) +* Dynamically coordinate life cycles of A1 Policies in individual Near-RT RICs as contexts change -#. 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. +**Scope 3: Coordinate ML/AI Models - In RAN (“E2 nodes” & Near-RT RICs) and NONRTRIC (future)** + +* Acts as model-training host +* May act as model-inference host (others: Near-RT RICs, “E2 nodes”) +* Dynamically coordinate ML/AI model lifecycle management (e.g. re-train, re-deploy, etc) +* Models are (always?) deployed over O1 interface + +**Scope 4: Enrichment Data Coordinator** + +* Additional context that is unavailable to Near-RT RICs (e.g. RAN data, SMO context, External context) +* Dynamically coordinate access and pass data to appropriate Near-RT RICs (e.g. for use in ML/AI model inference) + +**Scope 5: rApp Host & rApp Coordinator** + +* rApps may act as, or form part of, NONRTRIC- or SMO-level applications +* rApps, via rApp host function, may consume many other services - some from the NONRTRIC platform, some from the SMO platform, and some from other rApps +* Dynamically coordinate rApp lifecycle management + +**Scope 6: Provide R1 interface for rApps** + +* rApps may only consume services over the R1 interface (from NONRTRIC platform, or from SMO platform, or from other rApps) +* Platform services and services optionally provided by rApps must be exposed over the R1 Interface +* These services may be "standardized" R1 services or R1 extensions (some may be proprietary)