Package: simu5g.stack.d2d.ip2nic
Ip2NicD2D
simple moduleDevice-to-Device (D2D) aware version of Ip2Nic. It overrides the packet analysis and next-hop resolution with the D2D-capable behavior: IP-multicast becomes a D2D_MULTI flow with a group-id assignment, unicast destinations get a D2D peer lookup, and the next hop is routed directly to the peer when the peering is in Direct Mode (DM). Selected by the D2D-capable NICs.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Extends
| Name | Type | Description |
|---|---|---|
| Ip2Nic | simple module |
Bridges the IP network layer and the cellular protocol stack, handling bidirectional packet flow. Extracts flow information from IP headers and attaches it as control tags for the stack. In base stations, determines the destination user equipment from IP addresses. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| nodeType | string | ||
| binderModule | string | "binder" | |
| connectionControlModule | string | "^.rrc.connectionControl" |
The node's control-plane entry point, asked for a bearer on a lookup miss |
| isNr | bool | false |
True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB) |
| hasSdap | bool | false |
When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification |
| sessionType | string | "" |
UE only: the type of the UE's session (see LteUe), which the payload the NIC delivers up is of; set by the NIC |
| establishBearersOnDemand | bool | true |
When false, a packet that finds no established bearer raises an error instead of establishing one (static bearers are established up front; see the staticDrbs parameter of BearerConfigurator) |
| d2dBinderModule | string | "d2dBinder" |
The network's D2dBinder, which holds the D2D state |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=block/layer | |
| class | Ip2NicD2D |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| upperLayerIn | input |
Connection to network layer |
|
| upperLayerOut | output | ||
| stackIn | input |
Connection to the cellular stack |
|
| stackOut | output |
Source code
// // Device-to-Device (D2D) aware version of ~Ip2Nic. It overrides the packet // analysis and next-hop resolution with the D2D-capable behavior: IP-multicast // becomes a D2D_MULTI flow with a group-id assignment, unicast destinations get // a D2D peer lookup, and the next hop is routed directly to the peer when the // peering is in Direct Mode (DM). Selected by the D2D-capable NICs. // simple Ip2NicD2D extends Ip2Nic { parameters: @class("Ip2NicD2D"); string d2dBinderModule = default("d2dBinder"); // The network's ~D2dBinder, which holds the D2D state }File: src/simu5g/stack/d2d/ip2nic/Ip2NicD2D.ned