Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 1 | |
| 2 | |
| 3 | .. This work is licensed under a Creative Commons Attribution 4.0 International License. |
| 4 | .. SPDX-License-Identifier: CC-BY-4.0 |
| 5 | .. |
| 6 | .. CAUTION: this document is generated from source in doc/src/* |
| 7 | .. To make changes edit the source and recompile the document. |
| 8 | .. Do NOT make changes directly to .rst or .md files. |
| 9 | |
| 10 | |
E. Scott Daniels | f7b9695 | 2020-04-29 10:07:53 -0400 | [diff] [blame] | 11 | ============ |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 12 | User's Guide |
E. Scott Daniels | f7b9695 | 2020-04-29 10:07:53 -0400 | [diff] [blame] | 13 | ============ |
| 14 | --------------------- |
| 15 | Traffic Steering xAPP |
| 16 | --------------------- |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 17 | |
| 18 | Introduction |
E. Scott Daniels | f7b9695 | 2020-04-29 10:07:53 -0400 | [diff] [blame] | 19 | ============ |
| 20 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 21 | The Traffic Steering Use Case demonstrates intelligent inferences in the Near-RT RIC and E2 interaction in order to execute on the inferences. |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 22 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 23 | The current Use Case is comprised of five xApps: |
| 24 | |
| 25 | * KPI Monitoring xApp: Gathers the radio and system Key Performance Indicators (KPI) metrics from E2 Nodes and stores them in the Shared Data Layer (SDL). |
| 26 | * Anomaly Detection (AD) xApp: Fetches UE data regularly from SDL, monitors UE metrics and sends the anomalous UEs to Traffic Steering xApp. |
| 27 | * Traffic Steering xApp (*this one*): Consumes A1 Policy Intent, listens for badly performing UEs, sends prediction requests to QP Driver, and listens for messages that show UE throughput predictions in different cells to make a decision about UE Handover. |
| 28 | * QoE Prediction Driver (QP Driver) xApp: Generates a feature set of metrics to input to QoE Prediction, based on SDL lookups in UE-Metric and Cell-Metric namespaces. |
| 29 | * QoE Prediction (QP) xApp: Receives a feature set of metrics for a given UE, and output Throughput predictions on the Serving and any Neighbor cells to Traffic Steering xApp. |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 30 | |
| 31 | A1 Policy |
| 32 | ========= |
| 33 | |
| 34 | A1 Policy is sent to Traffic Steering xApp to define the Intent which will drive the Traffic Steering behavior. |
| 35 | |
| 36 | Policy Type ID is 20008. |
| 37 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 38 | Currently, there is only one parameter that can be provided in A1 Policy: *threshold* |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 39 | |
| 40 | An example Policy follows: |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 41 | |
| 42 | .. code-block:: |
| 43 | |
| 44 | { "threshold": 5 } |
| 45 | |
| 46 | .. FIXME Is the "Serving Cell RSRP" related to "Degradation" in AD message |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 47 | |
Alexandre Huff | 849717d | 2021-06-09 18:22:45 -0300 | [diff] [blame] | 48 | This Policy instructs Traffic Steering xApp to request a QoE Prediction for any UE whose Serving Cell RSRP is less than 5. |
| 49 | Traffic Steering logs each A1 Policy update. |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 50 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 51 | Receiving Anomaly Detection |
| 52 | =========================== |
| 53 | |
| 54 | Traffic Sterring xApp defines a callback to listen to Anomaly Detection messages received from AD xApp. The RMR message type is 30003. |
| 55 | The following is an example message body: |
| 56 | |
| 57 | .. code-block:: |
| 58 | |
| 59 | [ |
| 60 | { |
| 61 | "du-id":1010, |
| 62 | "ue-id":"Train passenger 2", |
| 63 | "measTimeStampRf":1620835470108, |
| 64 | "Degradation":"RSRP RSSINR" |
| 65 | } |
| 66 | ] |
| 67 | |
| 68 | .. ``[{"du-id": 1010, "ue-id": "Train passenger 2", "measTimeStampRf": 1620835470108, "Degradation": "RSRP RSSINR"}]`` |
| 69 | |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 70 | Sending QoE Prediction Request |
| 71 | ============================== |
| 72 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 73 | Traffic Steering listens for badly performing UEs. When it identifies a UE whose RSRP is below the threshold, it generates |
| 74 | a QoE Prediction Request message and sends it to the QP Driver xApp. The RMR Message Type is 30000. |
| 75 | The following is an example message body: |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 76 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 77 | .. {"UEPredictionSet" : ["12345"]} |
| 78 | |
| 79 | .. code-block:: |
| 80 | |
| 81 | { "UEPredictionSet": ["Train passenger 2"] } |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 82 | |
Alexandre Huff | 849717d | 2021-06-09 18:22:45 -0300 | [diff] [blame] | 83 | The current version of Traffic Steering xApp does not (yet) consider the A1 policy to generate QoE prediction requests. |
| 84 | Each Anomaly Detection message received from AD xApp, results in a QoE Prediction Request to QP Driver xApp. |
| 85 | |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 86 | Receiving QoE Prediction |
| 87 | ======================== |
| 88 | |
| 89 | Traffic Steering xApp defines a callback for QoE Prediction received from QP xApp. The RMR message type is 30002. The following is an example message body: |
| 90 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 91 | .. {"12345" : { "310-680-200-555001" : [ 2000000 , 1200000 ] , "310-680-200-555002" : [ 800000 , 400000 ] , "310-680-200-555003" : [ 800000 , 400000 ] } } |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 92 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 93 | .. code-block:: |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 94 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 95 | { |
| 96 | "Train passenger 2":{ |
| 97 | "310-680-200-555001":[2000000, 1200000], |
| 98 | "310-680-200-555002":[1000000, 4000000], |
| 99 | "310-680-200-555003":[5000000, 4000000] |
| 100 | } |
| 101 | } |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 102 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 103 | This message provides predictions for UE ID "Train passenger 2". For its service cell and neighbor cells, it lists an array containing two elements: DL Throughput and UL Throughput predictions. |
Ron Shacham | 394029b | 2020-06-02 13:48:42 -0400 | [diff] [blame] | 104 | |
Alexandre Huff | b86721b | 2021-05-28 13:32:02 -0300 | [diff] [blame] | 105 | Traffic Steering xApp checks for the Service Cell ID for UE ID, and determines whether the predicted throughput is higher in a neighbor cell. |
| 106 | The first cell in this prediction message is assumed to be the serving cell. |
| 107 | |
| 108 | If predicted throughput is higher in a neighbor cell, Traffic Steering sends a CONTROL message through a REST call to E2 SIM. This message requests to hand-off the corresponding UE, and an example of its payload is as follows: |
| 109 | |
| 110 | .. code-block:: |
| 111 | |
| 112 | { |
| 113 | "command": "HandOff", |
| 114 | "seqNo": 1, |
| 115 | "ue": "Train passenger 2", |
| 116 | "fromCell": "310-680-200-555001", |
| 117 | "toCell": "310-680-200-555003", |
| 118 | "timestamp": "Sat May 22 10:35:33 2021", |
| 119 | "reason": "Hand-Off Control Request from TS xApp", |
| 120 | "ttl": 10 |
| 121 | } |
| 122 | |
| 123 | Traffic Steering also logs the REST response, which shows whether or not the control operation has succeeded. |