Package: simu5g.nodes
NrCar
compound moduleDefines a LteCar node as an NR User Equipment (UE) with vehicular-like mobility. The latter is modeled by utilizing the Veins-Inet project.
See https://veins.car2x.org/documentation/modules/#veins_inet
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Extends
| Name | Type | Description |
|---|---|---|
| NrUe | compound module |
Models a User Equipment (UE) for a 5G/LTE network. It extends the LteUe module by implementing a NrNicUe as a Network Interface Card (NIC) module. This module can be used to model a device that can connect to either a 4G eNodeB or a 5G gNodeB, or both. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| numApps | int | 0 | |
| hasUdp | bool | firstAvailableOrEmpty("Udp") != "" | |
| hasTcp | bool | firstAvailableOrEmpty("Tcp", "TcpLwip", "TcpNsc") != "" | |
| hasSctp | bool | false | |
| nodeType | string | "UE" | |
| servingNodeId | int | 0 |
The initial serving eNodeB of the UE; 0 if none |
| macNodeId | int | 1025+simu5g_seq("LteUe_macNodeId") | |
| hasD2D | bool | false | |
| hasIpv4 | bool | true | |
| hasIpv6 | bool | false | |
| numEthInterfaces | int | 0 | |
| extHostAddress | string | "" | |
| numLoInterfaces | int | 1 | |
| numPcapRecorders | int | 0 | |
| hasRniSupport | bool | false | |
| nrServingNodeId | int | 0 |
The initial serving gNodeB of the UE; 0 if none |
| nrMacNodeId | int | 2049+simu5g_seq("NrUe_macNodeId") |
Properties
| Name | Value | Description |
|---|---|---|
| networkNode | ||
| display | i=device/car |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| radioIn | input |
Connection to master |
|
| nrRadioIn | input |
Connection to master |
Unassigned submodule parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| interfaceTable.displayAddresses | bool | false |
whether to display IP addresses on links |
| eth.bitrate | double | ||
| at.displayStringTextFormat | string | "processed %p pk (%l)" |
determines the text that is written on top of the submodule |
| at.forwardServiceRegistration | bool | true | |
| at.forwardProtocolRegistration | bool | true | |
| tn.displayStringTextFormat | string | "processed %p pk (%l)" |
determines the text that is written on top of the submodule |
| tn.forwardServiceRegistration | bool | true | |
| tn.forwardProtocolRegistration | bool | true | |
| nl.displayStringTextFormat | string | "processed %p pk (%l)" |
determines the text that is written on top of the submodule |
| nl.forwardServiceRegistration | bool | true | |
| nl.forwardProtocolRegistration | bool | true | |
| pcapRecorder.verbose | bool | true |
whether to log packets on the module output |
| pcapRecorder.pcapFile | string | "" |
the PCAP file to be written |
| pcapRecorder.fileFormat | string | "pcapng" | |
| pcapRecorder.snaplen | int | 65535 |
maximum number of bytes to record per packet |
| pcapRecorder.dumpBadFrames | bool | true |
enable dump of frames with hasBitError |
| pcapRecorder.moduleNamePatterns | string | "wlan[*] eth[*] ppp[*]" |
space-separated list of sibling module names to listen on |
| pcapRecorder.sendingSignalNames | string | "packetSentToLower" |
space-separated list of outbound packet signals to subscribe to |
| pcapRecorder.receivingSignalNames | string | "packetReceivedFromLower" |
space-separated list of inbound packet signals to subscribe to |
| pcapRecorder.dumpProtocols | string | "ethernetmac ppp ieee80211mac" |
space-separated list of protocol names as defined in the Protocol class |
| pcapRecorder.packetFilter | object | "*" |
which packets are considered, matches all packets by default |
| pcapRecorder.helpers | string | "" |
usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper" |
| pcapRecorder.alwaysFlush | bool | false |
flush the pcapFile after each write to ensure that all packets are captured in case of a crash |
| pcapRecorder.displayStringTextFormat | string | "rec: %n pks" |
Source code
// // Defines a LteCar node as an NR User Equipment (UE) with vehicular-like // mobility. The latter is modeled by utilizing the Veins-Inet project. // // See https://veins.car2x.org/documentation/modules/#veins_inet // module NrCar extends NrUe { parameters: @display("i=device/car"); //# Mobility mobility.typename = default("VeinsInetMobility"); //# Network Layer specs *.routingTableModule = default(absPath(".ipv4.routingTable")); ipv4.configurator.typename = "HostAutoConfigurator"; ipv4.configurator.interfaces = "cellular lo0"; }File: src/simu5g/nodes/NrCar.ned