SingleCell_Standalone_D2D

Package: simu5g.simulations.nr.networks

SingleCell_Standalone_D2D

network

SingleCell_Standalone with its UEs split into three vectors, so that a configuration can address cellular terminals (ueCell), D2D transmitters (ueD2DTx) and D2D receivers (ueD2DRx) separately. The rest of the topology is the same: one gNodeB behind an intermediate and an anchor Upf, with a router and a server on the data network, plus numBgCells BackgroundCell interferers.

channelControl : LteChannelControl

Utility module that records the position of each LTE radio module in the network.

Source:
channelControl: LteChannelControl {
    @display("p=50,25;is=s");
} routingRecorder : RoutingTableRecorder
[from inet] ↗

Records changes in the routing tables (~Ipv4RoutingTable) and interface tables (~InterfaceTable) of...

Source:
routingRecorder: RoutingTableRecorder {
    @display("p=50,75;is=s");
} configurator : Ipv4NetworkConfigurator
[from inet] ↗

Assigns IPv4 addresses and sets up static routing for an IPv4 network.

Source:
configurator: Ipv4NetworkConfigurator {
    @display("p=50,125;is=s");
} binder : Binder

The Binder module functions as a global repository of network-related information utilized...

Source:
binder: Binder {
    @display("p=50,175;is=s");
} d2dBinder : D2dBinder

Global holder of the D2D-specific network state, split out of the core ~Binder.

Source:
d2dBinder: D2dBinder {
    @display("p=50,425;is=s");
} coreControl : CoreControl

The control plane of the core network, one per cellular network alongside its ~Binder and...

Source:
coreControl: CoreControl {
    @display("p=50,375;is=s");
} bearerConfigurator : BearerConfigurator

The network's bearer definitions: the operator's configuration of the data radio bearers, authored...

Source:
bearerConfigurator: BearerConfigurator {
    @display("p=50,225;is=s");
} carrierAggregation : CarrierAggregation

Implements the Carrier Aggregation (CA) functionality used at the Medium Access Control (MAC) layer...

Source:
carrierAggregation: CarrierAggregation {
    @display("p=50,275;is=s");
} server : StandardHost
[from inet] ↗

A comprehensive model of an IPv4/IPv6 host that provides a complete network stack with configurable...

Source:
server: StandardHost {
    @display("p=212,118;is=n;i=device/server");
} router : Router
[from inet] ↗

A network router device with support for multiple routing protocols and network interfaces.

Source:
router: Router {
    @display("p=363,115;i=device/smallrouter");
} upf : Upf

Implements the 5G Core User Plane Function (UPF).

Source:
upf: Upf {
    @display("p=527,116");
} iUpf : Upf

Implements the 5G Core User Plane Function (UPF).

Source:
iUpf: Upf {
    @display("p=725,118");
} gnb : gNodeB

Implements a gNodeB for a 5G network.

Source:
gnb: gNodeB {
    @display("p=726,277;is=vl");
} bgCell[numBgCells] : BackgroundCell

Implements a lightweight model for a 4G eNodeB or 5G gNodeB for generating configurable inter-cell...

Source:
bgCell[numBgCells]: BackgroundCell {
    @display("p=416,277;is=vl");
} ueCell[numUeCell] : NrUe

Models a User Equipment (UE) for a 5G/LTE network.

Source:
ueCell[numUeCell]: NrUe {
    @display("p=612,316");
} ueD2DTx[numUeD2DTx] : NrUe

Models a User Equipment (UE) for a 5G/LTE network.

Source:
ueD2DTx[numUeD2DTx]: NrUe {
    @display("p=550,423");
} ueD2DRx[numUeD2DRx] : NrUe

Models a User Equipment (UE) for a 5G/LTE network.

Source:
ueD2DRx[numUeD2DRx]: NrUe {
    @display("p=726,423");
}

Usage diagram

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Parameters

Name Type Default value Description
numUeCell int 0
numUeD2DTx int 0
numUeD2DRx int 0
numBgCells int 0

Properties

Name Value Description
isNetwork
display i=block/network2;bgb=826,558;bgi=background/pisa

Unassigned submodule parameters

Name Type Default value Description
channelControl.pMax double 20mW

Maximum sending power used for this network (in mW)

channelControl.sat double -110dBm

Signal attenuation threshold (in dBm)

channelControl.alpha double 2

Path loss coefficient

channelControl.carrierFrequency double 2.4GHz

Base carrier frequency of all the channels (in Hz)

channelControl.numChannels int 1

Number of radio channels (frequencies)

routingRecorder.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

routingRecorder.enabled bool true
routingRecorder.logfile string "${resultdir}/${configname}-#${runnumber}.rt"
configurator.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

configurator.minLinkWeight double 1E-3
configurator.configureIsolatedNetworksSeparatly bool false
configurator.config xml xml("")

XML configuration parameters for IP address assignment and adding manual routes

configurator.assignAddresses bool true

Assign IP addresses to all interfaces in the network

configurator.assignUniqueAddresses bool true

Avoid using the same address and raise an error if not possible

configurator.assignDisjunctSubnetAddresses bool true

Avoid using the same address prefix and netmask on different links when assigning IP addresses to interfaces

configurator.addStaticRoutes bool true

Add static routes to the routing tables of all nodes to route to all destination interfaces (only where applicable; turn off when config file contains manual routes)

configurator.addDefaultRoutes bool true

Add default routes if all routes from a source node go through the same gateway (used only if addStaticRoutes is true)

configurator.addSubnetRoutes bool true

Add subnet routes instead of destination interface routes (only where applicable; used only if addStaticRoutes is true)

configurator.addDirectRoutes bool true

Add direct routes towards local network members (i.e. directly connected interfaces) to the routing table (used only if addStaticRoutes is true)

configurator.addRemoteRoutes bool true

Add routes towards remote (non-directly-connected) destinations via a gateway (used only if addStaticRoutes is true)

configurator.optimizeRoutes bool true

Optimize routing tables by merging routes, the resulting routing table might route more packets than the original (used only if addStaticRoutes is true)

configurator.addManualRoutes bool true

Add manual routes from the XML configuration; independent of addStaticRoutes

configurator.updateRoutes bool false

Recalculate static routes if an interface goes down/up or a carrier is lost/back

configurator.dumpTopology bool false

Print extracted network topology to the module output

configurator.dumpLinks bool false

Print recognized network links to the module output

configurator.dumpAddresses bool false

Print assigned IP addresses for all interfaces to the module output

configurator.dumpRoutes bool false

Print configured and optimized routing tables for all nodes to the module output

configurator.dumpConfig string ""

Write configuration into the given config file that can be fed back to speed up subsequent runs (network configurations)

binder.blerShift int 0
binder.maxDataRatePerRb double 1.16Mbps
binder.printTrafficGeneratorConfig bool false
d2dBinder.binderModule string "binder"
coreControl.binderModule string "binder"
coreControl.bearerConfiguratorModule string "bearerConfigurator"
bearerConfigurator.binderModule string "binder"
bearerConfigurator.staticDrbs object []

JSON array: [{coreNetwork, ue, drbId, profile, mappedQfis, filters, lcg, rlcMode, legs, isDefault, suppressSdapHeader, rohc, gbr, packetDelayBudget, packetErrorRate, qosPriorityLevel}, ...]; see banner comment for details

bearerConfigurator.onDemandDrbs object [ // JSON array, staticDrbs schema minus "drbId" (and "ue" optional): bearers created when traffic first matches them; the default value lets both stack kinds run unauthored; see banner comment for details {coreNetwork: "epc", filters: ["VoIP*"], lcg: 0, rlcMode: "UM"}, {coreNetwork: "epc", filters: ["gaming*"], lcg: 2, rlcMode: "UM"}, {coreNetwork: "epc", filters: ["VoDPacket*", "VoDFinishPacket*"], lcg: 1, rlcMode: "UM"}, {coreNetwork: "epc", isDefault: true, lcg: 3, rlcMode: "UM"}, {coreNetwork: "5gc", isDefault: true, suppressSdapHeader: true, lcg: 3, rlcMode: "UM"} ]
bearerConfigurator.drbProfiles object {}

JSON map of named field groups referenced by the staticDrbs entries' "profile" field, e.g. {voice: {rlcMode: "UM", gbr: true, ...}, ...}; see banner comment

bearerConfigurator.dlQfiRules object [{dscpAsQfi: true}]

QFI classification rules, delivered to their evaluation sites (see banner comment)

bearerConfigurator.ulQfiRules object []

JSON array of uplink QFI-assignment rules [{ue, filter, qfi|dscpAsQfi}, ...], delivered to the UEs' QoS-flow classifiers; [] = classify nothing

bearerConfigurator.amPerThreshold double 1e-4

QoS-derived RAN defaults for definitions that do not state rlcMode/lcg themselves (operator policy, not spec-mandated: 3GPP standardizes the QoS characteristics, the RAN chooses what to make of them)

bearerConfigurator.lcgPriorityBounds object [25, 50, 75]

Lcg derivation: qosPriorityLevel < bounds[k] -> LCG k, else LCG 3; strictly ascending, one bound between each pair of adjacent LCGs

bearerConfigurator.rohcForDrbProfiles object ["5qi-1", "qci-1"]

Header compression policy: definitions naming one of these profiles get "rohc: true" unless they state rohc themselves, on IP sessions; default: the voice bearers

carrierAggregation.componentCarrier.binderModule string "binder"
carrierAggregation.componentCarrier.carrierFrequency double 2GHz

Carrier Frequency (GHz)

carrierAggregation.componentCarrier.numBands int 6

Number of bands for this channel

carrierAggregation.componentCarrier.numerologyIndex int 0

Numerology index

carrierAggregation.componentCarrier.useTdd bool false
carrierAggregation.componentCarrier.tddNumSymbolsDl int 7
carrierAggregation.componentCarrier.tddNumSymbolsUl int 7
server.status.displayStringTextFormat string "{stateStr}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.status.initialStatus string "UP"

TODO @signal, @statistic

server.environment.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.environment.initStage int 0

Initialization stage for the setup command

server.environment.globalNamespace bool false

Create new network namespaces under /var/run/netns/ (Linux only)

server.environment.namespace string ""

Name of the host OS network namespace (optional) (Linux only)

server.environment.setupCommand string ""

A host OS system command

server.environment.teardownCommand string ""

A host OS system command

server.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.pcapRecorder.verbose bool true

Whether to log packets on the module output

server.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

server.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

server.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

server.pcapRecorder.fileFormat string "pcapng"
server.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

server.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

server.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

server.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*]"

Space-separated list of sibling module names to listen on

server.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

server.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

server.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

server.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

server.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

server.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

server.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

server.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.cb.interfaceTableModule string

Module path to the InterfaceTable module

server.cb.forwardServiceRegistration bool true
server.cb.forwardProtocolRegistration bool true
server.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

server.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

server.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

server.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.bl.interfaceTableModule string

Module path to the InterfaceTable module

server.bl.forwardServiceRegistration bool true
server.bl.forwardProtocolRegistration bool true
server.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

server.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

server.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

server.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.li.interfaceTableModule string

Module path to the InterfaceTable module

server.li.forwardServiceRegistration bool true
server.li.forwardProtocolRegistration bool true
server.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

server.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

server.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

server.eth.bitrate double
server.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.nl.interfaceTableModule string

Module path to the InterfaceTable module

server.nl.forwardServiceRegistration bool true
server.nl.forwardProtocolRegistration bool true
server.nl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

server.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

server.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

server.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.tn.interfaceTableModule string

Module path to the InterfaceTable module

server.tn.forwardServiceRegistration bool true
server.tn.forwardProtocolRegistration bool true
server.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

server.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

server.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

server.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

server.at.interfaceTableModule string

Module path to the InterfaceTable module

server.at.forwardServiceRegistration bool true
server.at.forwardProtocolRegistration bool true
server.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

server.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

server.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

router.status.displayStringTextFormat string "{stateStr}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.status.initialStatus string "UP"

TODO @signal, @statistic

router.environment.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.environment.initStage int 0

Initialization stage for the setup command

router.environment.globalNamespace bool false

Create new network namespaces under /var/run/netns/ (Linux only)

router.environment.namespace string ""

Name of the host OS network namespace (optional) (Linux only)

router.environment.setupCommand string ""

A host OS system command

router.environment.teardownCommand string ""

A host OS system command

router.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.pcapRecorder.verbose bool true

Whether to log packets on the module output

router.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

router.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

router.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

router.pcapRecorder.fileFormat string "pcapng"
router.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

router.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

router.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

router.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*]"

Space-separated list of sibling module names to listen on

router.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

router.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

router.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

router.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

router.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

router.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

router.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

router.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.cb.interfaceTableModule string

Module path to the InterfaceTable module

router.cb.forwardServiceRegistration bool true
router.cb.forwardProtocolRegistration bool true
router.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

router.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

router.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

router.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.bl.interfaceTableModule string

Module path to the InterfaceTable module

router.bl.forwardServiceRegistration bool true
router.bl.forwardProtocolRegistration bool true
router.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

router.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

router.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

router.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.li.interfaceTableModule string

Module path to the InterfaceTable module

router.li.forwardServiceRegistration bool true
router.li.forwardProtocolRegistration bool true
router.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

router.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

router.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

router.eth.bitrate double
router.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.nl.interfaceTableModule string

Module path to the InterfaceTable module

router.nl.forwardServiceRegistration bool true
router.nl.forwardProtocolRegistration bool true
router.nl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

router.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

router.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

router.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.tn.interfaceTableModule string

Module path to the InterfaceTable module

router.tn.forwardServiceRegistration bool true
router.tn.forwardProtocolRegistration bool true
router.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

router.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

router.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

router.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

router.at.interfaceTableModule string

Module path to the InterfaceTable module

router.at.forwardServiceRegistration bool true
router.at.forwardProtocolRegistration bool true
router.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

router.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

router.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

router.bgp.interfaceTableModule string

The path to the InterfaceTable module

router.bgp.routingTableModule string
router.bgp.addressFamily string

address family this BGP instance operates on

router.bgp.routerId string

the 4-octet BGP Identifier (required for IPv6)

router.bgp.ospfRoutingModule string parent.hasOspf ? "^.ospf" : ""
upf.status.displayStringTextFormat string "{stateStr}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.status.initialStatus string "UP"

TODO @signal, @statistic

upf.environment.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.environment.initStage int 0

Initialization stage for the setup command

upf.environment.globalNamespace bool false

Create new network namespaces under /var/run/netns/ (Linux only)

upf.environment.namespace string ""

Name of the host OS network namespace (optional) (Linux only)

upf.environment.setupCommand string ""

A host OS system command

upf.environment.teardownCommand string ""

A host OS system command

upf.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.pcapRecorder.verbose bool true

Whether to log packets on the module output

upf.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

upf.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

upf.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

upf.pcapRecorder.fileFormat string "pcapng"
upf.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

upf.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

upf.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

upf.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*]"

Space-separated list of sibling module names to listen on

upf.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

upf.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

upf.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

upf.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

upf.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

upf.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

upf.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

upf.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.cb.interfaceTableModule string

Module path to the InterfaceTable module

upf.cb.forwardServiceRegistration bool true
upf.cb.forwardProtocolRegistration bool true
upf.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.bl.interfaceTableModule string

Module path to the InterfaceTable module

upf.bl.forwardServiceRegistration bool true
upf.bl.forwardProtocolRegistration bool true
upf.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.li.interfaceTableModule string

Module path to the InterfaceTable module

upf.li.forwardServiceRegistration bool true
upf.li.forwardProtocolRegistration bool true
upf.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.eth.bitrate double
upf.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.nl.interfaceTableModule string

Module path to the InterfaceTable module

upf.nl.forwardServiceRegistration bool true
upf.nl.forwardProtocolRegistration bool true
upf.nl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.tn.interfaceTableModule string

Module path to the InterfaceTable module

upf.tn.forwardServiceRegistration bool true
upf.tn.forwardProtocolRegistration bool true
upf.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.at.interfaceTableModule string

Module path to the InterfaceTable module

upf.at.forwardServiceRegistration bool true
upf.at.forwardProtocolRegistration bool true
upf.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.dnPpp.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.dnPpp.pcapRecorder.verbose bool true

Whether to log packets on the module output

upf.dnPpp.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

upf.dnPpp.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

upf.dnPpp.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

upf.dnPpp.pcapRecorder.fileFormat string "pcapng"
upf.dnPpp.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

upf.dnPpp.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

upf.dnPpp.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

upf.dnPpp.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

upf.dnPpp.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

upf.dnPpp.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

upf.dnPpp.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

upf.dnPpp.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

upf.dnPpp.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

upf.dnPpp.ppp.displayStringTextFormat string "rate: %b\nsent: %s, rcvd: %r\nqueue: %q, drop: %d"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.dnPpp.ppp.interfaceTableModule string

The path to the InterfaceTable module

upf.dnPpp.ppp.sendRawBytes bool false

When true packets are serialized into a sequence of bytes before sending out

upf.dnPpp.ppp.mtu int 4470B
upf.dnPpp.ppp.stopOperationExtraTime double -1s

Extra time after lifecycle stop operation finished

upf.dnPpp.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

upf.relay.trafficFlowFilter.binderModule string "binder"
upf.relay.trafficFlowFilter.fastForwarding bool true
upf.relay.gtpUser.binderModule string "binder"
upf.relay.gtpUser.localPort int 31
upf.relay.gtpUser.tunnelPeerPort int 31
upf.rd.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.rd.interfaceTableModule string

Module path to the InterfaceTable module

upf.rd.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.nodeControl.binderModule string "binder"
upf.nodeControl.gtpUserModule string "^.relay.gtpUser"
upf.nodeControl.trafficFlowFilterModule string "^.relay.trafficFlowFilter"
upf.nodeControl.ethernetBridgeModule string "^.ethBridge.sessionMux"

The node's Ethernet session bridge (see EthernetSessionBridge), if it has one

upf.nodeControl.unstructuredPrefix string ""

The prefix the N6 addresses of Unstructured sessions are allocated from, e.g. "2001:db8:5::/64" or "10.5.0.0/16"; empty = the node anchors no Unstructured session (see the main comment)

upf.nodeControl.unstructuredServer string ""

The application server the Unstructured sessions' uplink goes to: a module path relative to the network, resolved in the family of unstructuredPrefix

upf.nodeControl.unstructuredServerPort int -1

The UDP port of unstructuredServer the uplink goes to; must be set for Unstructured sessions

upf.nodeControl.unstructuredPort int -1

The UDP port the node receives the Unstructured sessions' downlink on, and sends their uplink from; must be set for Unstructured sessions

upf.ndResponder.binderModule string "binder"
upf.ndResponder.linkLocalAddress string "fe80::1"

The router's address on every session's link

upf.ndResponder.routerLifetime double 9000s

Router Lifetime in the Router Advertisements (max 9000s, RFC 4861)

upf.ndResponder.curHopLimit int 64

Cur Hop Limit in the Router Advertisements (0 = unspecified)

upf.ndResponder.checksumMode string "declared"
upf.ethBridge.macTable.agingTime double
upf.ethBridge.macTable.forwardingTableFile string
upf.ethBridge.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.ethBridge.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

upf.ethBridge.sessionMux.interfaceTableModule string

The bridge's interface table, which the session ports are registered in

upf.ethBridge.sessionMux.macTableModule string

The bridge's MAC table, flushed of a released session's port

upf.ethBridge.sessionMux.portModuleType string "simu5g.corenetwork.ethernetSessionBridge.EthernetSessionPort"

The module type of the session ports

upf.ethBridge.sessionMux.portDisplayString string "p=500,420,row,100;g=sessionPorts"

Display string of the session ports (their place in the bridge's layout)

upf.ethBridge.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.ethBridge.cb.interfaceTableModule string

Module path to the InterfaceTable module

upf.ethBridge.cb.forwardServiceRegistration bool true
upf.ethBridge.cb.forwardProtocolRegistration bool true
upf.ethBridge.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.ethBridge.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.ethBridge.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.ethBridge.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.ethBridge.bl.interfaceTableModule string

Module path to the InterfaceTable module

upf.ethBridge.bl.forwardServiceRegistration bool true
upf.ethBridge.bl.forwardProtocolRegistration bool true
upf.ethBridge.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.ethBridge.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.ethBridge.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.ethBridge.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

upf.ethBridge.li.interfaceTableModule string

Module path to the InterfaceTable module

upf.ethBridge.li.forwardServiceRegistration bool true
upf.ethBridge.li.forwardProtocolRegistration bool true
upf.ethBridge.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

upf.ethBridge.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

upf.ethBridge.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

upf.dnEth.bitrate double
iUpf.status.displayStringTextFormat string "{stateStr}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.status.initialStatus string "UP"

TODO @signal, @statistic

iUpf.environment.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.environment.initStage int 0

Initialization stage for the setup command

iUpf.environment.globalNamespace bool false

Create new network namespaces under /var/run/netns/ (Linux only)

iUpf.environment.namespace string ""

Name of the host OS network namespace (optional) (Linux only)

iUpf.environment.setupCommand string ""

A host OS system command

iUpf.environment.teardownCommand string ""

A host OS system command

iUpf.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.pcapRecorder.verbose bool true

Whether to log packets on the module output

iUpf.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

iUpf.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

iUpf.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

iUpf.pcapRecorder.fileFormat string "pcapng"
iUpf.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

iUpf.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

iUpf.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

iUpf.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*]"

Space-separated list of sibling module names to listen on

iUpf.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

iUpf.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

iUpf.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

iUpf.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

iUpf.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

iUpf.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

iUpf.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

iUpf.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.cb.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.cb.forwardServiceRegistration bool true
iUpf.cb.forwardProtocolRegistration bool true
iUpf.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.bl.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.bl.forwardServiceRegistration bool true
iUpf.bl.forwardProtocolRegistration bool true
iUpf.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.li.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.li.forwardServiceRegistration bool true
iUpf.li.forwardProtocolRegistration bool true
iUpf.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.eth.bitrate double
iUpf.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.nl.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.nl.forwardServiceRegistration bool true
iUpf.nl.forwardProtocolRegistration bool true
iUpf.nl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.tn.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.tn.forwardServiceRegistration bool true
iUpf.tn.forwardProtocolRegistration bool true
iUpf.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.at.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.at.forwardServiceRegistration bool true
iUpf.at.forwardProtocolRegistration bool true
iUpf.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.dnPpp.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.dnPpp.pcapRecorder.verbose bool true

Whether to log packets on the module output

iUpf.dnPpp.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

iUpf.dnPpp.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

iUpf.dnPpp.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

iUpf.dnPpp.pcapRecorder.fileFormat string "pcapng"
iUpf.dnPpp.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

iUpf.dnPpp.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

iUpf.dnPpp.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

iUpf.dnPpp.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

iUpf.dnPpp.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

iUpf.dnPpp.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

iUpf.dnPpp.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

iUpf.dnPpp.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

iUpf.dnPpp.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

iUpf.dnPpp.ppp.displayStringTextFormat string "rate: %b\nsent: %s, rcvd: %r\nqueue: %q, drop: %d"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.dnPpp.ppp.interfaceTableModule string

The path to the InterfaceTable module

iUpf.dnPpp.ppp.sendRawBytes bool false

When true packets are serialized into a sequence of bytes before sending out

iUpf.dnPpp.ppp.mtu int 4470B
iUpf.dnPpp.ppp.stopOperationExtraTime double -1s

Extra time after lifecycle stop operation finished

iUpf.dnPpp.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

iUpf.relay.trafficFlowFilter.binderModule string "binder"
iUpf.relay.trafficFlowFilter.fastForwarding bool true
iUpf.relay.gtpUser.binderModule string "binder"
iUpf.relay.gtpUser.localPort int 31
iUpf.relay.gtpUser.tunnelPeerPort int 31
iUpf.rd.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.rd.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.rd.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.nodeControl.binderModule string "binder"
iUpf.nodeControl.gtpUserModule string "^.relay.gtpUser"
iUpf.nodeControl.trafficFlowFilterModule string "^.relay.trafficFlowFilter"
iUpf.nodeControl.ethernetBridgeModule string "^.ethBridge.sessionMux"

The node's Ethernet session bridge (see EthernetSessionBridge), if it has one

iUpf.nodeControl.unstructuredPrefix string ""

The prefix the N6 addresses of Unstructured sessions are allocated from, e.g. "2001:db8:5::/64" or "10.5.0.0/16"; empty = the node anchors no Unstructured session (see the main comment)

iUpf.nodeControl.unstructuredServer string ""

The application server the Unstructured sessions' uplink goes to: a module path relative to the network, resolved in the family of unstructuredPrefix

iUpf.nodeControl.unstructuredServerPort int -1

The UDP port of unstructuredServer the uplink goes to; must be set for Unstructured sessions

iUpf.nodeControl.unstructuredPort int -1

The UDP port the node receives the Unstructured sessions' downlink on, and sends their uplink from; must be set for Unstructured sessions

iUpf.ndResponder.binderModule string "binder"
iUpf.ndResponder.linkLocalAddress string "fe80::1"

The router's address on every session's link

iUpf.ndResponder.routerLifetime double 9000s

Router Lifetime in the Router Advertisements (max 9000s, RFC 4861)

iUpf.ndResponder.curHopLimit int 64

Cur Hop Limit in the Router Advertisements (0 = unspecified)

iUpf.ndResponder.checksumMode string "declared"
iUpf.ethBridge.macTable.agingTime double
iUpf.ethBridge.macTable.forwardingTableFile string
iUpf.ethBridge.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.ethBridge.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

iUpf.ethBridge.sessionMux.interfaceTableModule string

The bridge's interface table, which the session ports are registered in

iUpf.ethBridge.sessionMux.macTableModule string

The bridge's MAC table, flushed of a released session's port

iUpf.ethBridge.sessionMux.portModuleType string "simu5g.corenetwork.ethernetSessionBridge.EthernetSessionPort"

The module type of the session ports

iUpf.ethBridge.sessionMux.portDisplayString string "p=500,420,row,100;g=sessionPorts"

Display string of the session ports (their place in the bridge's layout)

iUpf.ethBridge.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.ethBridge.cb.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.ethBridge.cb.forwardServiceRegistration bool true
iUpf.ethBridge.cb.forwardProtocolRegistration bool true
iUpf.ethBridge.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.ethBridge.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.ethBridge.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.ethBridge.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.ethBridge.bl.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.ethBridge.bl.forwardServiceRegistration bool true
iUpf.ethBridge.bl.forwardProtocolRegistration bool true
iUpf.ethBridge.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.ethBridge.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.ethBridge.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.ethBridge.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

iUpf.ethBridge.li.interfaceTableModule string

Module path to the InterfaceTable module

iUpf.ethBridge.li.forwardServiceRegistration bool true
iUpf.ethBridge.li.forwardProtocolRegistration bool true
iUpf.ethBridge.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

iUpf.ethBridge.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

iUpf.ethBridge.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

iUpf.dnEth.bitrate double
gnb.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

gnb.mobility.displayStringTextFormat string "p: {position}\nv: {velocity}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.mobility.subjectModule string "^"

The module path that determines the subject module, the motion of which this mobility model describes. The default value is the parent module

gnb.mobility.coordinateSystemModule string ""

The module path of the geographic coordinate system module; optional, empty disables geographic conversion (and the {geo_position} directive)

gnb.mobility.updateDisplayString bool true

Enables continuous update of the subject module's position by modifying its display string

gnb.mobility.constraintAreaMinX double -inf m

The minimum x position of the constraint area. It is unconstrained by default (negative infinity)

gnb.mobility.constraintAreaMinY double -inf m

The minimum y position of the constraint area. It is unconstrained by default (negative infinity)

gnb.mobility.constraintAreaMinZ double -inf m

The minimum z position of the constraint area. It is unconstrained by default (negative infinity)

gnb.mobility.constraintAreaMaxX double inf m

The maximum x position of the constraint area. It is unconstrained by default (positive infinity)

gnb.mobility.constraintAreaMaxY double inf m

The maximum y position of the constraint area. It is unconstrained by default (positive infinity)

gnb.mobility.constraintAreaMaxZ double inf m

The maximum z position of the constraint area. It is unconstrained by default (positive infinity)

gnb.mobility.initialX double uniform(this.constraintAreaMinX, this.constraintAreaMaxX)
gnb.mobility.initialY double uniform(this.constraintAreaMinY, this.constraintAreaMaxY)
gnb.mobility.initialZ double nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))
gnb.mobility.initialLatitude double nan deg
gnb.mobility.initialLongitude double nan deg
gnb.mobility.initialAltitude double 0m
gnb.mobility.initialHeading double 0deg
gnb.mobility.initialElevation double 0deg
gnb.mobility.initialBank double 0deg
gnb.mobility.initFromDisplayString bool true

Enables one-time initialization from the subject module's display string

gnb.mobility.updateFromDisplayString bool true

Enables continuous update from the subject module's display string for dragging and rotating it

gnb.cellInfo.constraintAreaMinX double -1m/0

The minimum X-coordinate of the area constraint, unconstrained by default

gnb.cellInfo.constraintAreaMinY double -1m/0

The minimum Y-coordinate of the area constraint, unconstrained by default

gnb.cellInfo.constraintAreaMaxX double 1m/0

The maximum X-coordinate of the area constraint, unconstrained by default

gnb.cellInfo.constraintAreaMaxY double 1m/0

The maximum Y-coordinate of the area constraint, unconstrained by default

gnb.cellInfo.beaconInterval double 1s

Interval for sending broadcast messages (used for handover or DAS)

gnb.cellInfo.microCell bool false

Type of eNodeB (MICRO / MACRO) - valid only for eNodeBs

gnb.cellInfo.rbyDl int 12

Number of sub-carriers per RB in DL

gnb.cellInfo.rbyUl int 12

Number of sub-carriers per RB in UL

gnb.cellInfo.rbxDl int 7

Number of OFDM symbols per slot in DL

gnb.cellInfo.rbxUl int 7

Number of OFDM symbols per slot in UL

gnb.cellInfo.rbPilotDl int 3

Number of pilot Resource Elements per RB in DL

gnb.cellInfo.rbPilotUl int 0

Number of pilot Resource Elements per RB in UL

gnb.cellInfo.signalDl int 1

Number of signaling symbols for each Resource Block in DL

gnb.cellInfo.signalUl int 1

Number of signaling symbols for each Resource Block in UL

gnb.cellInfo.numPreferredBands int 1

Number of preferred bands to use (relevant only in PREFERRED mode)

gnb.cellInfo.binderModule string "binder"
gnb.collector.collectorType string

One of "eNBStatsCollector", "gNBStatsCollector", "ueStatsCollector", "NrUeStatsCollector"

gnb.pppIf.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.pppIf.pcapRecorder.verbose bool true

Whether to log packets on the module output

gnb.pppIf.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

gnb.pppIf.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

gnb.pppIf.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

gnb.pppIf.pcapRecorder.fileFormat string "pcapng"
gnb.pppIf.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

gnb.pppIf.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

gnb.pppIf.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

gnb.pppIf.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

gnb.pppIf.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

gnb.pppIf.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

gnb.pppIf.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

gnb.pppIf.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

gnb.pppIf.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

gnb.pppIf.ppp.displayStringTextFormat string "rate: %b\nsent: %s, rcvd: %r\nqueue: %q, drop: %d"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.pppIf.ppp.interfaceTableModule string

The path to the InterfaceTable module

gnb.pppIf.ppp.sendRawBytes bool false

When true packets are serialized into a sequence of bytes before sending out

gnb.pppIf.ppp.mtu int 4470B
gnb.pppIf.ppp.stopOperationExtraTime double -1s

Extra time after lifecycle stop operation finished

gnb.pppIf.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

gnb.x2ppp.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.x2ppp.pcapRecorder.verbose bool true

Whether to log packets on the module output

gnb.x2ppp.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

gnb.x2ppp.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

gnb.x2ppp.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

gnb.x2ppp.pcapRecorder.fileFormat string "pcapng"
gnb.x2ppp.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

gnb.x2ppp.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

gnb.x2ppp.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

gnb.x2ppp.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

gnb.x2ppp.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

gnb.x2ppp.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

gnb.x2ppp.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

gnb.x2ppp.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

gnb.x2ppp.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

gnb.x2ppp.ppp.displayStringTextFormat string "rate: %b\nsent: %s, rcvd: %r\nqueue: %q, drop: %d"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.x2ppp.ppp.interfaceTableModule string

The path to the InterfaceTable module

gnb.x2ppp.ppp.sendRawBytes bool false

When true packets are serialized into a sequence of bytes before sending out

gnb.x2ppp.ppp.mtu int 4470B
gnb.x2ppp.ppp.stopOperationExtraTime double -1s

Extra time after lifecycle stop operation finished

gnb.x2ppp.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

gnb.pppMEHostIf.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.pppMEHostIf.pcapRecorder.verbose bool true

Whether to log packets on the module output

gnb.pppMEHostIf.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

gnb.pppMEHostIf.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

gnb.pppMEHostIf.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

gnb.pppMEHostIf.pcapRecorder.fileFormat string "pcapng"
gnb.pppMEHostIf.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

gnb.pppMEHostIf.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

gnb.pppMEHostIf.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

gnb.pppMEHostIf.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

gnb.pppMEHostIf.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

gnb.pppMEHostIf.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

gnb.pppMEHostIf.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

gnb.pppMEHostIf.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

gnb.pppMEHostIf.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

gnb.pppMEHostIf.ppp.displayStringTextFormat string "rate: %b\nsent: %s, rcvd: %r\nqueue: %q, drop: %d"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.pppMEHostIf.ppp.interfaceTableModule string

The path to the InterfaceTable module

gnb.pppMEHostIf.ppp.sendRawBytes bool false

When true packets are serialized into a sequence of bytes before sending out

gnb.pppMEHostIf.ppp.mtu int 4470B
gnb.pppMEHostIf.ppp.stopOperationExtraTime double -1s

Extra time after lifecycle stop operation finished

gnb.pppMEHostIf.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

gnb.udp.displayStringTextFormat string "passed up: {numPassedUp} pks\nsent: {numSent} pks{udpDroppedText}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.udp.interfaceTableModule string

The path to the InterfaceTable module

gnb.udp.checksumMode string "declared"
gnb.udp.defaultMulticastLoop bool true
gnb.tcp.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.tcp.checksumMode string "declared"
gnb.tcp.advertisedWindow int 14 * this.mss

In bytes, corresponds with the maximal receiver buffer capacity (Note: normally, NIC queues should be at least this size)

gnb.tcp.delayedAcksEnabled bool false

Delayed ACK algorithm (RFC 1122) enabled/disabled

gnb.tcp.nagleEnabled bool true

Nagle's algorithm (RFC 896) enabled/disabled

gnb.tcp.limitedTransmitEnabled bool false

Limited Transmit algorithm (RFC 3042) enabled/disabled (can be used for TcpReno/TcpTahoe/TcpNewReno/TcpNoCongestionControl)

gnb.tcp.increasedIWEnabled bool false

Increased Initial Window (RFC 3390) enabled/disabled

gnb.tcp.sackSupport bool false

Selective Acknowledgment (RFC 2018, 2883, 3517) support (header option) (SACK will be enabled for a connection if both endpoints support it)

gnb.tcp.windowScalingSupport bool false

Window Scale (RFC 1323) support (header option) (WS will be enabled for a connection if both endpoints support it)

gnb.tcp.windowScalingFactor int -1

Window Scaling Factor given as a shift count. Valid values are 0..14, and -1 for automatic selection (it chooses the smallest shift count that makes advertisedWindow representable in 16 bits)

gnb.tcp.timestampSupport bool false

Timestamps (RFC 1323) support (header option) (TS will be enabled for a connection if both endpoints support it)

gnb.tcp.mss int 536

Maximum Segment Size (header option). Default 536 per RFC 1122.

gnb.tcp.msl int 120s

Maximum Segment Lifetime

gnb.tcp.tcpAlgorithmClass string "TcpReno"
gnb.tcp.dupthresh int 3

Used for TcpTahoe, TcpReno, and SACK (RFC 3517) DO NOT change unless you really know what you are doing

gnb.tcp.initialSsthresh int 0xFFFFFFFF

Initial value for Slow Start threshold used in TahoeRenoFamily. The initial value of ssthresh SHOULD be set arbitrarily high (e.g., to the size of the largest possible advertised window) Without user interaction there is no limit...

gnb.tcp.stopOperationExtraTime double 0s

Extra time after lifecycle stop operation finished

gnb.tcp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

gnb.tcp.ecnWillingness bool false

True if willing to use ECN

gnb.tcp.dctcpGamma double 0.0625

A fixed estimation gain for calculating dctcp_alpha (RFC 8257 4.2)

gnb.tcp.pmtudEnabled bool false

Path MTU Discovery (RFC 1191, RFC 1981) enabled/disabled

gnb.tcp.pmtudTimeout double 600s

Time after which the original MSS is restored to probe for increased path MTU (RFC 1191, Section 6.3)

gnb.x2App.client.displayStringTextFormat string "{socketState}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.x2App.client.localAddress string ""

Comma-separated list of addresses

gnb.x2App.client.localPort int 0

Port number to listen on

gnb.x2App.client.connectAddress string

Server address (may be symbolic)

gnb.x2App.client.connectPort int 5000

Port number to connect to

gnb.x2App.client.startTime double 0s

Time the first session begins

gnb.x2App.client.numRequestsPerSession int 1

Number of requests sent per session

gnb.x2App.client.numPacketsToReceive int 0
gnb.x2App.client.requestLength int 1452

Length of a request (bytes)

gnb.x2App.client.thinkTime double 0s

Time gap between requests

gnb.x2App.client.waitToClose double 0s

Time to wait between the last message sent and abort

gnb.x2App.client.reconnectInterval double 0s

If the connection breaks, waits this much before trying to reconnect

gnb.x2App.client.inboundStreams int 17
gnb.x2App.client.outboundStreams int 1
gnb.x2App.client.echo bool false

Echoes received packages when true

gnb.x2App.client.ordered bool true
gnb.x2App.client.queueSize int 0
gnb.x2App.client.prMethod int 0

0=NONE, 1=PR_TTL, 2=PR_RTX, 3=PR_PRIO, 4=PR_STRRST

gnb.x2App.client.prValue double 0

For PR-SCTP

gnb.x2App.client.streamReset bool false
gnb.x2App.client.streamRequestTime double 0s
gnb.x2App.client.streamResetType int 5

NO_RESET=5, RESET_OUTGOING=6, RESET_INCOMING=7, RESET_BOTH=8, SSN_TSN=9

gnb.x2App.client.streamToReset int 0
gnb.x2App.client.stopTime double -1s

Time of finishing sending, negative values mean forever

gnb.x2App.client.primaryTime double 0s
gnb.x2App.client.newPrimary string ""
gnb.x2App.client.streamRequestLengths string ""
gnb.x2App.client.streamRequestRatio string ""
gnb.x2App.client.streamPriorities string ""
gnb.x2App.client.finishEndsSimulation bool false
gnb.x2App.client.binderModule string "binder"
gnb.x2App.server.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.x2App.server.localAddress string ""

Comma-separated list of addresses

gnb.x2App.server.localPort int 0

Port number to listen on

gnb.x2App.server.echo bool false

Echoes received packages when true

gnb.x2App.server.echoDelay double 0s
gnb.x2App.server.delayFirstRead double 0s
gnb.x2App.server.readingInterval double 0s
gnb.x2App.server.messagesToPush int 0
gnb.x2App.server.numPacketsToSendPerClient int 0

Number of requests sent per session

gnb.x2App.server.numPacketsToReceivePerClient int 1
gnb.x2App.server.requestLength int 1452

Length of a request (bytes)

gnb.x2App.server.thinkTime double 0s

Time gap between requests

gnb.x2App.server.waitToClose double 0s

Time to wait between last message sent and abort

gnb.x2App.server.finishEndsSimulation bool false
gnb.x2App.server.ordered bool true
gnb.x2App.server.inboundStreams int 17
gnb.x2App.server.outboundStreams int 1
gnb.x2App.server.queueSize int 0
gnb.x2App.server.prMethod int 0

0=NONE, 1=PR_TTL, 2=PR_RTX, 3=PR_PRIO, 4=PR_STRRST

gnb.x2App.server.prValue double 0

For PR-SCTP

gnb.x2App.server.streamReset bool false
gnb.x2App.server.streamRequestTime double 0s
gnb.x2App.server.streamToReset int 0
gnb.x2App.server.streamPriorities string ""
gnb.x2App.server.binderModule string "binder"
gnb.sctp.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.sctp.interfaceTableModule string
gnb.sctp.routingTableModule string
gnb.sctp.checksumMode string "declared"
gnb.sctp.numGapReports int 3
gnb.sctp.rtoInitial double 3s
gnb.sctp.rtoMin double 1s
gnb.sctp.rtoMax double 60s
gnb.sctp.rtoAlpha double 0.125
gnb.sctp.rtoBeta double 0.250
gnb.sctp.maxBurst int 4
gnb.sctp.maxBurstVariant string "maxBurst"
gnb.sctp.initialWindow int 0
gnb.sctp.assocMaxRetrans int 10
gnb.sctp.pathMaxRetrans int 5
gnb.sctp.maxInitRetrans int 8
gnb.sctp.sackPeriod double 200ms
gnb.sctp.sackFrequency int 2
gnb.sctp.reactivatePrimaryPath bool false
gnb.sctp.sendQueueLimit int 0
gnb.sctp.validCookieLifetime double 10s
gnb.sctp.enableHeartbeats bool true
gnb.sctp.hbInterval double 30s
gnb.sctp.sendHeartbeatsOnActivePaths bool false
gnb.sctp.nagleEnabled bool true
gnb.sctp.naglePoint int 1468
gnb.sctp.fragPoint int 1452
gnb.sctp.fastRecoverySupported bool true
gnb.sctp.sctpAlgorithmClass string "SctpAlg"
gnb.sctp.ccModule int 0

RFC4960=0

gnb.sctp.osbWithHeader bool false
gnb.sctp.RTXMethod int 0

0=Once after 3 Sacks; 1=once per RTT; 2=Switch off Fast Retransmit; 3=Always after 3 Sacks

gnb.sctp.ssModule int 0
gnb.sctp.arwnd int 65535
gnb.sctp.swsLimit int 3000

Limit for SWS

gnb.sctp.udpEncapsEnabled bool false
gnb.sctp.natFriendly bool false
gnb.sctp.bytesToAddPerRcvdChunk int 0

For flow control

gnb.sctp.bytesToAddPerPeerChunk int 0

For flow control

gnb.sctp.tellArwnd bool false

For flow control

gnb.sctp.messageAcceptLimit int 0

For flow control

gnb.sctp.fairStart double 0s
gnb.sctp.fairStop double 0s
gnb.sctp.streamsToPaths string ""
gnb.sctp.startEndToEndDelay int 0
gnb.sctp.stopEndToEndDelay int 10
gnb.sctp.throughputInterval double 1
gnb.sctp.auth bool false
gnb.sctp.chunks string ""
gnb.sctp.padding bool false
gnb.sctp.addIP bool false
gnb.sctp.addTime double 0s
gnb.sctp.addAddress string ""
gnb.sctp.addIpType string "0"

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

gnb.sctp.packetDrop bool false
gnb.sctp.sackNow bool false
gnb.sctp.highSpeedCC bool false
gnb.sctp.checkSackSeqNumber bool false
gnb.sctp.nrSack bool false
gnb.sctp.disableReneging bool false
gnb.sctp.gapReportLimit int 100000000
gnb.sctp.gapListOptimizationVariant string "none"
gnb.sctp.smartOverfullSACKHandling bool false
gnb.sctp.allowQoSTracking bool false
gnb.sctp.qosTrackingInterval double 1.0s
gnb.sctp.cmtSendAllVariant string "normal"
gnb.sctp.cmtRetransmissionVariant string "normal"
gnb.sctp.cmtCUCVariant string "normal"
gnb.sctp.cmtBufferSplitVariant string "none"
gnb.sctp.cmtBufferSplittingUsesOSB bool false
gnb.sctp.cmtUseSFR bool true
gnb.sctp.cmtUseDAC bool true
gnb.sctp.cmtUseFRC bool true
gnb.sctp.cmtSmartT3Reset bool true
gnb.sctp.cmtSmartFastRTX bool true
gnb.sctp.cmtSmartReneging bool false
gnb.sctp.cmtSlowPathRTTUpdate bool false
gnb.sctp.cmtChunkReschedulingVariant string "none"
gnb.sctp.cmtChunkReschedulingThreshold double 0.5
gnb.sctp.cmtMovedChunksReduceCwnd bool true
gnb.sctp.movedChunkFastRTXFactor double 2.0
gnb.sctp.cmtSackPath string "standard"
gnb.sctp.strictCwndBooking bool false
gnb.sctp.cmtCCVariant string "off"

CMT Congestion Control Variant off = use over every path the default RFC4960 CC (New Reno) lia = First resource pooling congestion control RFC6356 adapted for SCTP - https://datatracker.ietf.org/doc/rfc6356/ olia = alternative MPTCP CC, adapted for SCTP- https://tools.ietf.org/html/draft-khalili-mptcp-congestion-control-05 cmtrpv1 = First resource pooling based CC for SCTP - https://www.tdr.wiwi.uni-due.de/fileadmin/fileupload/I-TDR/SCTP/Paper/AINA2010.pdf cmtrpv2 = Updated version of cmtrpv1 - https://www.tdr.wiwi.uni-due.de/fileadmin/fileupload/I-TDR/SCTP/Paper/ConTEL2011.pdf

gnb.sctp.cmtCCPathGroups string ""
gnb.sctp.rpPathBlocking bool false
gnb.sctp.rpScaleBlockingTimeout bool false
gnb.sctp.rpMinCwnd int 1
gnb.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.at.interfaceTableModule string

Module path to the InterfaceTable module

gnb.at.forwardServiceRegistration bool true
gnb.at.forwardProtocolRegistration bool true
gnb.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

gnb.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

gnb.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

gnb.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.tn.interfaceTableModule string

Module path to the InterfaceTable module

gnb.tn.forwardServiceRegistration bool true
gnb.tn.forwardProtocolRegistration bool true
gnb.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

gnb.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

gnb.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

gnb.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

gnb.nl.interfaceTableModule string

Module path to the InterfaceTable module

gnb.nl.forwardServiceRegistration bool true
gnb.nl.forwardProtocolRegistration bool true
gnb.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

gnb.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

gnb.relay.trafficFlowFilter.binderModule string "binder"
gnb.relay.trafficFlowFilter.fastForwarding bool true
gnb.relay.gtpUser.binderModule string "binder"
gnb.relay.gtpUser.localPort int 31
gnb.relay.gtpUser.tunnelPeerPort int 31
gnb.gtpUserX2.binderModule string "binder"
gnb.gtpUserX2.localPort int 32
gnb.gtpUserX2.tunnelPeerPort int 32
bgCell.mobility.displayStringTextFormat string "p: {position}\nv: {velocity}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

bgCell.mobility.subjectModule string "^"

The module path that determines the subject module, the motion of which this mobility model describes. The default value is the parent module

bgCell.mobility.coordinateSystemModule string ""

The module path of the geographic coordinate system module; optional, empty disables geographic conversion (and the {geo_position} directive)

bgCell.mobility.updateDisplayString bool true

Enables continuous update of the subject module's position by modifying its display string

bgCell.mobility.constraintAreaMinX double -inf m

The minimum x position of the constraint area. It is unconstrained by default (negative infinity)

bgCell.mobility.constraintAreaMinY double -inf m

The minimum y position of the constraint area. It is unconstrained by default (negative infinity)

bgCell.mobility.constraintAreaMinZ double -inf m

The minimum z position of the constraint area. It is unconstrained by default (negative infinity)

bgCell.mobility.constraintAreaMaxX double inf m

The maximum x position of the constraint area. It is unconstrained by default (positive infinity)

bgCell.mobility.constraintAreaMaxY double inf m

The maximum y position of the constraint area. It is unconstrained by default (positive infinity)

bgCell.mobility.constraintAreaMaxZ double inf m

The maximum z position of the constraint area. It is unconstrained by default (positive infinity)

bgCell.mobility.initialX double uniform(this.constraintAreaMinX, this.constraintAreaMaxX)
bgCell.mobility.initialY double uniform(this.constraintAreaMinY, this.constraintAreaMaxY)
bgCell.mobility.initialZ double nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))
bgCell.mobility.initialLatitude double nan deg
bgCell.mobility.initialLongitude double nan deg
bgCell.mobility.initialAltitude double 0m
bgCell.mobility.initialHeading double 0deg
bgCell.mobility.initialElevation double 0deg
bgCell.mobility.initialBank double 0deg
bgCell.mobility.initFromDisplayString bool true

Enables one-time initialization from the subject module's display string

bgCell.mobility.updateFromDisplayString bool true

Enables continuous update from the subject module's display string for dragging and rotating it

bgCell.bgChannelModel.binderModule string "binder"

Module references

bgCell.bgChannelModel.shadowing bool true

Enable/disable shadowing

bgCell.bgChannelModel.scenario string "URBAN_MACROCELL"

Path loss scenario, in ITU terminology

bgCell.bgChannelModel.nodebHeight double 25m

eNodeB height

bgCell.bgChannelModel.buildingHeight double 20m

Building height

bgCell.bgChannelModel.insideBuilding bool false

Determines if the UE is inside a building

bgCell.bgChannelModel.streetWidth double 20m

TODO width

bgCell.bgChannelModel.ueHeight double 1.5m
bgCell.bgChannelModel.tolerateMaxDistViolation bool false
bgCell.bgChannelModel.correlationDistance double 50m
bgCell.bgChannelModel.antennaGainUe double 0dBi

Antenna gain of the UE, relative to an isotropic antenna

bgCell.bgChannelModel.antennGainEnB double 18dBi

Antenna gain of the eNodeB

bgCell.bgChannelModel.antennGainMicro double 5dBi

Antenna gain of the micro node

bgCell.bgChannelModel.thermalNoise double -104.5dBm

Thermal noise for 10 MHz of bandwidth

bgCell.bgChannelModel.ueNoiseFigure double 7dBm

UE noise figure

bgCell.bgChannelModel.bsNoiseFigure double 5dBm

eNodeB noise figure

bgCell.bgChannelModel.cableLoss double 2dB

Cable loss

bgCell.bgChannelModel.dynamicLos bool false

Whether LOS/NLOS is drawn per link from the scenario's LOS probability; when false, it is fixed to fixedLos

bgCell.bgChannelModel.fixedLos bool false

LOS state of every link when dynamicLos is false: true = LOS, false = NLOS

bgCell.bgChannelModel.fading bool true

Enable/disable fading

bgCell.bgChannelModel.fadingType string "JAKES"

Fading type (JAKES or RAYLEIGH)

bgCell.bgChannelModel.numFadingPaths int 6

If Jakes fading, this parameter specifies the number of paths (tap channel)

bgCell.bgChannelModel.delayRms double 363ns
bgCell.bgChannelModel.bgCellInterference bool true

Whether interference from the other background cells is included in the SINR, in both UL and DL

bgCell.bgChannelModel.downlinkInterference bool true

Whether interference from other base stations is included in the DL SINR

bgCell.bgChannelModel.uplinkInterference bool true

Whether interference from the UEs of other cells is included in the UL SINR

bgCell.bgScheduler.binderModule string "binder"
bgCell.bgScheduler.channelModelModule string "^.bgChannelModel"
bgCell.bgScheduler.txPower double 46dBm

Transmission power

bgCell.bgScheduler.txDirection string "OMNI"

Transmission direction

bgCell.bgScheduler.txAngle double 0deg

Transmission angle

bgCell.bgScheduler.isNr bool false

Flag to indicate whether this is a NR base station

bgCell.bgScheduler.numerologyIndex int 0

Operating carrier

bgCell.bgScheduler.carrierFrequency double 2GHz

Operating carrier

bgCell.bgScheduler.numBands int 6

Carrier bandwidth

ueCell.status.displayStringTextFormat string "{stateStr}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.status.initialStatus string "UP"

TODO @signal, @statistic

ueCell.environment.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.environment.initStage int 0

Initialization stage for the setup command

ueCell.environment.globalNamespace bool false

Create new network namespaces under /var/run/netns/ (Linux only)

ueCell.environment.namespace string ""

Name of the host OS network namespace (optional) (Linux only)

ueCell.environment.setupCommand string ""

A host OS system command

ueCell.environment.teardownCommand string ""

A host OS system command

ueCell.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.pcapRecorder.verbose bool true

Whether to log packets on the module output

ueCell.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

ueCell.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

ueCell.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

ueCell.pcapRecorder.fileFormat string "pcapng"
ueCell.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

ueCell.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

ueCell.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

ueCell.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*]"

Space-separated list of sibling module names to listen on

ueCell.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

ueCell.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

ueCell.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

ueCell.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

ueCell.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

ueCell.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueCell.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

ueCell.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.cb.interfaceTableModule string

Module path to the InterfaceTable module

ueCell.cb.forwardServiceRegistration bool true
ueCell.cb.forwardProtocolRegistration bool true
ueCell.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueCell.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueCell.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueCell.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.bl.interfaceTableModule string

Module path to the InterfaceTable module

ueCell.bl.forwardServiceRegistration bool true
ueCell.bl.forwardProtocolRegistration bool true
ueCell.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueCell.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueCell.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueCell.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.li.interfaceTableModule string

Module path to the InterfaceTable module

ueCell.li.forwardServiceRegistration bool true
ueCell.li.forwardProtocolRegistration bool true
ueCell.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueCell.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueCell.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueCell.eth.bitrate double
ueCell.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.nl.interfaceTableModule string

Module path to the InterfaceTable module

ueCell.nl.forwardServiceRegistration bool true
ueCell.nl.forwardProtocolRegistration bool true
ueCell.nl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueCell.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueCell.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueCell.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.tn.interfaceTableModule string

Module path to the InterfaceTable module

ueCell.tn.forwardServiceRegistration bool true
ueCell.tn.forwardProtocolRegistration bool true
ueCell.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueCell.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueCell.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueCell.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueCell.at.interfaceTableModule string

Module path to the InterfaceTable module

ueCell.at.forwardServiceRegistration bool true
ueCell.at.forwardProtocolRegistration bool true
ueCell.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueCell.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueCell.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueCell.macTable.agingTime double
ueCell.macTable.forwardingTableFile string
ueD2DTx.status.displayStringTextFormat string "{stateStr}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.status.initialStatus string "UP"

TODO @signal, @statistic

ueD2DTx.environment.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.environment.initStage int 0

Initialization stage for the setup command

ueD2DTx.environment.globalNamespace bool false

Create new network namespaces under /var/run/netns/ (Linux only)

ueD2DTx.environment.namespace string ""

Name of the host OS network namespace (optional) (Linux only)

ueD2DTx.environment.setupCommand string ""

A host OS system command

ueD2DTx.environment.teardownCommand string ""

A host OS system command

ueD2DTx.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.pcapRecorder.verbose bool true

Whether to log packets on the module output

ueD2DTx.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

ueD2DTx.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

ueD2DTx.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

ueD2DTx.pcapRecorder.fileFormat string "pcapng"
ueD2DTx.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

ueD2DTx.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

ueD2DTx.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

ueD2DTx.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*]"

Space-separated list of sibling module names to listen on

ueD2DTx.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

ueD2DTx.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

ueD2DTx.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

ueD2DTx.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DTx.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

ueD2DTx.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.cb.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DTx.cb.forwardServiceRegistration bool true
ueD2DTx.cb.forwardProtocolRegistration bool true
ueD2DTx.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DTx.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DTx.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DTx.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.bl.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DTx.bl.forwardServiceRegistration bool true
ueD2DTx.bl.forwardProtocolRegistration bool true
ueD2DTx.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DTx.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DTx.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DTx.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.li.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DTx.li.forwardServiceRegistration bool true
ueD2DTx.li.forwardProtocolRegistration bool true
ueD2DTx.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DTx.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DTx.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DTx.eth.bitrate double
ueD2DTx.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.nl.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DTx.nl.forwardServiceRegistration bool true
ueD2DTx.nl.forwardProtocolRegistration bool true
ueD2DTx.nl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DTx.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DTx.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DTx.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.tn.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DTx.tn.forwardServiceRegistration bool true
ueD2DTx.tn.forwardProtocolRegistration bool true
ueD2DTx.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DTx.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DTx.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DTx.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DTx.at.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DTx.at.forwardServiceRegistration bool true
ueD2DTx.at.forwardProtocolRegistration bool true
ueD2DTx.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DTx.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DTx.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DTx.macTable.agingTime double
ueD2DTx.macTable.forwardingTableFile string
ueD2DRx.status.displayStringTextFormat string "{stateStr}"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.status.initialStatus string "UP"

TODO @signal, @statistic

ueD2DRx.environment.displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.environment.initStage int 0

Initialization stage for the setup command

ueD2DRx.environment.globalNamespace bool false

Create new network namespaces under /var/run/netns/ (Linux only)

ueD2DRx.environment.namespace string ""

Name of the host OS network namespace (optional) (Linux only)

ueD2DRx.environment.setupCommand string ""

A host OS system command

ueD2DRx.environment.teardownCommand string ""

A host OS system command

ueD2DRx.pcapRecorder.displayStringTextFormat string "rec: %n pks"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.pcapRecorder.verbose bool true

Whether to log packets on the module output

ueD2DRx.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

ueD2DRx.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

ueD2DRx.pcapRecorder.pcapFile string ""

The PCAP file to be written, suggested value: pcapFile = "${resultdir}/${configname}-#${runnumber}" + fullpath() + ".pcap"

ueD2DRx.pcapRecorder.fileFormat string "pcapng"
ueD2DRx.pcapRecorder.snaplen int 65535

Maximum number of bytes to record per packet

ueD2DRx.pcapRecorder.timePrecision int 6

Time precision in recorded file. pcap supports only 6 (usec) or 9 (nanosec), pcapng supports more values (see 'if_tsresol' option in pcapng file format).

ueD2DRx.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

ueD2DRx.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*]"

Space-separated list of sibling module names to listen on

ueD2DRx.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

ueD2DRx.pcapRecorder.helpers string ""

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

ueD2DRx.pcapRecorder.alwaysFlush bool false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

ueD2DRx.cb.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.cb.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DRx.cb.forwardServiceRegistration bool true
ueD2DRx.cb.forwardProtocolRegistration bool true
ueD2DRx.cb.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DRx.cb.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.cb.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.bl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.bl.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DRx.bl.forwardServiceRegistration bool true
ueD2DRx.bl.forwardProtocolRegistration bool true
ueD2DRx.bl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DRx.bl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.bl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.li.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.li.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DRx.li.forwardServiceRegistration bool true
ueD2DRx.li.forwardProtocolRegistration bool true
ueD2DRx.li.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DRx.li.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.li.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.eth.bitrate double
ueD2DRx.nl.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.nl.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DRx.nl.forwardServiceRegistration bool true
ueD2DRx.nl.forwardProtocolRegistration bool true
ueD2DRx.nl.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DRx.nl.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.nl.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.tn.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.tn.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DRx.tn.forwardServiceRegistration bool true
ueD2DRx.tn.forwardProtocolRegistration bool true
ueD2DRx.tn.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DRx.tn.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.tn.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.at.displayStringTextFormat string "processed {numProcessedPackets} pk ({processedTotalLength})"

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.at.interfaceTableModule string

Module path to the InterfaceTable module

ueD2DRx.at.forwardServiceRegistration bool true
ueD2DRx.at.forwardProtocolRegistration bool true
ueD2DRx.at.interfaceMapping object {}

Maps network interface names to connected submodule names (e.g. {"eth0": "bridging"}), overrides automatically learned dispatching; * overrides all learned network interfaces, ? overrides default

ueD2DRx.at.serviceMapping object {}

Maps protocols to connected submodule names (e.g. {"ethernetmac": "bridging"}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.at.protocolMapping object {}

Maps protocols to connected submodule names (e.g. {"ipv4": "bridging"}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.macTable.agingTime double
ueD2DRx.macTable.forwardingTableFile string

Source code

//
// ~SingleCell_Standalone with its UEs split into three vectors, so that a
// configuration can address cellular terminals (ueCell), D2D transmitters
// (ueD2DTx) and D2D receivers (ueD2DRx) separately. The rest of the topology is
// the same: one ~gNodeB behind an intermediate and an anchor ~Upf, with a router
// and a server on the data network, plus numBgCells ~BackgroundCell interferers.
//
network SingleCell_Standalone_D2D
{
    parameters:
        // The gNB connects to a 5GC (Upf), so every cellular stack has SDAP:
        // TS 37.324 ties SDAP to the 5GC connection, not to the radio
        **.cellularNic.hasSdap = default(true);
        int numUeCell = default(0);
        int numUeD2DTx = default(0);
        int numUeD2DRx = default(0);
        int numBgCells = default(0);
        @display("i=block/network2;bgb=826,558;bgi=background/pisa");

    submodules:
        channelControl: LteChannelControl {
            @display("p=50,25;is=s");
        }
        routingRecorder: RoutingTableRecorder {
            @display("p=50,75;is=s");
        }
        configurator: Ipv4NetworkConfigurator {
            @display("p=50,125;is=s");
        }
        binder: Binder {
            @display("p=50,175;is=s");
        }
        d2dBinder: D2dBinder {
            @display("p=50,425;is=s");
        }
        coreControl: CoreControl {
            @display("p=50,375;is=s");
        }
        bearerConfigurator: BearerConfigurator {
            @display("p=50,225;is=s");
        }
        carrierAggregation: CarrierAggregation {
            @display("p=50,275;is=s");
        }
        server: StandardHost {
            @display("p=212,118;is=n;i=device/server");
        }
        router: Router {
            @display("p=363,115;i=device/smallrouter");
        }
        upf: Upf {
            @display("p=527,116");
        }
        iUpf: Upf {
            @display("p=725,118");
        }
        gnb: gNodeB {
            @display("p=726,277;is=vl");
        }
        bgCell[numBgCells]: BackgroundCell {
            @display("p=416,277;is=vl");
        }
        ueCell[numUeCell]: NrUe {
            @display("p=612,316");
        }
        ueD2DTx[numUeD2DTx]: NrUe {
            @display("p=550,423");
        }
        ueD2DRx[numUeD2DRx]: NrUe {
            @display("p=726,423");
        }
    connections:
        server.pppg++ <--> Eth10G <--> router.pppg++;
        router.pppg++ <--> Eth10G <--> upf.dnPppg;
        upf.pppg++ <--> Eth10G <--> iUpf.pppg++;
        iUpf.pppg++ <--> Eth10G <--> gnb.ppp;
}
File: simulations/nr/networks/SingleCell_Standalone_D2D.ned