LtePdcpEntity¶
Package: simu5g.stack.pdcp
compound module LtePdcpEntity
PDCP entity of an LTE data radio bearer: the PdcpEntityBase compound with its TX/RX sides bound to the LTE entity profiles (TS 36.323). Selected by BearerManagement via its pdcpEntityModuleType parameter, which defaults to this type.
Inheritance diagram¶
Extends¶
Name |
Type |
Description |
|---|---|---|
compound module |
Base type of the PDCP entity of one data radio bearer: packages the transmitting and the receiving side of TS 36.323 / 38.323, plus the leg split/join stage of a multi-leg bearer (e.g. an NR dual connectivity split bearer). Created dynamically by BearerManagement, one per (peer, DRB) pair. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
numLegs |
int |
1 |
Number of RLC legs of this bearer |
legs |
string |
numLegs == 1 ? “MCG” : “MCG SCG” |
Cell group of each leg, space-separated, in leg-index order |
hasSplitter |
bool |
numLegs > 1 || legs != “MCG” |
The TX side routes through the splitter whenever a leg needs its per-leg id mapping |
rohcProfiles |
string |
“” |
The bearer’s ROHC profiles, space-separated, pushed by RRC; “” = no header compression |
rlcMode |
string |
“UM” |
Forwarded to tx only; determines the PDCP header size |
Properties¶
Name |
Value |
Description |
|---|---|---|
display |
i=block/wheelbarrow |
|
dynamic |
true |
Gates¶
Name |
Direction |
Size |
Description |
|---|---|---|---|
upperIn |
input |
SDUs from IP (via PdcpMux) |
|
upperOut |
output |
Reassembled SDUs to IP (via PdcpMux) |
|
legOut [ ] |
output |
numLegs |
PDUs to leg k (RLC entity, or DcMux/X2) |
legIn [ ] |
input |
numLegs |
PDUs from leg k |
Unassigned submodule parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
tx.binderModule |
string |
“binder” |
|
tx.emitPerSduSignals |
bool |
true |
Cleared by a PdcpEntityBase with a splitter: the splitter emits the per-leg statistics |
tx.rohcProfiles |
string |
“” |
The bearer’s ROHC profiles, space-separated, pushed by RRC; “” = no header compression |
tx.rohcFoHeaderSizes |
object |
{rtp: 6, udp: 6, tcp: 9, ip: 4} |
Compressed header size per ROHC profile in the FO state, in bytes |
tx.rohcSoHeaderSizes |
object |
{rtp: 3, udp: 3, tcp: 5, ip: 1} |
Compressed header size per ROHC profile in the SO state, in bytes |
tx.rohcIrOverhead |
int |
3B |
Size of an IR packet’s ROHC fields (packet type, profile, CRC) on top of the full headers |
tx.rohcIrPackets |
int |
3 |
IR packets a context sends before moving to FO |
tx.rohcFoPackets |
int |
3 |
FO packets a context sends before moving to SO |
tx.rohcIrRefresh |
int |
1700 |
Packets of a context between two IR refreshes |
tx.rohcFoRefresh |
int |
700 |
SO packets of a context between two FO refreshes |
tx.rlcMode |
string |
“UM” |
RLC mode of this bearer, pushed by RRC; determines the PDCP header size |
rx.binderModule |
string |
“binder” |
|
rx.rohcProfiles |
string |
“” |
The bearer’s ROHC profiles, space-separated, pushed by RRC; “” = no header compression |
splitter.numLegs |
int |
Number of legs (set by the enclosing PdcpEntityBase) |
|
splitter.legs |
string |
Cell group of each leg, space-separated “MCG”/”SCG” (set by the enclosing PdcpEntityBase) |
|
splitter.binderModule |
string |
“binder” |
Source code¶
//
// PDCP entity of an LTE data radio bearer: the ~PdcpEntityBase compound with
// its TX/RX sides bound to the LTE entity profiles (TS 36.323). Selected by
// BearerManagement via its pdcpEntityModuleType parameter, which defaults to
// this type.
//
module LtePdcpEntity extends PdcpEntityBase
{
parameters:
tx.typename = default("simu5g.stack.pdcp.LtePdcpTxEntity");
rx.typename = default("simu5g.stack.pdcp.LtePdcpRxEntity");
}