Package: simu5g.apps.unstructured
UnstructuredIo
simple moduleAttaches an application to the cellular NIC of a UE whose session is of type Unstructured (the UE's sessionType parameter, see LteUe): the payload goes down to the NIC and comes up from it as is, with no transport or network layer in between. Packets arriving on trafficIn are sent to the NIC tagged with the "unstructured" protocol; what the NIC delivers up as that protocol leaves on trafficOut. The module registers as the node's receiver of the protocol, so a UE has at most one of it. It is connected to the UE's network-layer dispatcher (see the unstructuredApp submodules of LteUe).
Used in compound modules
| Name | Type | Description |
|---|---|---|
| UnstructuredApp | compound module |
An application of a UE whose session is of type Unstructured (the UE's sessionType parameter, see LteUe): it sends and receives opaque payload through the UE's cellular NIC, which carries it over the session to the data network (see UserPlaneNodeControl for the N6 end of the session). The traffic source and sink are built from queueing model elements, as INET's EthernetApp's; UnstructuredIo attaches them to the NIC. UnstructuredSourceApp and UnstructuredSinkApp only send and only receive. A UE has at most one such application, in its unstructuredApp submodule vector. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| interfaceTableModule | string |
Relative module path of the interface table |
|
| interface | string | "cellular" |
The name of the cellular NIC's interface |
Properties
| Name | Value | Description |
|---|---|---|
| display | i=block/socket |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| trafficIn | input | ||
| trafficOut | output | ||
| socketIn | input | ||
| socketOut | output |
Signals
| Name | Type | Unit | Description |
|---|---|---|---|
| packetSent | inet::Packet | ||
| packetReceived | inet::Packet |
Statistics
| Name | Title | Source | Record | Unit | Interpolation Mode | Description |
|---|---|---|---|---|---|---|
| packetSent | packets sent | packetSent | count, sum(packetBytes), vector(packetBytes) | none | ||
| packetReceived | packets received | packetReceived | count, sum(packetBytes), vector(packetBytes) | none |
Source code
// // Attaches an application to the cellular NIC of a UE whose session is of type // Unstructured (the UE's sessionType parameter, see ~LteUe): the payload goes down // to the NIC and comes up from it as is, with no transport or network layer in // between. Packets arriving on trafficIn are sent to the NIC tagged with the // "unstructured" protocol; what the NIC delivers up as that protocol leaves on // trafficOut. The module registers as the node's receiver of the protocol, so a UE // has at most one of it. It is connected to the UE's network-layer dispatcher (see // the unstructuredApp submodules of ~LteUe). // simple UnstructuredIo { parameters: string interfaceTableModule; // Relative module path of the interface table string interface = default("cellular"); // The name of the cellular NIC's interface @display("i=block/socket"); @signal[packetSent](type=inet::Packet); @signal[packetReceived](type=inet::Packet); @statistic[packetSent](title="packets sent"; source=packetSent; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none); @statistic[packetReceived](title="packets received"; source=packetReceived; record=count,"sum(packetBytes)","vector(packetBytes)"; interpolationmode=none); gates: input trafficIn; output trafficOut; input socketIn; output socketOut; }File: src/simu5g/apps/unstructured/UnstructuredIo.ned