LteCompManagerBase

Package: simu5g.stack.compManager

LteCompManagerBase

simple module

Serves as the base class for Coordinated Multi-Point (CoMP) manager modules in LTE networks. It provides essential functionalities and parameters needed to manage CoMP operations. To implement a specific CoMP algorithm, extend this class and override its pure virtual methods.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Known subclasses

Name Type Description
LteCompManagerProportional simple module

Implements a CoMP (Coordinated Multi-Point) Proportional Scheduling algorithm. It allows for coordinated scheduling among multiple eNodeBs by calculating the required Resource Block (RB) allocation proportionally based on user load. In this structure, the module can function as either a master or a slave node. Slave nodes send their RB requests to the master node, which then processes these requests by partitioning the available bandwidth and subsequently informs each slave node about the available RBs for transmission.

Parameters

Name Type Default value Description
compNodeType string "COMP_CLIENT"
coordinatorId int

ID of the coordinator node

clientList object []

Space-separated list of client node identifiers

coordinationPeriod double 0.001s

The time interval between two coordination events

binderModule string "binder"

Properties

Name Value Description
display i=block/cogwheel
class LteCompManagerBase

Gates

Name Direction Size Description
x2ManagerIn input
x2ManagerOut output

Signals

Name Type Unit Description
compReservedBlocks

Statistics

Name Title Source Record Unit Interpolation Mode Description
compReservedBlocks CoMP Reserved Blocks compReservedBlocks mean, vector

Source code

//
// Serves as the base class for Coordinated Multi-Point (CoMP) manager modules in LTE networks.
// It provides essential functionalities and parameters needed to manage CoMP operations.
// To implement a specific CoMP algorithm, extend this class and override its pure virtual methods.
//
simple LteCompManagerBase like ILteCompManager
{
    parameters:
        @display("i=block/cogwheel");
        @class("LteCompManagerBase");

        string compNodeType @enum(COMP_CLIENT,COMP_CLIENT_COORDINATOR,COMP_COORDINATOR) = default("COMP_CLIENT");
        int coordinatorId;  // ID of the coordinator node
        object clientList = default([]);   // Space-separated list of client node identifiers
        double coordinationPeriod @unit(s) = default(0.001s);  // The time interval between two coordination events
        string binderModule = default("binder");

        @signal[compReservedBlocks];
        @statistic[compReservedBlocks](title="CoMP Reserved Blocks"; unit=""; source="compReservedBlocks"; record=mean,vector);

    gates:
        //# Connections to the X2 Manager
        input x2ManagerIn;
        output x2ManagerOut;
}
File: src/simu5g/stack/compManager/LteCompManagerBase.ned