ReflectiveQosTable¶
Package: simu5g.stack.sdap.common
simple module ReflectiveQosTable
ReflectiveQosTable maintains a table of QoS flow mappings for reflective QoS.
This module implements 3GPP TS 37.324 reflective QoS feature, which allows UEs to derive uplink QoS flow characteristics from downlink traffic patterns.
The module tracks downlink flows with their associated QFI values and enables dynamic uplink QFI derivation based on learned flow patterns. Flows automatically expire after a configurable timeout period.
Usage diagram¶
Inheritance diagram¶
Used in compound modules¶
Name |
Type |
Description |
|---|---|---|
compound module |
Defines a User Equipment (UE) network interface card that supports both LTE and NR (New Radio) technologies. It extends the LteNicUe module by adding additional submodules and parameters to support NR-specific functionalities. D2D support is added by the NrNicUeD2D subtype. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
timeout |
double |
30s |
Flow expiration timeout |
cleanupInterval |
double |
10s |
Interval for periodic cleanup of expired flows |
printFinalStats |
bool |
false |
Print final statistics at simulation end |
Properties¶
Name |
Value |
Description |
|---|---|---|
class |
ReflectiveQosTable |
|
display |
i=block/table |
Source code¶
//
// ReflectiveQosTable maintains a table of QoS flow mappings for reflective QoS.
//
// This module implements 3GPP TS 37.324 reflective QoS feature, which allows
// UEs to derive uplink QoS flow characteristics from downlink traffic patterns.
//
// The module tracks downlink flows with their associated QFI values and enables
// dynamic uplink QFI derivation based on learned flow patterns. Flows automatically
// expire after a configurable timeout period.
//
simple ReflectiveQosTable like IReflectiveQosTable
{
parameters:
double timeout @unit(s) = default(30s); // Flow expiration timeout
double cleanupInterval @unit(s) = default(10s); // Interval for periodic cleanup of expired flows
bool printFinalStats = default(false); // Print final statistics at simulation end
@display("i=block/table");
@class(ReflectiveQosTable);
}