5G-LENA  nr-v3.0-29-g83cc959
The 5G/NR module for the ns-3 simulator
system-scheduler-test-qos.h File Reference

This test case checks if the throughput obtained is as expected for the QoS scheduling logic. More...

#include <ns3/ptr.h>
#include <ns3/test.h>
+ Include dependency graph for system-scheduler-test-qos.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ns3::NrSystemTestSchedulerQosSuite
 The QoS scheduler system test suite. More...
 
class  ns3::SystemSchedulerTestQos
 Main class for testing a scheduler, system-wise. More...
 

Variables

static NrSystemTestSchedulerQosSuite ns3::nrSystemTestSchedulerQosSuite
 

Detailed Description

This test case checks if the throughput obtained is as expected for the QoS scheduling logic.

For the testing of the QoS scheduler we consider two different types of traffic, each one assigned a QCI with different priority. Based on this priority, we test if the ratio of the throughput obtained is equal to the ratio of the priorities for the case that the load of the higher priority UEs is in saturation:

$P=frac{100-P_1}{100-P_2}=frac{Th_1}{Th_2}$

Notice that for the UL case, due to a restriction of the scheduler for the case of non-GBR QCIs, we consider the default QCI 9 with priority 90. Therefore, in the check we consider hardcoded P_2 = 90.

To execute this test suite run:

  • $ ./ns3 run "test-runner --suite=nr-system-test-schedulers-qos"

Definition in file system-scheduler-test-qos.h.