ConnectionControlEnbD2D

Package: simu5g.stack.d2d.rrc

simple module ConnectionControlEnbD2D

D2D-capable variant of the ConnectionControlEnb. It adds the sidelink bearers of the UEs the base station serves: a D2D unicast or multicast flow gets a bearer with a fixed transitional configuration (RLC UM on LCG 3), outside the bearer definition system; a multicast bearer’s TX leg is installed at the sender and an RX leg at each group member, and a node joining a group later gets the RX legs of the group’s known senders. The sidelink node pairs’ DRB identities and the established multicast flows are kept network-wide in the D2dBinder, since a sidelink bearer’s ends are UEs whose serving base stations may differ and change.

It also handles the D2D side of the handovers of the D2D-capable UE legs it serves (a leg reports the capability when it connects, and a handover carries it with the context): before commanding a leg’s handover, the leg’s D2D flows are switched back to infrastructure mode through the node’s D2dModeSelectionBase; a leg’s D2D direction is attached at the node’s AMC when it arrives, by handover or by attaching during the run, and a D2D mode re-selection follows at the end of that instant; and it is detached when the leg leaves.

Selected via ‘rrc.connectionControl.typename’ by the D2D-capable base station NICs.

simu5g.stack.d2d.rrc.ConnectionControlEnbD2DConnectionControlEnbD2Dsimple

Inheritance diagram

Extends

Name

Type

Description

ConnectionControlEnb

simple module

The control-plane entry point of a base station: the one module of the node that the control plane of other nodes – the CoreControl, the other base stations, and the UEs’ ConnectionControlUe – talks to, and that the node’s own data path turns to when it needs a bearer.

Parameters

Name

Type

Default value

Description

binderModule

string

“binder”

bearerConfiguratorModule

string

“bearerConfigurator”

coreControlModule

string

“coreControl”

bearerManagementModule

string

“^.bearerManagement”

macModule

string

“^.^.mac”

handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

gtpUserModule

string

“^.^.^.relay.gtpUser”

gtpUserX2Module

string

“^.^.^.gtpUserX2”

macNodeId

int

The base station’s node id; the NIC sets it from the node’s

gateway

string

“”

The node’s core network gateway, as its gateway parameter names it; ignored at a node not connected to a core network (a secondary node)

d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

d2dModeSelectionModule

string

“^.d2dModeSelection”

The node’s D2D mode selection; none if the module does not exist

Properties

Name

Value

Description

class

ConnectionControlEnbD2D

display

i=block/control

Source code

//
// D2D-capable variant of the ~ConnectionControlEnb. It adds the sidelink bearers of
// the UEs the base station serves: a D2D unicast or multicast flow gets a bearer
// with a fixed transitional configuration (RLC UM on LCG 3), outside the bearer
// definition system; a multicast bearer's TX leg is installed at the sender and an
// RX leg at each group member, and a node joining a group later gets the RX legs of
// the group's known senders. The sidelink node pairs' DRB identities and the
// established multicast flows are kept network-wide in the ~D2dBinder, since a
// sidelink bearer's ends are UEs whose serving base stations may differ and change.
//
// It also handles the D2D side of the handovers of the D2D-capable UE legs it
// serves (a leg reports the capability when it connects, and a handover carries it
// with the context): before commanding a leg's handover, the leg's D2D flows are
// switched back to infrastructure mode through the node's ~D2dModeSelectionBase;
// a leg's D2D direction is attached at the node's AMC when it arrives, by handover
// or by attaching during the run, and a D2D mode re-selection follows at the end
// of that instant; and it is detached when the leg leaves.
//
// Selected via 'rrc.connectionControl.typename' by the D2D-capable base station NICs.
//
simple ConnectionControlEnbD2D extends ConnectionControlEnb
{
    parameters:
        @class(ConnectionControlEnbD2D);
        string d2dBinderModule = default("d2dBinder");  // The network's ~D2dBinder, which holds the D2D state
        string d2dModeSelectionModule = default("^.d2dModeSelection");  // The node's D2D mode selection; none if the module does not exist
}

File: src/simu5g/stack/d2d/rrc/ConnectionControlEnbD2D.ned