LteX2Manager

Package: simu5g.x2

LteX2Manager

simple module

This module serves as a pluggable interface for submodules of the e/gNodeB's LTE/NR protocol stack that implement functionalities requiring the use of the X2 interface for communication with peer e/gNodeBs, such as handover, dual connectivity, and Coordinated MultiPoint (CoMP). This module simplifies the interaction for such submodules by abstracting the details of X2Apps, which are the modules responsible for the actual communication through the X2 interface.

Used in compound modules

Name Type Description
LteNicEnb compound module

The LteNicEnb module is a network interface that provides LTE connectivity within an eNodeB. It implements the data and signaling planes of the LTE stack, which includes the PDCP, RLC, MAC, and PHY layers. The parameters and submodules allow customization of the eNodeB's behavior, including whether it supports D2D communication, CoMP (Coordinated MultiPoint), or dual connectivity.

Parameters

Name Type Default value Description
interfaceTableModule string
binderModule string "binder"

Properties

Name Value Description
display i=block/cogwheel

Gates

Name Direction Size Description
dataPort [ ] inout

connection to X2 user modules

x2 [ ] inout

connections to X2App modules

x2Gtp inout

connections to GtpUserX2 module

Source code

//
// This module serves as a pluggable interface for submodules of the e/gNodeB's LTE/NR protocol
// stack that implement functionalities requiring the use of the X2 interface for communication
// with peer e/gNodeBs, such as handover, dual connectivity, and Coordinated MultiPoint (CoMP).
// This module simplifies the interaction for such submodules by abstracting the details of X2Apps,
// which are the modules responsible for the actual communication through the X2 interface.
//
simple LteX2Manager
{
    parameters:
        @display("i=block/cogwheel");
        string interfaceTableModule;
        string binderModule = default("binder");

    gates:
        inout dataPort[]; // connection to X2 user modules
        inout x2[] @loose;       // connections to X2App modules
        inout x2Gtp @loose;      // connections to GtpUserX2 module
}
File: src/x2/LteX2Manager.ned