OpenAirInterface 5G: Handover Structures in the Source Code
The OpenAirinterface5G is an open source project that:
” The OpenAirInterface Software Alliance (OSA) is a non-profit consortium fostering a community of industrial as well as academic contributors for open source software and hardware development for the core network (EPC), access network and user equipment (EUTRAN) of 3GPP cellular networks. The Alliance sponsors the initial work of EURECOM to create OpenAirInterfaceTM towards development of 5G Cellular Stack on Commercial Off-The-Shelf (COTS) hardware. Read more…“
The software can be found on GitHub at: https://github.com/chunyeow/openairinterface5g
We analyzed the handover protocol found in this interface, and we can highlight the following messages:
For example: We can find a ReporConfigEUTR_Trigger, where the UE sends a measurement report, for example an “A3” Event as defined in the 3GPP specification.
This function, is used to measure and capture the values from all the UE_rrc_inst[…] and reports the Measurement report data, prior to sending the report configuration message with all the signal strength values reported by the filter coefficients.
Here is key to identify the RSRP_db_filtered values, where RSRP represents
“RSRQ 3GPP DefinitionReference Signal Received Quality (RSRQ) is defined as the ratio N×RSRP/(E-UTRA carrier RSSI), where N is the number of RB’s of the E-UTRA carrier RSSI measurement bandwidth. The measurements in the numerator and denominator shall be made over the same set of resource blocks”
The Layer 3 filter of RSRP is shown here, as the filter coefficient is computed thru the formula:
This is useful when the events are being triggered and handover decisions are being made for the best eNODEB to handoff to. As seen in this poster from the “LTE University.” The timetotrigger is se to 40ms, so if the events in the hysta3 is within at the A3offset then an event will be triggered based in the first measurement report and determine the best TargetPhysCellId to handover to.
All is represented in the ue_meas_filtering(….) function as shown in the code from the OpenAirInterface5G sources:
As shown here the filter uses the UE_rrc_inst[ctx_pP->module_id].filter_coeff_rsrp formula to compute the linear filter coefficient, that predicts the future state of the RSRP value and it is used for the handover decisions by the 3GPP system.
The MobilityInfo structure, includes all the paraders for example as TargetPhysCellID that is used to compute the Target ID for the target cell as identified by the X2 handover or the S1 handover protocol.