5G-LENA nr-v4.0
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
NrUeMeasurementsPiecewiseTestCase2 Class Reference

Testing UE measurements in NR with simulation of 2 eNodeB and 1 UE in piecewise configuration and 240 ms report interval. Here is intenisvely test events A1 and A2. A1 event should be triggered when the serving cell becomes better than a given threshold. A2 shall be triggered when the serving cell becomes worse than threshold. A3 event is triggered when the neighbour becomes offset better than the PCell. In this test UE is being transported several times during the simulation duration. Then the test checks if measurement report contains correct RSRP and RSRQ result, than if CQI info is correctly generated, if the reporting occurs at the correct time stamp in the simulation and according to the measurements configuration. It also checks if the reported values of RSRP and RSRQ are equal to expected reference values. More...

#include "nr-test-ue-measurements.h"

+ Inheritance diagram for NrUeMeasurementsPiecewiseTestCase2:
+ Collaboration diagram for NrUeMeasurementsPiecewiseTestCase2:

Public Member Functions

 NrUeMeasurementsPiecewiseTestCase2 (std::string name, NrRrcSap::ReportConfigEutra config, std::vector< Time > expectedTime, std::vector< uint8_t > expectedRsrp)
 
void RecvMeasurementReportCallback (std::string context, uint64_t imsi, uint16_t cellId, uint16_t rnti, NrRrcSap::MeasurementReport report)
 Triggers when eNodeB receives measurement report from UE, then perform verification on it.
 

Detailed Description

Testing UE measurements in NR with simulation of 2 eNodeB and 1 UE in piecewise configuration and 240 ms report interval. Here is intenisvely test events A1 and A2. A1 event should be triggered when the serving cell becomes better than a given threshold. A2 shall be triggered when the serving cell becomes worse than threshold. A3 event is triggered when the neighbour becomes offset better than the PCell. In this test UE is being transported several times during the simulation duration. Then the test checks if measurement report contains correct RSRP and RSRQ result, than if CQI info is correctly generated, if the reporting occurs at the correct time stamp in the simulation and according to the measurements configuration. It also checks if the reported values of RSRP and RSRQ are equal to expected reference values.

Definition at line 278 of file nr-test-ue-measurements.h.

Constructor & Destructor Documentation

◆ NrUeMeasurementsPiecewiseTestCase2()

NrUeMeasurementsPiecewiseTestCase2::NrUeMeasurementsPiecewiseTestCase2 ( std::string  name,
NrRrcSap::ReportConfigEutra  config,
std::vector< Time >  expectedTime,
std::vector< uint8_t >  expectedRsrp 
)

Constructor

Parameters
namethe reference name
configNrRrcSap::ReportConfigEutra
expectedTimethe expected time
expectedRsrpthe expected RSRP

Definition at line 1413 of file nr-test-ue-measurements.cc.

◆ ~NrUeMeasurementsPiecewiseTestCase2()

NrUeMeasurementsPiecewiseTestCase2::~NrUeMeasurementsPiecewiseTestCase2 ( )
override

Definition at line 1437 of file nr-test-ue-measurements.cc.

Member Function Documentation

◆ RecvMeasurementReportCallback()

void NrUeMeasurementsPiecewiseTestCase2::RecvMeasurementReportCallback ( std::string  context,
uint64_t  imsi,
uint16_t  cellId,
uint16_t  rnti,
NrRrcSap::MeasurementReport  report 
)

Triggers when eNodeB receives measurement report from UE, then perform verification on it.

The trigger is set up beforehand by connecting to the NrUeRrc::RecvMeasurementReport trace source.

Verification consists of checking whether the report carries the right value of RSRP or not, and whether it occurs at the expected time or not.

Parameters
contextthe context
imsithe IMSI
cellIdthe cell ID
rntithe RNTI
reportNrRrcSap::MeasurementReport

Definition at line 1570 of file nr-test-ue-measurements.cc.

References ns3::NrRrcSap::MeasResults::haveMeasResultNeighCells, ns3::NrRrcSap::MeasResults::measId, ns3::NrRrcSap::MeasResults::measResultListEutra, ns3::NrRrcSap::MeasResults::measResultPCell, ns3::NrRrcSap::MeasurementReport::measResults, ns3::nr::EutranMeasurementMapping::RsrpRange2Dbm(), ns3::NrRrcSap::MeasResultPCell::rsrpResult, ns3::nr::EutranMeasurementMapping::RsrqRange2Db(), and ns3::NrRrcSap::MeasResultPCell::rsrqResult.

+ Here is the call graph for this function:

The documentation for this class was generated from the following files: