IRlcRxEntity

Package: simu5g.stack.rlc

IRlcRxEntity

module interface

Module interface for the receiving side of an RLC entity (TM/UM/AM). Concrete entity types (e.g. RlcTmRxEntity, RlcUmRxEntity, RlcAmRxEntity) implement this interface so that RlcTmEntity/RlcUmEntityBase/RlcAmEntityBase compound modules can instantiate them via a typename parameter. Implementations may declare additional gates (e.g. the AM control gates).

Inheritance diagram

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

Implemented by

Name Type Description
LteRlcAmRxEntity simple module

LTE (TS 36.322) receiving side of the Acknowledged Mode (AM) of the RLC layer: PDU-SN receiving window with byte-interval coverage for AMD PDU segments, t-Reordering + t-StatusProhibit, ACK_SN + NACK-list STATUS reports, in-order FI-walk reassembly of the concatenated SDU stream. Shares the common RlcAmRxEntityBase shell with the NR profile NrRlcAmRxEntity, whose window/status machinery it deliberately mirrors. Bound by default inside the LteRlcAmEntity compound.

LteRlcUmRxEntity simple module

LTE (TS 36.322) receiving side of the Unacknowledged Mode (UM) of the RLC layer: FI-walk reassembly across concatenated PDUs with a PDU-SN reordering window and a t-Reordering timer. Shares the common RlcUmRxEntityBase shell (MAC-mux plumbing, D2D hooks, UL burst-throughput accounting) with the NR profile NrRlcUmRxEntity. Bound by default inside the LteRlcUmEntity compound. Its throughput/delay statistics are emitted on the sibling rlcMux module (see RlcMux).

LteRlcUmRxEntityD2D simple module

D2D-capable LTE (TS 36.322) RLC UM receiving entity: LteRlcUmRxEntity plus the D2D_MULTI single-PDU reordering window, the post-mode-switch reassembly resynchronisation, and the D2D branch of the throughput/delay statistics.

NrRlcAmRxEntity simple module

NR (TS 38.322) receiving side of the Acknowledged Mode (AM) of the RLC layer: SO byte-coverage reassembly with a per-SDU SN window, t-Reassembly + t-StatusProhibit timers. Shares the common RlcAmRxEntityBase shell with the LTE profile LteRlcAmRxEntity. Bound by default inside the NrRlcAmEntity compound. The NR SO-reassembly statistics are declared here so they are recorded only for NR-selected entities.

NrRlcUmRxEntity simple module

NR (TS 38.322) receiving side of the Unacknowledged Mode (UM) of the RLC layer: SI + byte-offset (SO) reassembly with a per-SDU SN window and a t-Reassembly timer. Shares the common RlcUmRxEntityBase shell with the LTE profile LteRlcUmRxEntity. Bound by default inside the NrRlcUmEntity compound. The NR SO-reassembly statistics are declared here so they are recorded only for NR entities.

NrRlcUmRxEntityD2D simple module

D2D-capable NR (TS 38.322) RLC UM receiving entity: NrRlcUmRxEntity plus the mode-switch buffer discard/renumbering and the D2D branch of the throughput/delay statistics.

RlcTmRxEntity simple module

Implements the receiving side of the Transparent Mode (TM) of the Radio Link Control (RLC) layer for a specific connection. Simply forwards received PDUs to the upper layer without reassembly or reordering.

Used in compound modules

Name Type Description
RlcTmEntity compound module

RLC TM entity of one data radio bearer: packages the transmitting and the receiving side (TS 36.322 / 38.322 model an entity per bearer). Created dynamically by BearerManagement, one per (peer, DRB) pair; a bearer with traffic in one direction only simply leaves the other side idle.

RlcUmEntityBase compound module

Base type of the RLC UM entity of one data radio bearer: packages the transmitting and the receiving side (TS 36.322 / 38.322 model an entity per bearer). Created dynamically by BearerManagement, one per (peer, DRB) pair; a bearer with traffic in one direction only simply leaves the other side idle.

Known subclasses

Name Type Description
IRlcAmRxEntity module interface

Receiving side of an RLC AM entity: extends the generic RX interface with the gates over which it hands control PDUs to the co-located transmitting side (see RlcAmEntityBase).

Properties

Name Value Description
display i=block/layer

Source code

//
// Module interface for the receiving side of an RLC entity (TM/UM/AM).
// Concrete entity types (e.g. RlcTmRxEntity, RlcUmRxEntity, RlcAmRxEntity) implement
// this interface so that RlcTmEntity/RlcUmEntityBase/RlcAmEntityBase compound
// modules can instantiate them via a typename parameter. Implementations
// may declare additional gates (e.g. the AM control gates).
//
moduleinterface IRlcRxEntity
{
    parameters:
        @display("i=block/layer");
    gates:
        input in;       // PDUs from MAC, via the RlcMux
        output out;     // Reassembled SDUs to the PDCP layer (direct per-DRB connection, not via a mux)
}
File: src/simu5g/stack/rlc/IRlcRxEntity.ned