![]() |
5G-LENA nr-v4.0
The 5G/NR module for the ns-3 simulator
|
Handover algorithm implementation based on RSRQ measurements, Event A2 and Event A4. More...
#include "nr-a2-a4-rsrq-handover-algorithm.h"
Public Member Functions | |
NrA2A4RsrqHandoverAlgorithm () | |
Creates an A2-A4-RSRQ handover algorithm instance. | |
NrHandoverManagementSapProvider * | GetNrHandoverManagementSapProvider () override |
Export the "provider" part of the Handover Management SAP interface. | |
void | SetNrHandoverManagementSapUser (NrHandoverManagementSapUser *s) override |
Set the "user" part of the Handover Management SAP interface that this handover algorithm instance will interact with. | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the type ID. | |
![]() | |
static TypeId | GetTypeId () |
Get the type ID. | |
Protected Member Functions | |
void | DoDispose () override |
void | DoInitialize () override |
void | DoReportUeMeas (uint16_t rnti, NrRrcSap::MeasResults measResults) override |
Implementation of NrHandoverManagementSapProvider::ReportUeMeas. | |
![]() | |
void | DoDispose () override |
Friends | |
class | MemberNrHandoverManagementSapProvider< NrA2A4RsrqHandoverAlgorithm > |
let the forwarder class access the protected and private members | |
Handover algorithm implementation based on RSRQ measurements, Event A2 and Event A4.
Handover decision made by this algorithm is primarily based on Event A2 measurements (serving cell's RSRQ becomes worse than threshold). When the event is triggered, the first condition of handover is fulfilled.
Event A4 measurements (neighbour cell's RSRQ becomes better than threshold) are used to detect neighbouring cells and their respective RSRQ. When a neighbouring cell's RSRQ is higher than the serving cell's RSRQ by a certain offset, then the second condition of handover is fulfilled.
When the first and second conditions above are fulfilled, the algorithm informs the eNodeB RRC to trigger a handover.
The threshold for Event A2 can be configured in the ServingCellThreshold
attribute. The offset used in the second condition can also be configured by setting the NeighbourCellOffset
attribute.
The following code snippet is an example of using and configuring the handover algorithm in a simulation program:
Ptr<NrHelper> nrHelper = CreateObject<NrHelper> (); NodeContainer gnbNodes; // configure the nodes here... nrHelper->SetHandoverAlgorithmType ("ns3::NrA2A4RsrqHandoverAlgorithm"); nrHelper->SetHandoverAlgorithmAttribute ("ServingCellThreshold", UintegerValue (30)); nrHelper->SetHandoverAlgorithmAttribute ("NeighbourCellOffset", UintegerValue (1)); NetDeviceContainer nrGnbDevs = nrHelper->InstallGnbDevice (gnbNodes);
Introspection did not find any typical Config paths.
No TraceSources are defined for this type.
Size of this type is 176 bytes (on a 64-bit architecture).
Definition at line 68 of file nr-a2-a4-rsrq-handover-algorithm.h.
ns3::NrA2A4RsrqHandoverAlgorithm::NrA2A4RsrqHandoverAlgorithm | ( | ) |
Creates an A2-A4-RSRQ handover algorithm instance.
Definition at line 32 of file nr-a2-a4-rsrq-handover-algorithm.cc.
References MemberNrHandoverManagementSapProvider< NrA2A4RsrqHandoverAlgorithm >.
|
override |
Definition at line 42 of file nr-a2-a4-rsrq-handover-algorithm.cc.
|
overrideprotected |
Definition at line 117 of file nr-a2-a4-rsrq-handover-algorithm.cc.
|
overrideprotected |
Definition at line 89 of file nr-a2-a4-rsrq-handover-algorithm.cc.
|
overrideprotectedvirtual |
Implementation of NrHandoverManagementSapProvider::ReportUeMeas.
rnti | Radio Network Temporary Identity, an integer identifying the UE where the report originates from |
measResults | a single report of one measurement identity |
Implements ns3::NrHandoverAlgorithm.
Definition at line 124 of file nr-a2-a4-rsrq-handover-algorithm.cc.
References ns3::NrRrcSap::MeasResults::haveMeasResultNeighCells, ns3::NrRrcSap::MeasResults::measId, ns3::NrRrcSap::MeasResults::measResultListEutra, ns3::NrRrcSap::MeasResults::measResultPCell, and ns3::NrRrcSap::MeasResultPCell::rsrqResult.
|
overridevirtual |
Export the "provider" part of the Handover Management SAP interface.
Implements ns3::NrHandoverAlgorithm.
Definition at line 82 of file nr-a2-a4-rsrq-handover-algorithm.cc.
|
static |
Get the type ID.
Definition at line 48 of file nr-a2-a4-rsrq-handover-algorithm.cc.
|
overridevirtual |
Set the "user" part of the Handover Management SAP interface that this handover algorithm instance will interact with.
s | a reference to the "user" part of the interface, typically a member of an NrGnbRrc instance |
Implements ns3::NrHandoverAlgorithm.
Definition at line 75 of file nr-a2-a4-rsrq-handover-algorithm.cc.
|
friend |
let the forwarder class access the protected and private members
Definition at line 84 of file nr-a2-a4-rsrq-handover-algorithm.h.
Referenced by NrA2A4RsrqHandoverAlgorithm().