+
+E2AP Functionality
+------------------
+
+O-DU High communicates with Near RT RIC on the E2 interface using various Global Procedures and Near-RT RIC Functional Procedures.
+The implementation of these procedures are strictly compliant to O-RAN.WG3.E2GAP-R003-v03.00, O-RAN.WG3.E2AP-R003-v03.00.
+
+ODU-High supports E2 Service Model-Key Performance Measurement, compliant to O-RAN.WG3.E2SM-KPM-R003-v03.00.
+Following KPIs are implemented in ODU-High as part of E2SM-KPM. These comply with 3GPP 28.552 v15.6.0 section 5.1.1.2 Radio resource utilization.
+
++--------------------------------+-----------+-----------------------------------------+
+| KPI | Section | Remark |
++================================+===========+=========================================+
+|DL Total PRB Usage(RRU.PrbTotDl)| 5.1.1.2.1 | Calulates the total usage of PRBs on DL |
++--------------------------------+-----------+-----------------------------------------+
+|UL Total PRB Usage(RRU.PrbTotUl)| 5.1.1.2.2 | Calulates the total usage of PRBs on UL |
++--------------------------------+-----------+-----------------------------------------+
+
+E2 API Flow Triggered in ODU-High's stub-based test framework
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+This section describes the E2AP messages triggered when executing O-DU High in stub-based test framework.
+
+
+.. figure:: E2AP_Flow_Triggered_In_Code.PNG
+ :width: 600
+ :alt: E2AP Flow Triggered In Code
+
+ Figure 16 - E2AP Flow Triggered In Code
+
+E2AP Procedures Supported in ODU-High
+++++++++++++++++++++++++++++++++++++++
+
+This section contains flow diagrams for E2AP procedures that may/may not be triggered in ODU-High, however the code supports its working as per O-RAN WG3 E2 specifications.
+
+
+E2 Setup Procedure
+^^^^^^^^^^^^^^^^^^
+
+
+This section describes the E2 Setup Procedure within O-DU High and Near-RT RIC.
+
+
+.. figure:: E2_Setup_Procedure.PNG
+ :width: 600
+ :alt: E2 Setup Procedure
+
+ Figure 17 - E2 Setup Procedure
+
+E2 Node Configuration Update Procedure
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+This section describes the E2 Node Configuration Procedure within O-DU High and Near-RT RIC.
+
+.. figure:: E2_Node_Configuration_Update_Procedure.PNG
+ :width: 600
+ :alt: E2 Node Configuration Update Procedure
+
+ Figure 18 - E2 Node Configuration Update Procedure
+
+
+RIC Service Update procedure
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+This section describes the RIC Service Update Procedure within O-DU High and Near-RT RIC.
+Note - This API is not currently triggered by ODU-High.
+
+.. figure:: RIC_Service_Update_Procedure.PNG
+ :width: 600
+ :alt: RIC Service Update Procedure
+
+ Figure 19 - RIC Service Update Procedure
+
+
+E2 Connection Update Procedure
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+This section describes the E2 Connection Update Procedure within O-DU High and Near-RT RIC.
+Note - This API is not currently triggered by stub-based framework.
+
+.. figure:: E2_Connection_Update_Procedure.PNG
+ :width: 600
+ :alt: E2 Connection Update Procedure
+
+ Figure 20 - E2 Connection Update Procedure
+
+
+E2 Removal Procedure
+^^^^^^^^^^^^^^^^^^^^
+
+This section describes the E2 removal Procedure from both DU-initiated and RIC-initiated within O-DU High and Near-RT RIC.
+Note - This API is not currently triggered by ODU-High or Stub-based test framework as of now.
+
+.. figure:: E2_Removal_Procedure(DU-initiated).PNG
+ :width: 600
+ :alt: E2 Removal Procedure(DU-initiated)
+
+ Figure 21 - E2 Removal Procedure(DU-initiated)
+
+.. figure:: E2_Removal_Procedure(RIC-initiated).PNG
+ :width: 600
+ :alt: E2 Removal Procedure(RIC-initiated)
+
+ Figure 22 - E2 Removal Procedure(RIC-initiated)
+
+
+Reset Procedure
+^^^^^^^^^^^^^^^
+
+This section describes the Reset Procedure from both DU-initiated and RIC-initiated within O-DU High and Near-RT RIC.
+Note - This API is not currently triggered by ODU-High or Stub-based test framework as of now.
+
+.. figure:: Reset_Procedure(DU-initiated).PNG
+ :width: 600
+ :alt: Reset Procedure(DU-initiated)
+
+ Figure 23 - Reset Procedure(DU-initiated)
+
+.. figure:: Reset_Procedure(RIC-initiated).PNG
+ :width: 600
+ :alt: Reset Procedure(RIC-initiated)
+
+ Figure 24 - Reset Procedure(RIC-initiated)
+
+
+
+
+Error Indication Procedure
+^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+This procedure can be triggered from either O-DU or Near-RT RIC. It informs that an error has been found in DU or Near-RT RIC.
+Note - This API is not currently triggered by ODU-High or Stub-based test framework as of now.
+
+RIC Subscription Procedure / RIC Indication
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+This section describes the RIC Subscription Procedure within O-DU High and Near-RT RIC. In addition to this procedure, the RIC indication procedure has been described.
+
+.. figure:: RIC_Subscription_Procedure.PNG
+ :width: 600
+ :alt: RIC Subscription Procedure
+
+ Figure 25 - RIC Subscription Procedure
+
+
+RIC Subscription Modification Required
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Only framework is added as part of this procedure. The complete handling and flow will be added once use-case is determined.
+
+
+RIC Subscription Modification Procedure
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+This section describes the RIC Subscription Modification Procedure within O-DU High and Near-RT RIC.
+Note - This API is not currently triggered by stub-based framework.
+
+.. figure:: RIC_Subscription_Modification_Procedure.png
+ :width: 600
+ :alt: RIC Subscription Modification Procedure
+
+ Figure 26 - RIC Subscription Modification Procedure
+
+
+RIC Subscription Delete Procedure
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+This section describes the RIC Subscription Delete Procedure within O-DU High and Near-RT RIC.
+Note - This API is not currently triggered by stub-based framework.
+
+.. figure:: RIC_Subscription_Delete_Procedure.PNG
+ :width: 600
+ :alt: RIC Subscription Delete Procedure
+
+ Figure 27 - RIC Subscription Delete Procedure
+
+