ConnectionControlEnbD2D

Package: simu5g.stack.d2d.rrc

ConnectionControlEnbD2D

simple module

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.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the 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
display i=block/control
class ConnectionControlEnbD2D

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