SingleCell_Standalone_D2D

Package: simu5g.simulations.nr.networks

network SingleCell_Standalone_D2D

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.

SingleCell_Standalone_D2Dserver.pppg++ <--> Eth10G <--> router.pppg++router.pppg++ <--> Eth10G <--> upf.dnPppgupf.pppg++ <--> Eth10G <--> iUpf.pppg++iUpf.pppg++ <--> Eth10G <--> gnb.pppchannelControl: simu5g.world.radio.LteChannelControl Utility module that records the position of each LTE radio module in the network. Source: channelControl: LteChannelControl { @display("p=50,25;is=s"); }channelControlroutingRecorder: inet.networklayer.ipv4.RoutingTableRecorder Records changes in the routing tables (~Ipv4RoutingTable) and interface tables (~InterfaceTable)... Source: routingRecorder: RoutingTableRecorder { @display("p=50,75;is=s"); }routingRecorderconfigurator: inet.networklayer.configurator.ipv4.Ipv4NetworkConfigurator Assigns IPv4 addresses and sets up static routing for an IPv4 network. Source: configurator: Ipv4NetworkConfigurator { @display("p=50,125;is=s"); }configuratorbinder: simu5g.common.binder.Binder The Binder module functions as a global repository of network-related information utilized throug... Source: binder: Binder { @display("p=50,175;is=s"); }binderd2dBinder: simu5g.stack.d2d.binder.D2dBinder Global holder of the D2D-specific network state, split out of the core ~Binder. Source: d2dBinder: D2dBinder { @display("p=50,425;is=s"); }d2dBindercoreControl: simu5g.corenetwork.coreControl.CoreControl The control plane of the core network, one per cellular network alongside its ~Binder and ~Bearer... Source: coreControl: CoreControl { @display("p=50,375;is=s"); }coreControlbearerConfigurator: simu5g.corenetwork.bearerConfigurator.BearerConfigurator The network's bearer definitions: the operator's configuration of the data radio bearers, authore... Source: bearerConfigurator: BearerConfigurator { @display("p=50,225;is=s"); }bearerConfiguratorcarrierAggregation: simu5g.common.carrierAggregation.CarrierAggregation Implements the Carrier Aggregation (CA) functionality used at the Medium Access Control (MAC) lay... Source: carrierAggregation: CarrierAggregation { @display("p=50,275;is=s"); }carrierAggregationserver: inet.node.inet.StandardHost A comprehensive model of an IPv4/IPv6 host that provides a complete network stack with configurab... Source: server: StandardHost { @display("p=212,118;is=n;i=device/server"); }serverrouter: inet.node.inet.Router A network router device with support for multiple routing protocols and network interfaces. Source: router: Router { @display("p=363,115;i=device/smallrouter"); }routerupf: simu5g.nodes.Upf Implements the 5G Core User Plane Function (UPF). Source: upf: Upf { @display("p=527,116"); }upfiUpf: simu5g.nodes.Upf Implements the 5G Core User Plane Function (UPF). Source: iUpf: Upf { @display("p=725,118"); }iUpfgnb: simu5g.nodes.gNodeB Implements a gNodeB for a 5G network. Source: gnb: gNodeB { @display("p=726,277;is=vl"); }gnbbgCell[numBgCells]: simu5g.nodes.BackgroundCell Implements a lightweight model for a 4G eNodeB or 5G gNodeB for generating configurable inter-cel... Source: bgCell[numBgCells]: BackgroundCell { @display("p=416,277;is=vl"); }bgCell[numBgCells]ueCell[numUeCell]: simu5g.nodes.NrUe Models a User Equipment (UE) for a 5G/LTE network. Source: ueCell[numUeCell]: NrUe { @display("p=612,316"); }ueCell[numUeCell]ueD2DTx[numUeD2DTx]: simu5g.nodes.NrUe Models a User Equipment (UE) for a 5G/LTE network. Source: ueD2DTx[numUeD2DTx]: NrUe { @display("p=550,423"); }ueD2DTx[numUeD2DTx]ueD2DRx[numUeD2DRx]: simu5g.nodes.NrUe Models a User Equipment (UE) for a 5G/LTE network. Source: ueD2DRx[numUeD2DRx]: NrUe { @display("p=726,423"); }ueD2DRx[numUeD2DRx]

Usage diagram

Parameters

Name

Type

Default value

Description

numUeCell

int

0

numUeD2DTx

int

0

numUeD2DRx

int

0

numBgCells

int

0

Properties

Name

Value

Description

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(“<config><interface hosts=’**’ address=’10.x.x.x’ netmask=’255.x.x.x’/></config>”)

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}]

JSON array of downlink QFI-assignment rules [{node, filter, qfi|dscpAsQfi}, …], delivered to the traffic flow filters at core-network tunnel entries; first match wins per site

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

rlcMode derivation: a definition whose QoS profile has packetErrorRate <= this gets “AM”, else “UM”

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

TDD slot format index values in the range [0,61], according to 3GPP TS38.213 THIS IS TO BE DONE int tddSlotFormatIndex = default(-1); // -1 stands for FDD

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”

Initial status of the network node

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

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 ↗.ethernet ↗.displayStringTextFormat

string

“passed up: {totalFromMAC}\nsent: {totalFromHigherLayer}”

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

server ↗.ethernet ↗.registerProtocol

bool

false

FIXME //KLUDGE should redesign place of EthernetEncapsulation and LLC modules

server ↗.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ethernet ↗.fcsMode

string

“declared”

server ↗.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

server ↗.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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 ↗.lo ↗.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 ↗.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

server ↗.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

server ↗.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

server ↗.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

server ↗.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

server ↗.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

server ↗.lo ↗.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 ↗.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

server ↗.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

server ↗.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

server ↗.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

server ↗.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

server ↗.lo ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

server ↗.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

server ↗.lo ↗.lo ↗.displayStringTextFormat

string

“rcv:{numRcvdOK} snt:{numSent}”

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

server ↗.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.lo ↗.lo ↗.mtu

int

4470B

server ↗.wlan ↗.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 ↗.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

server ↗.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

server ↗.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

server ↗.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

server ↗.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

server ↗.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

server ↗.wlan ↗.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 ↗.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

server ↗.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

server ↗.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

server ↗.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

server ↗.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

server ↗.wlan ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

server ↗.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

server ↗.wlan ↗.mib ↗.displayStringTextFormat

string

“Address: {address}{ssidStr}\n{modeStr}{stationTypeStr}{qosStr}{associatedStr}”

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

server ↗.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.wlan ↗.agent ↗.mibModule

string

server ↗.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

server ↗.wlan ↗.agent ↗.channelsToScan

string

“”

List of channel numbers to scan (space delimited); empty means all channels

server ↗.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

server ↗.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

server ↗.wlan ↗.agent ↗.maxChannelTime

double

300ms

Channel time for passive scanning, and max channel time for active scanning

server ↗.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

server ↗.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

server ↗.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

server ↗.wlan ↗.agent ↗.defaultSsid

string

“”

List of allowed SSIDs to connect to; leave empty for no filtering

server ↗.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

server ↗.wlan ↗.mgmt ↗.mibModule

string

server ↗.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.originatorMacDataService”

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.ackHandlerModule

string

“^.^.ackHandler”

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

server ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

server ↗.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

server ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

server ↗.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

server ↗.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.dcf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

server ↗.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

server ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

server ↗.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

server ↗.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.^.originatorMacDataService”

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.ackHandlerModule

string

“^.ackHandler”

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.txopLimit

double

-1s

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.longRetryLimit

int

4

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.collisionController ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.shortRetryLimit

int

7

server ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.longRetryLimit

int

4

server ↗.wlan ↗.mac ↗.hcf ↗.hcca ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.subframeNumThreshold

int

-1

Minimum number of subframes needed to compose an A-MSDU. (-1 means it won’t be checked)

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.aggregationLengthThreshold

int

-1

The minimum length for an aggregated payload necessary to create an A-MSDU (-1 means it won’t be checked).

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.maxAMsduSize

int

4065

-1 means infinity

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.qOsCheck

bool

true

Turns on/off the check of the presence of the QoS flag (false means off – this is needed for aggregation in DCF mode).

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.mpduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

server ↗.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

server ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

server ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

server ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

server ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

server ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

server ↗.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

server ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

server ↗.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

server ↗.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

server ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

server ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

server ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

server ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

server ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

server ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

server ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

server ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

server ↗.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

server ↗.wlan ↗.mac ↗.ds ↗.mibModule

string

server ↗.wlan ↗.mac ↗.rx ↗.displayStringTextFormat

string

“{rxStatus}”

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

server ↗.wlan ↗.mac ↗.tx ↗.displayStringTextFormat

string

“{txFramePrefix}{txState}”

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

server ↗.wlan ↗.mac ↗.tx ↗.rxModule

string

server ↗.ppp ↗.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 ↗.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

server ↗.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

server ↗.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

server ↗.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

server ↗.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

server ↗.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

server ↗.ppp ↗.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 ↗.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

server ↗.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

server ↗.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

server ↗.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

server ↗.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

server ↗.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

server ↗.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

server ↗.ppp ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

server ↗.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

server ↗.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

server ↗.ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

server ↗.ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

server ↗.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

server ↗.ppp ↗.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

server ↗.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ppp ↗.ppp ↗.sendRawBytes

bool

false

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

server ↗.ppp ↗.ppp ↗.mtu

int

4470B

server ↗.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

server ↗.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

server ↗.eth ↗.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 ↗.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

server ↗.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

server ↗.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

server ↗.eth ↗.pcapRecorder ↗.pcapFile

string

“”

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

server ↗.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

server ↗.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

server ↗.eth ↗.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 ↗.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

server ↗.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

server ↗.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

server ↗.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

server ↗.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

server ↗.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

server ↗.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

server ↗.tun ↗.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 ↗.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

server ↗.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

server ↗.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

server ↗.tun ↗.pcapRecorder ↗.pcapFile

string

“”

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

server ↗.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

server ↗.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

server ↗.tun ↗.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 ↗.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

server ↗.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

server ↗.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

server ↗.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

server ↗.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

server ↗.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

server ↗.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

server ↗.tun ↗.tun ↗.displayStringTextFormat

string

“”

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

server ↗.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.tun ↗.tun ↗.mtu

int

1500B

server ↗.virt ↗.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 ↗.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

server ↗.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

server ↗.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

server ↗.virt ↗.pcapRecorder ↗.pcapFile

string

“”

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

server ↗.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

server ↗.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

server ↗.virt ↗.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 ↗.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

server ↗.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

server ↗.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

server ↗.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

server ↗.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

server ↗.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

server ↗.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

server ↗.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

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

server ↗.virt ↗.tunnel ↗.interfaceTableModule

string

server ↗.virt ↗.tunnel ↗.realInterface

string

server ↗.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

server ↗.virt ↗.tunnel ↗.address

string

“copy”

server ↗.virt ↗.tunnel ↗.vlanId

int

-1

server ↗.virt ↗.tunnel ↗.steal

bool

vlanId != -1

server ↗.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

server ↗.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv4 ↗.configurator ↗.routingTableModule

string

server ↗.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

server ↗.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

server ↗.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

server ↗.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

server ↗.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

server ↗.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

server ↗.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

server ↗.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

server ↗.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

server ↗.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

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

server ↗.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

server ↗.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

server ↗.ipv4 ↗.up ↗.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 ↗.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

server ↗.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

server ↗.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

server ↗.ipv4 ↗.up ↗.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 ↗.ipv4 ↗.up ↗.serviceMapping

object

{}

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

server ↗.ipv4 ↗.up ↗.protocolMapping

object

{}

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

server ↗.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

server ↗.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv4 ↗.igmp ↗.routingTableModule

string

server ↗.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

server ↗.ipv4 ↗.igmp ↗.enabled

bool

true

server ↗.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

server ↗.ipv4 ↗.igmp ↗.queryInterval

double

125s

server ↗.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

server ↗.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

server ↗.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

server ↗.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

server ↗.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

server ↗.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

server ↗.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

server ↗.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

server ↗.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

server ↗.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv4 ↗.icmp ↗.routingTableModule

string

server ↗.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

server ↗.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

server ↗.ipv4 ↗.mp ↗.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 ↗.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

server ↗.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

server ↗.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

server ↗.ipv4 ↗.mp ↗.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 ↗.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

server ↗.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

server ↗.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

server ↗.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv4 ↗.ip ↗.routingTableModule

string

server ↗.ipv4 ↗.ip ↗.arpModule

string

server ↗.ipv4 ↗.ip ↗.icmpModule

string

server ↗.ipv4 ↗.ip ↗.checksumMode

string

“declared”

server ↗.ipv4 ↗.ip ↗.timeToLive

int

32

server ↗.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

server ↗.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

server ↗.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

server ↗.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

server ↗.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

server ↗.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

server ↗.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

server ↗.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

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

server ↗.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv4 ↗.arp ↗.routingTableModule

string

server ↗.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

server ↗.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

server ↗.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

server ↗.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

server ↗.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

server ↗.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

server ↗.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

server ↗.ipv4 ↗.ipsec ↗.interfaceTableModule

string

server ↗.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

server ↗.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

server ↗.ipv4 ↗.ipsec ↗.spdConfig

xml

server ↗.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

server ↗.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

server ↗.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

server ↗.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

server ↗.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

server ↗.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

server ↗.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

server ↗.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

server ↗.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

server ↗.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

server ↗.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

server ↗.ipv4 ↗.lp ↗.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 ↗.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

server ↗.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

server ↗.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

server ↗.ipv4 ↗.lp ↗.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 ↗.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

server ↗.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

server ↗.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.configurator ↗.interfaceTableModule

string

server ↗.ipv6 ↗.configurator ↗.routingTableModule

string

server ↗.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

server ↗.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

server ↗.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

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

server ↗.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

server ↗.ipv6 ↗.routingTable ↗.forwarding

bool

false

server ↗.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

server ↗.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

server ↗.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

server ↗.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

server ↗.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

server ↗.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

server ↗.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

server ↗.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

server ↗.ipv6 ↗.up ↗.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 ↗.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

server ↗.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

server ↗.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

server ↗.ipv6 ↗.up ↗.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 ↗.ipv6 ↗.up ↗.serviceMapping

object

{}

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

server ↗.ipv6 ↗.up ↗.protocolMapping

object

{}

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

server ↗.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

server ↗.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

server ↗.ipv6 ↗.lp ↗.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 ↗.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

server ↗.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

server ↗.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

server ↗.ipv6 ↗.lp ↗.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 ↗.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

server ↗.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

server ↗.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

server ↗.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

server ↗.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

server ↗.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

server ↗.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

server ↗.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

server ↗.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

server ↗.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

server ↗.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

server ↗.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

server ↗.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

server ↗.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

server ↗.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

server ↗.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

server ↗.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

server ↗.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv6 ↗.ipv6 ↗.routingTableModule

string

server ↗.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

server ↗.ipv6 ↗.ipv6 ↗.icmpv6Module

string

server ↗.ipv6 ↗.ipv6 ↗.procDelay

double

0s

server ↗.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

server ↗.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

server ↗.ipv6 ↗.ipsec ↗.interfaceTableModule

string

server ↗.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

server ↗.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

server ↗.ipv6 ↗.ipsec ↗.spdConfig

xml

server ↗.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

server ↗.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

server ↗.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

server ↗.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

server ↗.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

server ↗.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

server ↗.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

server ↗.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

server ↗.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

server ↗.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

server ↗.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

server ↗.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

server ↗.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

server ↗.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

server ↗.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

server ↗.ipv6 ↗.mipv6 ↗.isMobileNode

bool

server ↗.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

server ↗.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

server ↗.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

server ↗.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

server ↗.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

server ↗.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

server ↗.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

server ↗.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

server ↗.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

server ↗.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

server ↗.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

server ↗.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

server ↗.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

server ↗.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

server ↗.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

server ↗.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

server ↗.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

server ↗.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

server ↗.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

server ↗.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

server ↗.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

server ↗.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

server ↗.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

server ↗.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

server ↗.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

server ↗.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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 ↗.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

server ↗.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

server ↗.udp ↗.checksumMode

string

“declared”

server ↗.udp ↗.defaultMulticastLoop

bool

true

server ↗.tcp ↗.displayStringTextFormat

string

“”

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

server ↗.tcp ↗.checksumMode

string

“declared”

server ↗.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)

server ↗.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

server ↗.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

server ↗.tcp ↗.limitedTransmitEnabled

bool

false

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

server ↗.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

server ↗.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)

server ↗.tcp ↗.windowScalingSupport

bool

false

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

server ↗.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)

server ↗.tcp ↗.timestampSupport

bool

false

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

server ↗.tcp ↗.mss

int

536

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

server ↗.tcp ↗.msl

int

120s

Maximum Segment Lifetime

server ↗.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

server ↗.tcp ↗.dupthresh

int

3

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

server ↗.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…

server ↗.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

server ↗.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

server ↗.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

server ↗.tcp ↗.dctcpGamma

double

0.0625

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

server ↗.tcp ↗.pmtudEnabled

bool

false

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

server ↗.tcp ↗.pmtudTimeout

double

600s

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

server ↗.sctp ↗.displayStringTextFormat

string

“”

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

server ↗.sctp ↗.interfaceTableModule

string

server ↗.sctp ↗.routingTableModule

string

server ↗.sctp ↗.checksumMode

string

“declared”

server ↗.sctp ↗.numGapReports

int

3

server ↗.sctp ↗.rtoInitial

double

3s

server ↗.sctp ↗.rtoMin

double

1s

server ↗.sctp ↗.rtoMax

double

60s

server ↗.sctp ↗.rtoAlpha

double

0.125

server ↗.sctp ↗.rtoBeta

double

0.250

server ↗.sctp ↗.maxBurst

int

4

server ↗.sctp ↗.maxBurstVariant

string

“maxBurst”

server ↗.sctp ↗.initialWindow

int

0

server ↗.sctp ↗.assocMaxRetrans

int

10

server ↗.sctp ↗.pathMaxRetrans

int

5

server ↗.sctp ↗.maxInitRetrans

int

8

server ↗.sctp ↗.sackPeriod

double

200ms

server ↗.sctp ↗.sackFrequency

int

2

server ↗.sctp ↗.reactivatePrimaryPath

bool

false

server ↗.sctp ↗.sendQueueLimit

int

0

server ↗.sctp ↗.validCookieLifetime

double

10s

server ↗.sctp ↗.enableHeartbeats

bool

true

server ↗.sctp ↗.hbInterval

double

30s

server ↗.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

server ↗.sctp ↗.nagleEnabled

bool

true

server ↗.sctp ↗.naglePoint

int

1468

server ↗.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

server ↗.sctp ↗.fastRecoverySupported

bool

true

server ↗.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

server ↗.sctp ↗.ccModule

int

0

RFC4960=0

server ↗.sctp ↗.osbWithHeader

bool

false

server ↗.sctp ↗.RTXMethod

int

0

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

server ↗.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

server ↗.sctp ↗.arwnd

int

65535

server ↗.sctp ↗.swsLimit

int

3000

Limit for SWS

server ↗.sctp ↗.udpEncapsEnabled

bool

false

server ↗.sctp ↗.natFriendly

bool

false

server ↗.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

server ↗.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

server ↗.sctp ↗.tellArwnd

bool

false

For flow control

server ↗.sctp ↗.messageAcceptLimit

int

0

For flow control

server ↗.sctp ↗.fairStart

double

0s

server ↗.sctp ↗.fairStop

double

0s

server ↗.sctp ↗.streamsToPaths

string

“”

server ↗.sctp ↗.startEndToEndDelay

int

0

server ↗.sctp ↗.stopEndToEndDelay

int

10

server ↗.sctp ↗.throughputInterval

double

1

server ↗.sctp ↗.auth

bool

false

server ↗.sctp ↗.chunks

string

“”

server ↗.sctp ↗.padding

bool

false

server ↗.sctp ↗.addIP

bool

false

server ↗.sctp ↗.addTime

double

0s

server ↗.sctp ↗.addAddress

string

“”

server ↗.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

server ↗.sctp ↗.packetDrop

bool

false

server ↗.sctp ↗.sackNow

bool

false

server ↗.sctp ↗.highSpeedCC

bool

false

server ↗.sctp ↗.checkSackSeqNumber

bool

false

server ↗.sctp ↗.nrSack

bool

false

server ↗.sctp ↗.disableReneging

bool

false

server ↗.sctp ↗.gapReportLimit

int

100000000

server ↗.sctp ↗.gapListOptimizationVariant

string

“none”

server ↗.sctp ↗.smartOverfullSACKHandling

bool

false

server ↗.sctp ↗.allowQoSTracking

bool

false

server ↗.sctp ↗.qosTrackingInterval

double

1.0s

server ↗.sctp ↗.cmtSendAllVariant

string

“normal”

server ↗.sctp ↗.cmtRetransmissionVariant

string

“normal”

server ↗.sctp ↗.cmtCUCVariant

string

“normal”

server ↗.sctp ↗.cmtBufferSplitVariant

string

“none”

server ↗.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

server ↗.sctp ↗.cmtUseSFR

bool

true

server ↗.sctp ↗.cmtUseDAC

bool

true

server ↗.sctp ↗.cmtUseFRC

bool

true

server ↗.sctp ↗.cmtSmartT3Reset

bool

true

server ↗.sctp ↗.cmtSmartFastRTX

bool

true

server ↗.sctp ↗.cmtSmartReneging

bool

false

server ↗.sctp ↗.cmtSlowPathRTTUpdate

bool

false

server ↗.sctp ↗.cmtChunkReschedulingVariant

string

“none”

server ↗.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

server ↗.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

server ↗.sctp ↗.movedChunkFastRTXFactor

double

2.0

server ↗.sctp ↗.cmtSackPath

string

“standard”

server ↗.sctp ↗.strictCwndBooking

bool

false

server ↗.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

server ↗.sctp ↗.cmtCCPathGroups

string

“”

server ↗.sctp ↗.rpPathBlocking

bool

false

server ↗.sctp ↗.rpScaleBlockingTimeout

bool

false

server ↗.sctp ↗.rpMinCwnd

int

1

server ↗.quic ↗.displayStringTextFormat

string

“”

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

server ↗.quic ↗.routingTableModule

string

Set by StandardHost.

server ↗.quic ↗.sendZeroRttTokenAsServer

bool

false

server ↗.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

server ↗.quic ↗.accurateIncreaseInNewRenoCongestionAvoidance

bool

true

For NewReno in Congestion Avoidance, if true, increases cwnd after cwnd-acked bytes; if false, increases cwnd on every acked packet by acked_bytes/cwnd.

server ↗.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

server ↗.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

server ↗.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

server ↗.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

server ↗.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

server ↗.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

server ↗.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

server ↗.quic ↗.sendMaxDataFramesImmediately

bool

false

If true, a MAX_(STREAM)_DATA frame is sent immediately, after generation. Otherwise, sending the frame is delayed until the sending process starts due to another event.

server ↗.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

server ↗.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

server ↗.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

server ↗.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

server ↗.quic ↗.maxPmtu

int

65535B

With useDplpmtud, it is used as upper limit for the PMTU search. Without useDplpmtud, the PMTU is set to the minimum of the MTU of the outgoing interface and this value.

server ↗.quic ↗.dplpmtudMinPmtu

int

0

Specifies the minimum PMTU to use (if 0, it uses 1200 B for IPv4 or 1280 B for IPv6 as minimum PMTU).

server ↗.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

server ↗.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

server ↗.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

server ↗.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

server ↗.quic ↗.useCwndForParallelProbes

int

0

If 0, no parallel probe packets; if 1, uses the availbale cwnd to send additional probe packets and if 2 prefers to send probe packets over other packets.

server ↗.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

server ↗.quic ↗.dplpmtudUsePmtuValidator

bool

true

If true, activates the PMTU Validator that trys to detect when the current PMTU estimation is larger than the actual PMTU.

server ↗.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

server ↗.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

server ↗.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

server ↗.quic ↗.pmtuValidatorInvalidOnPersistentCongestion

int

1

If 0, disabled. If 1, the PMTU validator uses persistent congeation as signal for a decreased PMTU. If 2, only two consecutive persisten congestions used as signal. If 3, …

server ↗.quic ↗.reducePacketTimeThreshold

double

0s

Specifies after which time with no acks, packets with reduced size are sent. If zero, packet size reduction is disabled. If negative, reducePacketPtoFactorThreshold is used instead.

server ↗.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

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”

Initial status of the network node

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

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 ↗.ethernet ↗.displayStringTextFormat

string

“passed up: {totalFromMAC}\nsent: {totalFromHigherLayer}”

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

router ↗.ethernet ↗.registerProtocol

bool

false

FIXME //KLUDGE should redesign place of EthernetEncapsulation and LLC modules

router ↗.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ethernet ↗.fcsMode

string

“declared”

router ↗.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

router ↗.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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 ↗.lo ↗.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 ↗.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

router ↗.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

router ↗.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

router ↗.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

router ↗.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

router ↗.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

router ↗.lo ↗.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 ↗.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

router ↗.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

router ↗.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

router ↗.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

router ↗.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

router ↗.lo ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

router ↗.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

router ↗.lo ↗.lo ↗.displayStringTextFormat

string

“rcv:{numRcvdOK} snt:{numSent}”

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

router ↗.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.lo ↗.lo ↗.mtu

int

4470B

router ↗.wlan ↗.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 ↗.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

router ↗.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

router ↗.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

router ↗.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

router ↗.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

router ↗.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

router ↗.wlan ↗.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 ↗.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

router ↗.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

router ↗.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

router ↗.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

router ↗.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

router ↗.wlan ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

router ↗.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

router ↗.wlan ↗.mib ↗.displayStringTextFormat

string

“Address: {address}{ssidStr}\n{modeStr}{stationTypeStr}{qosStr}{associatedStr}”

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

router ↗.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.wlan ↗.agent ↗.mibModule

string

router ↗.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

router ↗.wlan ↗.agent ↗.channelsToScan

string

“”

List of channel numbers to scan (space delimited); empty means all channels

router ↗.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

router ↗.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

router ↗.wlan ↗.agent ↗.maxChannelTime

double

300ms

Channel time for passive scanning, and max channel time for active scanning

router ↗.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

router ↗.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

router ↗.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

router ↗.wlan ↗.agent ↗.defaultSsid

string

“”

List of allowed SSIDs to connect to; leave empty for no filtering

router ↗.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

router ↗.wlan ↗.mgmt ↗.mibModule

string

router ↗.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.originatorMacDataService”

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.ackHandlerModule

string

“^.^.ackHandler”

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

router ↗.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

router ↗.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

router ↗.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

router ↗.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

router ↗.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.dcf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

router ↗.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

router ↗.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

router ↗.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

router ↗.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.^.originatorMacDataService”

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.ackHandlerModule

string

“^.ackHandler”

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.txopLimit

double

-1s

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.longRetryLimit

int

4

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.collisionController ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.shortRetryLimit

int

7

router ↗.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.longRetryLimit

int

4

router ↗.wlan ↗.mac ↗.hcf ↗.hcca ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.subframeNumThreshold

int

-1

Minimum number of subframes needed to compose an A-MSDU. (-1 means it won’t be checked)

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.aggregationLengthThreshold

int

-1

The minimum length for an aggregated payload necessary to create an A-MSDU (-1 means it won’t be checked).

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.maxAMsduSize

int

4065

-1 means infinity

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.qOsCheck

bool

true

Turns on/off the check of the presence of the QoS flag (false means off – this is needed for aggregation in DCF mode).

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.mpduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

router ↗.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

router ↗.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

router ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

router ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

router ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

router ↗.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

router ↗.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

router ↗.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

router ↗.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

router ↗.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

router ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

router ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

router ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

router ↗.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

router ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

router ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

router ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

router ↗.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

router ↗.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

router ↗.wlan ↗.mac ↗.ds ↗.mibModule

string

router ↗.wlan ↗.mac ↗.rx ↗.displayStringTextFormat

string

“{rxStatus}”

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

router ↗.wlan ↗.mac ↗.tx ↗.displayStringTextFormat

string

“{txFramePrefix}{txState}”

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

router ↗.wlan ↗.mac ↗.tx ↗.rxModule

string

router ↗.ppp ↗.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 ↗.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

router ↗.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

router ↗.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

router ↗.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

router ↗.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

router ↗.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

router ↗.ppp ↗.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 ↗.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

router ↗.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

router ↗.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

router ↗.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

router ↗.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

router ↗.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

router ↗.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

router ↗.ppp ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

router ↗.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

router ↗.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

router ↗.ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

router ↗.ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

router ↗.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

router ↗.ppp ↗.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

router ↗.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ppp ↗.ppp ↗.sendRawBytes

bool

false

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

router ↗.ppp ↗.ppp ↗.mtu

int

4470B

router ↗.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

router ↗.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

router ↗.eth ↗.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 ↗.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

router ↗.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

router ↗.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

router ↗.eth ↗.pcapRecorder ↗.pcapFile

string

“”

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

router ↗.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

router ↗.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

router ↗.eth ↗.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 ↗.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

router ↗.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

router ↗.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

router ↗.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

router ↗.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

router ↗.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

router ↗.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

router ↗.tun ↗.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 ↗.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

router ↗.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

router ↗.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

router ↗.tun ↗.pcapRecorder ↗.pcapFile

string

“”

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

router ↗.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

router ↗.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

router ↗.tun ↗.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 ↗.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

router ↗.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

router ↗.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

router ↗.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

router ↗.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

router ↗.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

router ↗.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

router ↗.tun ↗.tun ↗.displayStringTextFormat

string

“”

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

router ↗.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.tun ↗.tun ↗.mtu

int

1500B

router ↗.virt ↗.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 ↗.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

router ↗.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

router ↗.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

router ↗.virt ↗.pcapRecorder ↗.pcapFile

string

“”

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

router ↗.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

router ↗.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

router ↗.virt ↗.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 ↗.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

router ↗.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

router ↗.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

router ↗.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

router ↗.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

router ↗.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

router ↗.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

router ↗.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

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

router ↗.virt ↗.tunnel ↗.interfaceTableModule

string

router ↗.virt ↗.tunnel ↗.realInterface

string

router ↗.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

router ↗.virt ↗.tunnel ↗.address

string

“copy”

router ↗.virt ↗.tunnel ↗.vlanId

int

-1

router ↗.virt ↗.tunnel ↗.steal

bool

vlanId != -1

router ↗.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

router ↗.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv4 ↗.configurator ↗.routingTableModule

string

router ↗.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

router ↗.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

router ↗.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

router ↗.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

router ↗.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

router ↗.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

router ↗.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

router ↗.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

router ↗.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

router ↗.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

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

router ↗.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

router ↗.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

router ↗.ipv4 ↗.up ↗.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 ↗.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

router ↗.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

router ↗.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

router ↗.ipv4 ↗.up ↗.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 ↗.ipv4 ↗.up ↗.serviceMapping

object

{}

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

router ↗.ipv4 ↗.up ↗.protocolMapping

object

{}

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

router ↗.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

router ↗.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv4 ↗.igmp ↗.routingTableModule

string

router ↗.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

router ↗.ipv4 ↗.igmp ↗.enabled

bool

true

router ↗.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

router ↗.ipv4 ↗.igmp ↗.queryInterval

double

125s

router ↗.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

router ↗.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

router ↗.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

router ↗.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

router ↗.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

router ↗.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

router ↗.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

router ↗.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

router ↗.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

router ↗.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv4 ↗.icmp ↗.routingTableModule

string

router ↗.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

router ↗.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

router ↗.ipv4 ↗.mp ↗.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 ↗.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

router ↗.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

router ↗.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

router ↗.ipv4 ↗.mp ↗.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 ↗.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

router ↗.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

router ↗.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

router ↗.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv4 ↗.ip ↗.routingTableModule

string

router ↗.ipv4 ↗.ip ↗.arpModule

string

router ↗.ipv4 ↗.ip ↗.icmpModule

string

router ↗.ipv4 ↗.ip ↗.checksumMode

string

“declared”

router ↗.ipv4 ↗.ip ↗.timeToLive

int

32

router ↗.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

router ↗.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

router ↗.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

router ↗.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

router ↗.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

router ↗.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

router ↗.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

router ↗.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

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

router ↗.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv4 ↗.arp ↗.routingTableModule

string

router ↗.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

router ↗.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

router ↗.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

router ↗.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

router ↗.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

router ↗.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

router ↗.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

router ↗.ipv4 ↗.ipsec ↗.interfaceTableModule

string

router ↗.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

router ↗.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

router ↗.ipv4 ↗.ipsec ↗.spdConfig

xml

router ↗.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

router ↗.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

router ↗.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

router ↗.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

router ↗.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

router ↗.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

router ↗.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

router ↗.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

router ↗.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

router ↗.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

router ↗.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

router ↗.ipv4 ↗.lp ↗.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 ↗.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

router ↗.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

router ↗.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

router ↗.ipv4 ↗.lp ↗.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 ↗.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

router ↗.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

router ↗.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.configurator ↗.interfaceTableModule

string

router ↗.ipv6 ↗.configurator ↗.routingTableModule

string

router ↗.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

router ↗.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

router ↗.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

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

router ↗.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

router ↗.ipv6 ↗.routingTable ↗.forwarding

bool

false

router ↗.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

router ↗.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

router ↗.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

router ↗.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

router ↗.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

router ↗.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

router ↗.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

router ↗.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

router ↗.ipv6 ↗.up ↗.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 ↗.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

router ↗.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

router ↗.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

router ↗.ipv6 ↗.up ↗.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 ↗.ipv6 ↗.up ↗.serviceMapping

object

{}

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

router ↗.ipv6 ↗.up ↗.protocolMapping

object

{}

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

router ↗.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

router ↗.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

router ↗.ipv6 ↗.lp ↗.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 ↗.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

router ↗.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

router ↗.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

router ↗.ipv6 ↗.lp ↗.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 ↗.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

router ↗.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

router ↗.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

router ↗.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

router ↗.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

router ↗.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

router ↗.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

router ↗.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

router ↗.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

router ↗.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

router ↗.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

router ↗.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

router ↗.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

router ↗.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

router ↗.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

router ↗.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

router ↗.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

router ↗.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv6 ↗.ipv6 ↗.routingTableModule

string

router ↗.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

router ↗.ipv6 ↗.ipv6 ↗.icmpv6Module

string

router ↗.ipv6 ↗.ipv6 ↗.procDelay

double

0s

router ↗.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

router ↗.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

router ↗.ipv6 ↗.ipsec ↗.interfaceTableModule

string

router ↗.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

router ↗.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

router ↗.ipv6 ↗.ipsec ↗.spdConfig

xml

router ↗.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

router ↗.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

router ↗.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

router ↗.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

router ↗.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

router ↗.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

router ↗.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

router ↗.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

router ↗.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

router ↗.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

router ↗.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

router ↗.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

router ↗.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

router ↗.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

router ↗.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

router ↗.ipv6 ↗.mipv6 ↗.isMobileNode

bool

router ↗.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

router ↗.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

router ↗.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

router ↗.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

router ↗.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

router ↗.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

router ↗.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

router ↗.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

router ↗.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

router ↗.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

router ↗.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

router ↗.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

router ↗.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

router ↗.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

router ↗.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

router ↗.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

router ↗.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

router ↗.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

router ↗.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

router ↗.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

router ↗.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

router ↗.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

router ↗.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

router ↗.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

router ↗.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

router ↗.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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 ↗.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

router ↗.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.udp ↗.checksumMode

string

“declared”

router ↗.udp ↗.defaultMulticastLoop

bool

true

router ↗.tcp ↗.displayStringTextFormat

string

“”

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

router ↗.tcp ↗.checksumMode

string

“declared”

router ↗.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)

router ↗.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

router ↗.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

router ↗.tcp ↗.limitedTransmitEnabled

bool

false

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

router ↗.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

router ↗.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)

router ↗.tcp ↗.windowScalingSupport

bool

false

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

router ↗.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)

router ↗.tcp ↗.timestampSupport

bool

false

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

router ↗.tcp ↗.mss

int

536

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

router ↗.tcp ↗.msl

int

120s

Maximum Segment Lifetime

router ↗.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

router ↗.tcp ↗.dupthresh

int

3

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

router ↗.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…

router ↗.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

router ↗.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

router ↗.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

router ↗.tcp ↗.dctcpGamma

double

0.0625

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

router ↗.tcp ↗.pmtudEnabled

bool

false

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

router ↗.tcp ↗.pmtudTimeout

double

600s

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

router ↗.sctp ↗.displayStringTextFormat

string

“”

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

router ↗.sctp ↗.interfaceTableModule

string

router ↗.sctp ↗.routingTableModule

string

router ↗.sctp ↗.checksumMode

string

“declared”

router ↗.sctp ↗.numGapReports

int

3

router ↗.sctp ↗.rtoInitial

double

3s

router ↗.sctp ↗.rtoMin

double

1s

router ↗.sctp ↗.rtoMax

double

60s

router ↗.sctp ↗.rtoAlpha

double

0.125

router ↗.sctp ↗.rtoBeta

double

0.250

router ↗.sctp ↗.maxBurst

int

4

router ↗.sctp ↗.maxBurstVariant

string

“maxBurst”

router ↗.sctp ↗.initialWindow

int

0

router ↗.sctp ↗.assocMaxRetrans

int

10

router ↗.sctp ↗.pathMaxRetrans

int

5

router ↗.sctp ↗.maxInitRetrans

int

8

router ↗.sctp ↗.sackPeriod

double

200ms

router ↗.sctp ↗.sackFrequency

int

2

router ↗.sctp ↗.reactivatePrimaryPath

bool

false

router ↗.sctp ↗.sendQueueLimit

int

0

router ↗.sctp ↗.validCookieLifetime

double

10s

router ↗.sctp ↗.enableHeartbeats

bool

true

router ↗.sctp ↗.hbInterval

double

30s

router ↗.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

router ↗.sctp ↗.nagleEnabled

bool

true

router ↗.sctp ↗.naglePoint

int

1468

router ↗.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

router ↗.sctp ↗.fastRecoverySupported

bool

true

router ↗.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

router ↗.sctp ↗.ccModule

int

0

RFC4960=0

router ↗.sctp ↗.osbWithHeader

bool

false

router ↗.sctp ↗.RTXMethod

int

0

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

router ↗.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

router ↗.sctp ↗.arwnd

int

65535

router ↗.sctp ↗.swsLimit

int

3000

Limit for SWS

router ↗.sctp ↗.udpEncapsEnabled

bool

false

router ↗.sctp ↗.natFriendly

bool

false

router ↗.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

router ↗.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

router ↗.sctp ↗.tellArwnd

bool

false

For flow control

router ↗.sctp ↗.messageAcceptLimit

int

0

For flow control

router ↗.sctp ↗.fairStart

double

0s

router ↗.sctp ↗.fairStop

double

0s

router ↗.sctp ↗.streamsToPaths

string

“”

router ↗.sctp ↗.startEndToEndDelay

int

0

router ↗.sctp ↗.stopEndToEndDelay

int

10

router ↗.sctp ↗.throughputInterval

double

1

router ↗.sctp ↗.auth

bool

false

router ↗.sctp ↗.chunks

string

“”

router ↗.sctp ↗.padding

bool

false

router ↗.sctp ↗.addIP

bool

false

router ↗.sctp ↗.addTime

double

0s

router ↗.sctp ↗.addAddress

string

“”

router ↗.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

router ↗.sctp ↗.packetDrop

bool

false

router ↗.sctp ↗.sackNow

bool

false

router ↗.sctp ↗.highSpeedCC

bool

false

router ↗.sctp ↗.checkSackSeqNumber

bool

false

router ↗.sctp ↗.nrSack

bool

false

router ↗.sctp ↗.disableReneging

bool

false

router ↗.sctp ↗.gapReportLimit

int

100000000

router ↗.sctp ↗.gapListOptimizationVariant

string

“none”

router ↗.sctp ↗.smartOverfullSACKHandling

bool

false

router ↗.sctp ↗.allowQoSTracking

bool

false

router ↗.sctp ↗.qosTrackingInterval

double

1.0s

router ↗.sctp ↗.cmtSendAllVariant

string

“normal”

router ↗.sctp ↗.cmtRetransmissionVariant

string

“normal”

router ↗.sctp ↗.cmtCUCVariant

string

“normal”

router ↗.sctp ↗.cmtBufferSplitVariant

string

“none”

router ↗.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

router ↗.sctp ↗.cmtUseSFR

bool

true

router ↗.sctp ↗.cmtUseDAC

bool

true

router ↗.sctp ↗.cmtUseFRC

bool

true

router ↗.sctp ↗.cmtSmartT3Reset

bool

true

router ↗.sctp ↗.cmtSmartFastRTX

bool

true

router ↗.sctp ↗.cmtSmartReneging

bool

false

router ↗.sctp ↗.cmtSlowPathRTTUpdate

bool

false

router ↗.sctp ↗.cmtChunkReschedulingVariant

string

“none”

router ↗.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

router ↗.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

router ↗.sctp ↗.movedChunkFastRTXFactor

double

2.0

router ↗.sctp ↗.cmtSackPath

string

“standard”

router ↗.sctp ↗.strictCwndBooking

bool

false

router ↗.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

router ↗.sctp ↗.cmtCCPathGroups

string

“”

router ↗.sctp ↗.rpPathBlocking

bool

false

router ↗.sctp ↗.rpScaleBlockingTimeout

bool

false

router ↗.sctp ↗.rpMinCwnd

int

1

router ↗.quic ↗.displayStringTextFormat

string

“”

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

router ↗.quic ↗.routingTableModule

string

Set by StandardHost.

router ↗.quic ↗.sendZeroRttTokenAsServer

bool

false

router ↗.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

router ↗.quic ↗.accurateIncreaseInNewRenoCongestionAvoidance

bool

true

For NewReno in Congestion Avoidance, if true, increases cwnd after cwnd-acked bytes; if false, increases cwnd on every acked packet by acked_bytes/cwnd.

router ↗.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

router ↗.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

router ↗.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

router ↗.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

router ↗.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

router ↗.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

router ↗.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

router ↗.quic ↗.sendMaxDataFramesImmediately

bool

false

If true, a MAX_(STREAM)_DATA frame is sent immediately, after generation. Otherwise, sending the frame is delayed until the sending process starts due to another event.

router ↗.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

router ↗.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

router ↗.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

router ↗.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

router ↗.quic ↗.maxPmtu

int

65535B

With useDplpmtud, it is used as upper limit for the PMTU search. Without useDplpmtud, the PMTU is set to the minimum of the MTU of the outgoing interface and this value.

router ↗.quic ↗.dplpmtudMinPmtu

int

0

Specifies the minimum PMTU to use (if 0, it uses 1200 B for IPv4 or 1280 B for IPv6 as minimum PMTU).

router ↗.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

router ↗.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

router ↗.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

router ↗.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

router ↗.quic ↗.useCwndForParallelProbes

int

0

If 0, no parallel probe packets; if 1, uses the availbale cwnd to send additional probe packets and if 2 prefers to send probe packets over other packets.

router ↗.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

router ↗.quic ↗.dplpmtudUsePmtuValidator

bool

true

If true, activates the PMTU Validator that trys to detect when the current PMTU estimation is larger than the actual PMTU.

router ↗.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

router ↗.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

router ↗.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

router ↗.quic ↗.pmtuValidatorInvalidOnPersistentCongestion

int

1

If 0, disabled. If 1, the PMTU validator uses persistent congeation as signal for a decreased PMTU. If 2, only two consecutive persisten congestions used as signal. If 3, …

router ↗.quic ↗.reducePacketTimeThreshold

double

0s

Specifies after which time with no acks, packets with reduced size are sent. If zero, packet size reduction is disabled. If negative, reducePacketPtoFactorThreshold is used instead.

router ↗.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

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 ↗.ospf ↗.displayStringTextFormat

string

“”

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

router ↗.ospf ↗.interfaceTableModule

string

router ↗.ospf ↗.routingTableModule

string

router ↗.ospf ↗.checksumMode

string

“declared”

router ↗.ospf ↗.startupTime

double

0s

Delay before starting OSPF

router ↗.ospf ↗.ospfConfig

xml

xml(“<OSPFASConfig> \ <Router name=’**’ RFC1583Compatible=’true’> \ <BroadcastInterface ifName=’eth[*]’ areaID=’0.0.0.0’ interfaceOutputCost=’0’ /> \ <PointToPointInterface ifName=’ppp[*]’ areaID=’0.0.0.0’ interfaceOutputCost=’0’ /> \ </Router> </OSPFASConfig>”)

xml containing the full OSPF AS configuration

router ↗.ospf ↗.routerPriority

int

1

Priority in DR/BDR election (Specify 0 to exclude the router from the election)

router ↗.ospf ↗.areaID

string

“0.0.0.0”

router ↗.ospf ↗.RFC1583Compatible

bool

false

If ‘false’, prune the set of routing table entries for the ASBR (RFC 3101)

router ↗.ospf ↗.DistributeDefaultRoute

bool

false

Distribute the default route (if exists) using AS-External LSA

router ↗.ospf ↗.helloInterval

int

10s

Specifies the time in seconds between hello packets that the other router sends on an interface

router ↗.ospf ↗.pollInterval

int

120s

Specifies the length of time, in seconds, between OSPF packets that the router send before adjacency is established with a neighbor

router ↗.ospf ↗.routerDeadInterval

int

40s

The interval during which at least one hello packet must be received from a neighbor before the router declares that neighbor as down

router ↗.ospf ↗.retransmissionInterval

int

5s

The time between OSPF LSA retransmissions for adjacencies that belongs to the interface

router ↗.ospf ↗.interfaceTransmissionDelay

int

1s

The number of seconds required to transmit a link state update packet. Valid values are 1 to 65535

router ↗.ospf ↗.interfaceMode

string

“Active”

NoOSPF: the interface is not advertised by OSPF

router ↗.ospf ↗.referenceBandwidth

int

1e8bps

Reference bandwidth for cost calculation

router ↗.ospf ↗.interfaceOutputCost

int

0

Cost of link on the interface (1-1000), 0 means use reference bandwidth

router ↗.ospf ↗.externalInterfaceOutputCost

int

1

Cost of link (1-1000)

router ↗.ospf ↗.externalInterfaceOutputType

string

“Type2”

Type1|Type2

router ↗.ospf ↗.forwardingAddress

string

“0.0.0.0”

router ↗.ospf ↗.linkCost

int

1

Cost of link (1-1000) for HostInterface and LoopbackInterface only

router ↗.ospf ↗.authenticationType

string

“NullType”

router ↗.ospf ↗.authenticationKey

string

“0x00”

0xnn..nn

router ↗.bgp ↗.displayStringTextFormat

string

“”

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

router ↗.bgp ↗.interfaceTableModule

string

router ↗.bgp ↗.routingTableModule

string

router ↗.bgp ↗.addressFamily

string

“ipv4”

address family this BGP instance operates on (one instance serves one family)

router ↗.bgp ↗.routerId

string

“”

the 4-octet BGP Identifier (RFC 4271/6286); required for IPv6, where there is no IPv4 router id to derive it from

router ↗.bgp ↗.ospfRoutingModule

string

parent.hasOspf ? “^.ospf” : “”

router ↗.bgp ↗.startupTime

double

0s

Delay before starting BGP

router ↗.bgp ↗.restartDelay

double

1s

On a lifecycle restart (after a stop or crash), the delay before BGP comes back up when startupTime is 0s, so the node can bring its interfaces back up first

router ↗.bgp ↗.shutdownTime

double

1s

On graceful stop, delay before destroying BGP state so TCP can flush the session teardown (FIN)

router ↗.bgp ↗.stopOperationTimeout

double

2s

Timeout for the lifecycle stop operation

router ↗.bgp ↗.connectRetryTime

double

120s

ConnectRetryTimer interval (RFC 4271), applied to all sessions

router ↗.bgp ↗.holdTime

double

180s

Hold Time proposed in the OPEN message (RFC 4271); the effective hold time is negotiated to the minimum of the two peers

router ↗.bgp ↗.keepAliveTime

double

60s

KeepAlive interval (RFC 4271), typically holdTime/3

router ↗.bgp ↗.bgpConfig

xml

router ↗.bgp ↗.startDelay

double

1s

Base delay before a router starts its sessions (staggers session startup; per-session offsets are added on top)

router ↗.bgp ↗.ExternalPeerStartDelayOffset

double

0.5s

router ↗.bgp ↗.redistributeRip

bool

false

Redistribute routes learned by RIP into BGP

router ↗.bgp ↗.redistributeOspf

string

“”

Redistribute routes learned by OSPF into BGP (O IA E1 E2)

router ↗.bgp ↗.redistributeInternal

bool

false

Redistribute BGP routes into OSPF (as external routes)

router ↗.bgp ↗.nextHopSelf

bool

false

router ↗.bgp ↗.localPreference

int

100

router ↗.bgp ↗.connectedCheck

bool

true

router ↗.bgp ↗.ebgpMultihop

int

1

router ↗.rip ↗.displayStringTextFormat

string

“”

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

router ↗.rip ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.rip ↗.routingTableModule

string

router ↗.rip ↗.ripConfig

xml

xml(“<config><interface metric=’1’/></config>”)

router ↗.rip ↗.mode

string

“RIPv2”

router ↗.rip ↗.startupTime

double

uniform(0s,updateInterval)

Delay before starting RIP

router ↗.rip ↗.shutdownTime

double

1s

Delay before shutting down RIP

router ↗.rip ↗.updateInterval

double

30s

30s timer or update timer

router ↗.rip ↗.routeExpiryTime

double

180s

Invalid timer

router ↗.rip ↗.routePurgeTime

double

120s

Garbage collection timer or flush timer

router ↗.rip ↗.holdDownTime

double

0s

Hold-down timer (not defined in RFC). 0s means not active

router ↗.rip ↗.triggeredUpdate

bool

true

Sending triggered updates on route changes

router ↗.rip ↗.triggeredUpdateDelay

double

uniform(1s,5s)

router ↗.rip ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

router ↗.rip ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

router ↗.pim ↗.pimSplitter ↗.displayStringTextFormat

string

“”

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

router ↗.pim ↗.pimSplitter ↗.interfaceTableModule

string

router ↗.pim ↗.pimSplitter ↗.pimInterfaceTableModule

string

router ↗.pim ↗.pimSplitter ↗.addressFamily

string

“ipv4”

router ↗.pim ↗.pimDM ↗.displayStringTextFormat

string

“”

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

router ↗.pim ↗.pimDM ↗.interfaceTableModule

string

router ↗.pim ↗.pimDM ↗.routingTableModule

string

router ↗.pim ↗.pimDM ↗.pimInterfaceTableModule

string

router ↗.pim ↗.pimDM ↗.pimNeighborTableModule

string

router ↗.pim ↗.pimDM ↗.addressFamily

string

“ipv4”

router ↗.pim ↗.pimDM ↗.holdTime

double

3.5 * helloPeriod

“The Hold Time in the Hello Message should be set to a value that can reasonably be expected to keep the Hello active until a new Hello message is received. On most links, this will be 3.5 times the value of Hello_Period.”

router ↗.pim ↗.pimSM ↗.displayStringTextFormat

string

“”

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

router ↗.pim ↗.pimSM ↗.interfaceTableModule

string

router ↗.pim ↗.pimSM ↗.routingTableModule

string

router ↗.pim ↗.pimSM ↗.pimInterfaceTableModule

string

router ↗.pim ↗.pimSM ↗.pimNeighborTableModule

string

router ↗.pim ↗.pimSM ↗.addressFamily

string

“ipv4”

address family this PIM-SM instance operates on

router ↗.pim ↗.pimSM ↗.RP

string

“”

router ↗.pim ↗.pimSM ↗.designatedRouterPriority

int

-1

router ↗.pim ↗.pimSM ↗.holdTime

double

3.5 * helloPeriod

router ↗.pim ↗.pimSM ↗.joinPrunePeriod

double

60s

Period between Join/Prune messages (called t_periodic in the RFC)

router ↗.pim ↗.pimInterfaceTable ↗.displayStringTextFormat

string

“”

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

router ↗.pim ↗.pimInterfaceTable ↗.interfaceTableModule

string

router ↗.pim ↗.pimInterfaceTable ↗.pimConfig

xml

xml(“<config/>”)

router ↗.pim ↗.pimNeighborTable ↗.displayStringTextFormat

string

“”

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

router ↗.dhcp ↗.displayStringTextFormat

string

“”

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

router ↗.dhcp ↗.interfaceTableModule

string

The path to the InterfaceTable module

router ↗.dhcp ↗.interface

string

“”

Interface to listen on; can be left empty if there is only one non-loopback interface

router ↗.dhcp ↗.numReservedAddresses

int

Number of addresses to skip at the start of the network’s address range

router ↗.dhcp ↗.maxNumClients

int

Maximum number of clients (IPs) allowed to be leased

router ↗.dhcp ↗.gateway

string

“”

Gateway to assign, if empty use the interface address

router ↗.dhcp ↗.leaseTime

int

Lease time in seconds

router ↗.dhcp ↗.startTime

double

0s

Application start time

router ↗.dhcp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

router ↗.dhcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

router ↗.eigrp ↗.eigrpSplitter ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpIpv4Pdm ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpInterfaceTable ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpIpv4NeighborTable ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpIpv4TopologyTable ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpRtp ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpInterfaceTable6 ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpIpv6Pdm ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpIpv6NeighborTable ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpIpv6TopologyTable ↗.displayStringTextFormat

string

“”

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

router ↗.eigrp ↗.eigrpRtp6 ↗.displayStringTextFormat

string

“”

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

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”

Initial status of the network node

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

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.ethernet ↗.displayStringTextFormat

string

“passed up: {totalFromMAC}\nsent: {totalFromHigherLayer}”

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

upf.ethernet ↗.registerProtocol

bool

false

FIXME //KLUDGE should redesign place of EthernetEncapsulation and LLC modules

upf.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ethernet ↗.fcsMode

string

“declared”

upf.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

upf.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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.lo ↗.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.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

upf.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

upf.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

upf.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

upf.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

upf.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

upf.lo ↗.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.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

upf.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

upf.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

upf.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

upf.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.lo ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

upf.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

upf.lo ↗.lo ↗.displayStringTextFormat

string

“rcv:{numRcvdOK} snt:{numSent}”

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

upf.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.lo ↗.lo ↗.mtu

int

4470B

upf.wlan ↗.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.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

upf.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

upf.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

upf.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

upf.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

upf.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

upf.wlan ↗.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.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

upf.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

upf.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

upf.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

upf.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.wlan ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

upf.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

upf.wlan ↗.mib ↗.displayStringTextFormat

string

“Address: {address}{ssidStr}\n{modeStr}{stationTypeStr}{qosStr}{associatedStr}”

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

upf.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.wlan ↗.agent ↗.mibModule

string

upf.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

upf.wlan ↗.agent ↗.channelsToScan

string

“”

List of channel numbers to scan (space delimited); empty means all channels

upf.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

upf.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

upf.wlan ↗.agent ↗.maxChannelTime

double

300ms

Channel time for passive scanning, and max channel time for active scanning

upf.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

upf.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

upf.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

upf.wlan ↗.agent ↗.defaultSsid

string

“”

List of allowed SSIDs to connect to; leave empty for no filtering

upf.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

upf.wlan ↗.mgmt ↗.mibModule

string

upf.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.originatorMacDataService”

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.ackHandlerModule

string

“^.^.ackHandler”

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

upf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

upf.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

upf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

upf.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

upf.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.dcf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

upf.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

upf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

upf.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

upf.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.^.originatorMacDataService”

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.ackHandlerModule

string

“^.ackHandler”

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.txopLimit

double

-1s

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.longRetryLimit

int

4

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.collisionController ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.shortRetryLimit

int

7

upf.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.longRetryLimit

int

4

upf.wlan ↗.mac ↗.hcf ↗.hcca ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.subframeNumThreshold

int

-1

Minimum number of subframes needed to compose an A-MSDU. (-1 means it won’t be checked)

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.aggregationLengthThreshold

int

-1

The minimum length for an aggregated payload necessary to create an A-MSDU (-1 means it won’t be checked).

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.maxAMsduSize

int

4065

-1 means infinity

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.qOsCheck

bool

true

Turns on/off the check of the presence of the QoS flag (false means off – this is needed for aggregation in DCF mode).

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.mpduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

upf.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

upf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

upf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

upf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

upf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

upf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

upf.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

upf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

upf.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

upf.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

upf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

upf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

upf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

upf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

upf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

upf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

upf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

upf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

upf.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

upf.wlan ↗.mac ↗.ds ↗.mibModule

string

upf.wlan ↗.mac ↗.rx ↗.displayStringTextFormat

string

“{rxStatus}”

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

upf.wlan ↗.mac ↗.tx ↗.displayStringTextFormat

string

“{txFramePrefix}{txState}”

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

upf.wlan ↗.mac ↗.tx ↗.rxModule

string

upf.ppp ↗.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.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

upf.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

upf.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

upf.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

upf.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

upf.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

upf.ppp ↗.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.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

upf.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

upf.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

upf.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

upf.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

upf.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

upf.ppp ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

upf.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

upf.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

upf.ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

upf.ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

upf.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

upf.ppp ↗.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.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ppp ↗.ppp ↗.sendRawBytes

bool

false

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

upf.ppp ↗.ppp ↗.mtu

int

4470B

upf.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

upf.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

upf.eth ↗.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.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

upf.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

upf.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

upf.eth ↗.pcapRecorder ↗.pcapFile

string

“”

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

upf.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

upf.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

upf.eth ↗.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.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

upf.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

upf.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

upf.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

upf.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

upf.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

upf.tun ↗.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.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

upf.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

upf.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

upf.tun ↗.pcapRecorder ↗.pcapFile

string

“”

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

upf.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

upf.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

upf.tun ↗.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.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

upf.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

upf.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

upf.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

upf.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

upf.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

upf.tun ↗.tun ↗.displayStringTextFormat

string

“”

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

upf.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.tun ↗.tun ↗.mtu

int

1500B

upf.virt ↗.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.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

upf.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

upf.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

upf.virt ↗.pcapRecorder ↗.pcapFile

string

“”

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

upf.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

upf.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

upf.virt ↗.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.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

upf.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

upf.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

upf.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

upf.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

upf.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

upf.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

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

upf.virt ↗.tunnel ↗.interfaceTableModule

string

upf.virt ↗.tunnel ↗.realInterface

string

upf.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

upf.virt ↗.tunnel ↗.address

string

“copy”

upf.virt ↗.tunnel ↗.vlanId

int

-1

upf.virt ↗.tunnel ↗.steal

bool

vlanId != -1

upf.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

upf.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv4 ↗.configurator ↗.routingTableModule

string

upf.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

upf.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

upf.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

upf.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

upf.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

upf.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

upf.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

upf.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

upf.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

upf.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

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

upf.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

upf.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

upf.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

upf.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

upf.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

upf.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.serviceMapping

object

{}

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

upf.ipv4 ↗.up ↗.protocolMapping

object

{}

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

upf.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

upf.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv4 ↗.igmp ↗.routingTableModule

string

upf.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

upf.ipv4 ↗.igmp ↗.enabled

bool

true

upf.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

upf.ipv4 ↗.igmp ↗.queryInterval

double

125s

upf.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

upf.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

upf.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

upf.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

upf.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

upf.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

upf.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

upf.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

upf.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

upf.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv4 ↗.icmp ↗.routingTableModule

string

upf.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

upf.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

upf.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

upf.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

upf.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

upf.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

upf.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

upf.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

upf.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv4 ↗.ip ↗.routingTableModule

string

upf.ipv4 ↗.ip ↗.arpModule

string

upf.ipv4 ↗.ip ↗.icmpModule

string

upf.ipv4 ↗.ip ↗.checksumMode

string

“declared”

upf.ipv4 ↗.ip ↗.timeToLive

int

32

upf.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

upf.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

upf.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

upf.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

upf.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

upf.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

upf.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

upf.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

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

upf.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv4 ↗.arp ↗.routingTableModule

string

upf.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

upf.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

upf.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

upf.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

upf.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

upf.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

upf.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

upf.ipv4 ↗.ipsec ↗.interfaceTableModule

string

upf.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

upf.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

upf.ipv4 ↗.ipsec ↗.spdConfig

xml

upf.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

upf.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

upf.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

upf.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

upf.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

upf.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

upf.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

upf.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

upf.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

upf.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

upf.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

upf.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

upf.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

upf.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

upf.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

upf.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

upf.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.configurator ↗.interfaceTableModule

string

upf.ipv6 ↗.configurator ↗.routingTableModule

string

upf.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

upf.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

upf.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

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

upf.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

upf.ipv6 ↗.routingTable ↗.forwarding

bool

false

upf.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

upf.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

upf.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

upf.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

upf.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

upf.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

upf.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

upf.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

upf.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

upf.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

upf.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

upf.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.serviceMapping

object

{}

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

upf.ipv6 ↗.up ↗.protocolMapping

object

{}

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

upf.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

upf.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

upf.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

upf.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

upf.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

upf.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

upf.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

upf.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

upf.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

upf.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

upf.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

upf.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

upf.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

upf.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

upf.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

upf.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

upf.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

upf.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

upf.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

upf.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

upf.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

upf.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

upf.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv6 ↗.ipv6 ↗.routingTableModule

string

upf.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

upf.ipv6 ↗.ipv6 ↗.icmpv6Module

string

upf.ipv6 ↗.ipv6 ↗.procDelay

double

0s

upf.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

upf.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

upf.ipv6 ↗.ipsec ↗.interfaceTableModule

string

upf.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

upf.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

upf.ipv6 ↗.ipsec ↗.spdConfig

xml

upf.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

upf.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

upf.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

upf.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

upf.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

upf.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

upf.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

upf.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

upf.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

upf.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

upf.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

upf.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

upf.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

upf.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

upf.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

upf.ipv6 ↗.mipv6 ↗.isMobileNode

bool

upf.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

upf.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

upf.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

upf.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

upf.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

upf.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

upf.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

upf.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

upf.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

upf.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

upf.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

upf.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

upf.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

upf.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

upf.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

upf.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

upf.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

upf.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

upf.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

upf.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

upf.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

upf.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

upf.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

upf.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

upf.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

upf.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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.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

upf.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

upf.udp ↗.checksumMode

string

“declared”

upf.udp ↗.defaultMulticastLoop

bool

true

upf.tcp ↗.displayStringTextFormat

string

“”

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

upf.tcp ↗.checksumMode

string

“declared”

upf.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)

upf.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

upf.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

upf.tcp ↗.limitedTransmitEnabled

bool

false

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

upf.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

upf.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)

upf.tcp ↗.windowScalingSupport

bool

false

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

upf.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)

upf.tcp ↗.timestampSupport

bool

false

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

upf.tcp ↗.mss

int

536

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

upf.tcp ↗.msl

int

120s

Maximum Segment Lifetime

upf.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

upf.tcp ↗.dupthresh

int

3

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

upf.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…

upf.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

upf.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

upf.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

upf.tcp ↗.dctcpGamma

double

0.0625

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

upf.tcp ↗.pmtudEnabled

bool

false

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

upf.tcp ↗.pmtudTimeout

double

600s

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

upf.sctp ↗.displayStringTextFormat

string

“”

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

upf.sctp ↗.interfaceTableModule

string

upf.sctp ↗.routingTableModule

string

upf.sctp ↗.checksumMode

string

“declared”

upf.sctp ↗.numGapReports

int

3

upf.sctp ↗.rtoInitial

double

3s

upf.sctp ↗.rtoMin

double

1s

upf.sctp ↗.rtoMax

double

60s

upf.sctp ↗.rtoAlpha

double

0.125

upf.sctp ↗.rtoBeta

double

0.250

upf.sctp ↗.maxBurst

int

4

upf.sctp ↗.maxBurstVariant

string

“maxBurst”

upf.sctp ↗.initialWindow

int

0

upf.sctp ↗.assocMaxRetrans

int

10

upf.sctp ↗.pathMaxRetrans

int

5

upf.sctp ↗.maxInitRetrans

int

8

upf.sctp ↗.sackPeriod

double

200ms

upf.sctp ↗.sackFrequency

int

2

upf.sctp ↗.reactivatePrimaryPath

bool

false

upf.sctp ↗.sendQueueLimit

int

0

upf.sctp ↗.validCookieLifetime

double

10s

upf.sctp ↗.enableHeartbeats

bool

true

upf.sctp ↗.hbInterval

double

30s

upf.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

upf.sctp ↗.nagleEnabled

bool

true

upf.sctp ↗.naglePoint

int

1468

upf.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

upf.sctp ↗.fastRecoverySupported

bool

true

upf.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

upf.sctp ↗.ccModule

int

0

RFC4960=0

upf.sctp ↗.osbWithHeader

bool

false

upf.sctp ↗.RTXMethod

int

0

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

upf.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

upf.sctp ↗.arwnd

int

65535

upf.sctp ↗.swsLimit

int

3000

Limit for SWS

upf.sctp ↗.udpEncapsEnabled

bool

false

upf.sctp ↗.natFriendly

bool

false

upf.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

upf.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

upf.sctp ↗.tellArwnd

bool

false

For flow control

upf.sctp ↗.messageAcceptLimit

int

0

For flow control

upf.sctp ↗.fairStart

double

0s

upf.sctp ↗.fairStop

double

0s

upf.sctp ↗.streamsToPaths

string

“”

upf.sctp ↗.startEndToEndDelay

int

0

upf.sctp ↗.stopEndToEndDelay

int

10

upf.sctp ↗.throughputInterval

double

1

upf.sctp ↗.auth

bool

false

upf.sctp ↗.chunks

string

“”

upf.sctp ↗.padding

bool

false

upf.sctp ↗.addIP

bool

false

upf.sctp ↗.addTime

double

0s

upf.sctp ↗.addAddress

string

“”

upf.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

upf.sctp ↗.packetDrop

bool

false

upf.sctp ↗.sackNow

bool

false

upf.sctp ↗.highSpeedCC

bool

false

upf.sctp ↗.checkSackSeqNumber

bool

false

upf.sctp ↗.nrSack

bool

false

upf.sctp ↗.disableReneging

bool

false

upf.sctp ↗.gapReportLimit

int

100000000

upf.sctp ↗.gapListOptimizationVariant

string

“none”

upf.sctp ↗.smartOverfullSACKHandling

bool

false

upf.sctp ↗.allowQoSTracking

bool

false

upf.sctp ↗.qosTrackingInterval

double

1.0s

upf.sctp ↗.cmtSendAllVariant

string

“normal”

upf.sctp ↗.cmtRetransmissionVariant

string

“normal”

upf.sctp ↗.cmtCUCVariant

string

“normal”

upf.sctp ↗.cmtBufferSplitVariant

string

“none”

upf.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

upf.sctp ↗.cmtUseSFR

bool

true

upf.sctp ↗.cmtUseDAC

bool

true

upf.sctp ↗.cmtUseFRC

bool

true

upf.sctp ↗.cmtSmartT3Reset

bool

true

upf.sctp ↗.cmtSmartFastRTX

bool

true

upf.sctp ↗.cmtSmartReneging

bool

false

upf.sctp ↗.cmtSlowPathRTTUpdate

bool

false

upf.sctp ↗.cmtChunkReschedulingVariant

string

“none”

upf.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

upf.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

upf.sctp ↗.movedChunkFastRTXFactor

double

2.0

upf.sctp ↗.cmtSackPath

string

“standard”

upf.sctp ↗.strictCwndBooking

bool

false

upf.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

upf.sctp ↗.cmtCCPathGroups

string

“”

upf.sctp ↗.rpPathBlocking

bool

false

upf.sctp ↗.rpScaleBlockingTimeout

bool

false

upf.sctp ↗.rpMinCwnd

int

1

upf.quic ↗.displayStringTextFormat

string

“”

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

upf.quic ↗.routingTableModule

string

Set by StandardHost.

upf.quic ↗.sendZeroRttTokenAsServer

bool

false

upf.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

upf.quic ↗.accurateIncreaseInNewRenoCongestionAvoidance

bool

true

For NewReno in Congestion Avoidance, if true, increases cwnd after cwnd-acked bytes; if false, increases cwnd on every acked packet by acked_bytes/cwnd.

upf.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

upf.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

upf.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

upf.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

upf.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

upf.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

upf.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

upf.quic ↗.sendMaxDataFramesImmediately

bool

false

If true, a MAX_(STREAM)_DATA frame is sent immediately, after generation. Otherwise, sending the frame is delayed until the sending process starts due to another event.

upf.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

upf.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

upf.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

upf.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

upf.quic ↗.maxPmtu

int

65535B

With useDplpmtud, it is used as upper limit for the PMTU search. Without useDplpmtud, the PMTU is set to the minimum of the MTU of the outgoing interface and this value.

upf.quic ↗.dplpmtudMinPmtu

int

0

Specifies the minimum PMTU to use (if 0, it uses 1200 B for IPv4 or 1280 B for IPv6 as minimum PMTU).

upf.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

upf.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

upf.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

upf.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

upf.quic ↗.useCwndForParallelProbes

int

0

If 0, no parallel probe packets; if 1, uses the availbale cwnd to send additional probe packets and if 2 prefers to send probe packets over other packets.

upf.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

upf.quic ↗.dplpmtudUsePmtuValidator

bool

true

If true, activates the PMTU Validator that trys to detect when the current PMTU estimation is larger than the actual PMTU.

upf.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

upf.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

upf.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

upf.quic ↗.pmtuValidatorInvalidOnPersistentCongestion

int

1

If 0, disabled. If 1, the PMTU validator uses persistent congeation as signal for a decreased PMTU. If 2, only two consecutive persisten congestions used as signal. If 3, …

upf.quic ↗.reducePacketTimeThreshold

double

0s

Specifies after which time with no acks, packets with reduced size are sent. If zero, packet size reduction is disabled. If negative, reducePacketPtoFactorThreshold is used instead.

upf.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

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

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 ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

upf.dnPpp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

upf.dnPpp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

upf.dnPpp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

upf.dnPpp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

upf.dnPpp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

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 ↗.displayStringTextFormat

string

“addr: %a\nvlan: %v”

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

upf.ethBridge.macTable ↗.agingTime

double

120s

upf.ethBridge.macTable ↗.forwardingTable

object

[]

upf.ethBridge.macTable ↗.forwardingTableFile

string

“”

upf.ethBridge.macTable ↗.interfaceTableModule

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.bridging ↗.directionReverser ↗.fork ↗.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.bridging ↗.directionReverser ↗.fork ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

upf.ethBridge.bridging ↗.directionReverser ↗.fork ↗.forwardProtocolRegistration

bool

true

upf.ethBridge.bridging ↗.directionReverser ↗.fork ↗.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.bridging ↗.directionReverser ↗.fork ↗.serviceMapping

object

{}

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

upf.ethBridge.bridging ↗.directionReverser ↗.fork ↗.protocolMapping

object

{}

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

upf.ethBridge.bridging ↗.directionReverser ↗.reverser ↗.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.bridging ↗.directionReverser ↗.reverser ↗.forwardVlan

bool

true

upf.ethBridge.bridging ↗.directionReverser ↗.reverser ↗.forwardPcp

bool

true

upf.ethBridge.bridging ↗.directionReverser ↗.reverser ↗.excludeEncapsulationProtocols

object

[]

upf.ethBridge.bridging ↗.directionReverser ↗.join ↗.displayStringTextFormat

string

“passed %p pk (%l)”

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

upf.ethBridge.bridging ↗.directionReverser ↗.join ↗.forwardServiceRegistration

bool

true

upf.ethBridge.bridging ↗.interfaceRelay ↗.learner ↗.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.bridging ↗.interfaceRelay ↗.learner ↗.macTableModule

string

Relative module path of MAC table

upf.ethBridge.bridging ↗.interfaceRelay ↗.learner ↗.interfaceTableModule

string

Relative module path of the interface table

upf.ethBridge.bridging ↗.interfaceRelay ↗.selector ↗.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.bridging ↗.interfaceRelay ↗.selector ↗.macTableModule

string

Relative module path of MAC table

upf.ethBridge.bridging ↗.interfaceRelay ↗.selector ↗.interfaceTableModule

string

Relative module path of interface table

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.ethernet ↗.socketTable ↗.displayStringTextFormat

string

“”

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

upf.ethBridge.ethernet ↗.socketCommandProcessor ↗.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.ethernet ↗.socketCommandProcessor ↗.socketTableModule

string

upf.ethBridge.ethernet ↗.macHeaderInserter ↗.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.ethernet ↗.macHeaderInserter ↗.interfaceTableModule

string

upf.ethBridge.ethernet ↗.paddingInserter ↗.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.ethernet ↗.paddingInserter ↗.minLength

int

upf.ethBridge.ethernet ↗.paddingInserter ↗.roundingLength

int

1B

upf.ethBridge.ethernet ↗.paddingInserter ↗.insertionPosition

string

“back”

upf.ethBridge.ethernet ↗.fcsInserter ↗.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.ethernet ↗.fcsInserter ↗.fcsMode

string

“declared”

upf.ethBridge.ethernet ↗.socketPacketProcessor ↗.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.ethernet ↗.socketPacketProcessor ↗.socketTableModule

string

upf.ethBridge.ethernet ↗.macHeaderChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

upf.ethBridge.ethernet ↗.macHeaderChecker ↗.backpressure

bool

false

upf.ethBridge.ethernet ↗.macHeaderChecker ↗.interfaceTableModule

string

upf.ethBridge.ethernet ↗.macHeaderChecker ↗.promiscuous

bool

false

upf.ethBridge.ethernet ↗.fcsChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

upf.ethBridge.ethernet ↗.fcsChecker ↗.backpressure

bool

false

upf.ethBridge.ethernet ↗.fcsChecker ↗.popFcs

bool

true

upf.ethBridge.ieee8021q ↗.socketTable ↗.displayStringTextFormat

string

“”

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

upf.ethBridge.ieee8021q ↗.socketCommandProcessor ↗.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.ieee8021q ↗.socketCommandProcessor ↗.socketTableModule

string

upf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.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.ieee8021q ↗.qTagHeaderInserter ↗.vlanTagType

string

“c”

upf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.nextProtocol

string

“ethernetmac”

upf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultVlanId

int

-1

upf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultPcp

int

-1

upf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultUserPriority

int

-1

upf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultDropEligible

int

-1

<0: unspecified, 0: false, >0: true

upf.ethBridge.ieee8021q ↗.socketPacketProcessor ↗.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.ieee8021q ↗.socketPacketProcessor ↗.socketTableModule

string

upf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

upf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.backpressure

bool

false

upf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.vlanTagType

string

“c”

upf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.vlanIdFilter

object

[]

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 ↗.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.dnEth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

upf.dnEth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

upf.dnEth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

upf.dnEth ↗.pcapRecorder ↗.pcapFile

string

“”

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

upf.dnEth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

upf.dnEth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

upf.dnEth ↗.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.dnEth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

upf.dnEth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

upf.dnEth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

upf.dnEth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

upf.dnEth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.dnEth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

upf.dnEth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

upf.dnEth ↗.macLayer ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

upf.dnEth ↗.macLayer ↗.queue ↗.packetCapacity

int

-1

Maximum number of packets in the queue, no limit by default

upf.dnEth ↗.macLayer ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

upf.dnEth ↗.macLayer ↗.queue ↗.dropperClass

string

“”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

upf.dnEth ↗.macLayer ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

upf.dnEth ↗.macLayer ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

upf.dnEth ↗.macLayer ↗.server ↗.displayStringTextFormat

string

“served %p pk (%l)”

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

upf.dnEth ↗.macLayer ↗.server ↗.serveSchedulingPriority

int

0

Specifies the FES scheduling priority for the extra event that is pulling the packet, -1 means no extra event

upf.dnEth ↗.macLayer ↗.outboundEmitter ↗.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.dnEth ↗.macLayer ↗.outboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.dnEth ↗.macLayer ↗.outboundEmitter ↗.direction

string

“undefined”

upf.dnEth ↗.macLayer ↗.outboundEmitter ↗.signalName

string

upf.dnEth ↗.macLayer ↗.fcsChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

upf.dnEth ↗.macLayer ↗.fcsChecker ↗.backpressure

bool

false

upf.dnEth ↗.macLayer ↗.fcsChecker ↗.popFcs

bool

false

upf.dnEth ↗.macLayer ↗.inboundEmitter ↗.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.dnEth ↗.macLayer ↗.inboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.dnEth ↗.macLayer ↗.inboundEmitter ↗.direction

string

“undefined”

upf.dnEth ↗.macLayer ↗.inboundEmitter ↗.signalName

string

upf.dnEth ↗.phyLayer ↗.phyHeaderInserter ↗.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.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.displayStringTextFormat

string

“delayed %p pk (%l)\nifg: %g”

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

upf.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

upf.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.initialChannelBusy

bool

false

Assume that the channel was busy before the simulation started

upf.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.duration

double

96s / dropUnit(parent.bitrate)

upf.dnEth ↗.phyLayer ↗.outboundEmitter ↗.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.dnEth ↗.phyLayer ↗.outboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.dnEth ↗.phyLayer ↗.outboundEmitter ↗.direction

string

“undefined”

upf.dnEth ↗.phyLayer ↗.outboundEmitter ↗.signalName

string

upf.dnEth ↗.phyLayer ↗.transmitter ↗.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.dnEth ↗.phyLayer ↗.transmitter ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

upf.dnEth ↗.phyLayer ↗.transmitter ↗.datarate

double

parent.bitrate

upf.dnEth ↗.phyLayer ↗.phyHeaderChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

upf.dnEth ↗.phyLayer ↗.phyHeaderChecker ↗.backpressure

bool

false

upf.dnEth ↗.phyLayer ↗.inboundEmitter ↗.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.dnEth ↗.phyLayer ↗.inboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

upf.dnEth ↗.phyLayer ↗.inboundEmitter ↗.direction

string

“undefined”

upf.dnEth ↗.phyLayer ↗.inboundEmitter ↗.signalName

string

upf.dnEth ↗.phyLayer ↗.receiver ↗.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.dnEth ↗.phyLayer ↗.receiver ↗.datarate

double

parent.bitrate

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”

Initial status of the network node

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

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.ethernet ↗.displayStringTextFormat

string

“passed up: {totalFromMAC}\nsent: {totalFromHigherLayer}”

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

iUpf.ethernet ↗.registerProtocol

bool

false

FIXME //KLUDGE should redesign place of EthernetEncapsulation and LLC modules

iUpf.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ethernet ↗.fcsMode

string

“declared”

iUpf.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

iUpf.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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.lo ↗.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.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

iUpf.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

iUpf.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

iUpf.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

iUpf.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

iUpf.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

iUpf.lo ↗.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.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

iUpf.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

iUpf.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

iUpf.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

iUpf.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.lo ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

iUpf.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

iUpf.lo ↗.lo ↗.displayStringTextFormat

string

“rcv:{numRcvdOK} snt:{numSent}”

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

iUpf.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.lo ↗.lo ↗.mtu

int

4470B

iUpf.wlan ↗.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.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

iUpf.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

iUpf.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

iUpf.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

iUpf.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

iUpf.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

iUpf.wlan ↗.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.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

iUpf.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

iUpf.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

iUpf.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

iUpf.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.wlan ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

iUpf.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

iUpf.wlan ↗.mib ↗.displayStringTextFormat

string

“Address: {address}{ssidStr}\n{modeStr}{stationTypeStr}{qosStr}{associatedStr}”

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

iUpf.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.wlan ↗.agent ↗.mibModule

string

iUpf.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

iUpf.wlan ↗.agent ↗.channelsToScan

string

“”

List of channel numbers to scan (space delimited); empty means all channels

iUpf.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

iUpf.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

iUpf.wlan ↗.agent ↗.maxChannelTime

double

300ms

Channel time for passive scanning, and max channel time for active scanning

iUpf.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

iUpf.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

iUpf.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

iUpf.wlan ↗.agent ↗.defaultSsid

string

“”

List of allowed SSIDs to connect to; leave empty for no filtering

iUpf.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

iUpf.wlan ↗.mgmt ↗.mibModule

string

iUpf.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.originatorMacDataService”

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.ackHandlerModule

string

“^.^.ackHandler”

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

iUpf.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

iUpf.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

iUpf.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

iUpf.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

iUpf.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.dcf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

iUpf.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

iUpf.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

iUpf.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

iUpf.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.^.originatorMacDataService”

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.ackHandlerModule

string

“^.ackHandler”

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.txopLimit

double

-1s

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.longRetryLimit

int

4

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.collisionController ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.shortRetryLimit

int

7

iUpf.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.longRetryLimit

int

4

iUpf.wlan ↗.mac ↗.hcf ↗.hcca ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.subframeNumThreshold

int

-1

Minimum number of subframes needed to compose an A-MSDU. (-1 means it won’t be checked)

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.aggregationLengthThreshold

int

-1

The minimum length for an aggregated payload necessary to create an A-MSDU (-1 means it won’t be checked).

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.maxAMsduSize

int

4065

-1 means infinity

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.qOsCheck

bool

true

Turns on/off the check of the presence of the QoS flag (false means off – this is needed for aggregation in DCF mode).

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.mpduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

iUpf.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

iUpf.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

iUpf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

iUpf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

iUpf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

iUpf.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

iUpf.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

iUpf.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

iUpf.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

iUpf.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

iUpf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

iUpf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

iUpf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

iUpf.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

iUpf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

iUpf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

iUpf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

iUpf.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

iUpf.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

iUpf.wlan ↗.mac ↗.ds ↗.mibModule

string

iUpf.wlan ↗.mac ↗.rx ↗.displayStringTextFormat

string

“{rxStatus}”

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

iUpf.wlan ↗.mac ↗.tx ↗.displayStringTextFormat

string

“{txFramePrefix}{txState}”

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

iUpf.wlan ↗.mac ↗.tx ↗.rxModule

string

iUpf.ppp ↗.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.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

iUpf.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

iUpf.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

iUpf.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

iUpf.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

iUpf.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

iUpf.ppp ↗.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.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

iUpf.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

iUpf.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

iUpf.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

iUpf.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

iUpf.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

iUpf.ppp ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

iUpf.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

iUpf.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

iUpf.ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

iUpf.ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

iUpf.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

iUpf.ppp ↗.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.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ppp ↗.ppp ↗.sendRawBytes

bool

false

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

iUpf.ppp ↗.ppp ↗.mtu

int

4470B

iUpf.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

iUpf.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

iUpf.eth ↗.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.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

iUpf.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

iUpf.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

iUpf.eth ↗.pcapRecorder ↗.pcapFile

string

“”

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

iUpf.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

iUpf.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

iUpf.eth ↗.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.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

iUpf.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

iUpf.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

iUpf.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

iUpf.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

iUpf.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

iUpf.tun ↗.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.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

iUpf.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

iUpf.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

iUpf.tun ↗.pcapRecorder ↗.pcapFile

string

“”

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

iUpf.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

iUpf.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

iUpf.tun ↗.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.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

iUpf.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

iUpf.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

iUpf.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

iUpf.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

iUpf.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

iUpf.tun ↗.tun ↗.displayStringTextFormat

string

“”

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

iUpf.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.tun ↗.tun ↗.mtu

int

1500B

iUpf.virt ↗.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.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

iUpf.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

iUpf.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

iUpf.virt ↗.pcapRecorder ↗.pcapFile

string

“”

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

iUpf.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

iUpf.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

iUpf.virt ↗.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.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

iUpf.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

iUpf.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

iUpf.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

iUpf.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

iUpf.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

iUpf.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

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

iUpf.virt ↗.tunnel ↗.interfaceTableModule

string

iUpf.virt ↗.tunnel ↗.realInterface

string

iUpf.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

iUpf.virt ↗.tunnel ↗.address

string

“copy”

iUpf.virt ↗.tunnel ↗.vlanId

int

-1

iUpf.virt ↗.tunnel ↗.steal

bool

vlanId != -1

iUpf.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

iUpf.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv4 ↗.configurator ↗.routingTableModule

string

iUpf.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

iUpf.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

iUpf.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

iUpf.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

iUpf.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

iUpf.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

iUpf.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

iUpf.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

iUpf.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

iUpf.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

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

iUpf.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

iUpf.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

iUpf.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

iUpf.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

iUpf.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

iUpf.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.serviceMapping

object

{}

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

iUpf.ipv4 ↗.up ↗.protocolMapping

object

{}

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

iUpf.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

iUpf.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv4 ↗.igmp ↗.routingTableModule

string

iUpf.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

iUpf.ipv4 ↗.igmp ↗.enabled

bool

true

iUpf.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

iUpf.ipv4 ↗.igmp ↗.queryInterval

double

125s

iUpf.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

iUpf.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

iUpf.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

iUpf.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

iUpf.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

iUpf.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

iUpf.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

iUpf.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

iUpf.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

iUpf.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv4 ↗.icmp ↗.routingTableModule

string

iUpf.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

iUpf.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

iUpf.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

iUpf.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

iUpf.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

iUpf.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

iUpf.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

iUpf.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

iUpf.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv4 ↗.ip ↗.routingTableModule

string

iUpf.ipv4 ↗.ip ↗.arpModule

string

iUpf.ipv4 ↗.ip ↗.icmpModule

string

iUpf.ipv4 ↗.ip ↗.checksumMode

string

“declared”

iUpf.ipv4 ↗.ip ↗.timeToLive

int

32

iUpf.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

iUpf.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

iUpf.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

iUpf.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

iUpf.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

iUpf.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

iUpf.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

iUpf.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

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

iUpf.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv4 ↗.arp ↗.routingTableModule

string

iUpf.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

iUpf.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

iUpf.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

iUpf.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

iUpf.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

iUpf.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

iUpf.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

iUpf.ipv4 ↗.ipsec ↗.interfaceTableModule

string

iUpf.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

iUpf.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

iUpf.ipv4 ↗.ipsec ↗.spdConfig

xml

iUpf.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

iUpf.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

iUpf.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

iUpf.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

iUpf.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

iUpf.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

iUpf.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

iUpf.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

iUpf.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

iUpf.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

iUpf.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

iUpf.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

iUpf.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

iUpf.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

iUpf.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

iUpf.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

iUpf.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.configurator ↗.interfaceTableModule

string

iUpf.ipv6 ↗.configurator ↗.routingTableModule

string

iUpf.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

iUpf.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

iUpf.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

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

iUpf.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

iUpf.ipv6 ↗.routingTable ↗.forwarding

bool

false

iUpf.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

iUpf.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

iUpf.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

iUpf.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

iUpf.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

iUpf.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

iUpf.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

iUpf.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

iUpf.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

iUpf.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

iUpf.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

iUpf.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.serviceMapping

object

{}

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

iUpf.ipv6 ↗.up ↗.protocolMapping

object

{}

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

iUpf.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

iUpf.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

iUpf.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

iUpf.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

iUpf.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

iUpf.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

iUpf.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

iUpf.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

iUpf.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

iUpf.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

iUpf.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

iUpf.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

iUpf.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

iUpf.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

iUpf.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

iUpf.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

iUpf.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

iUpf.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

iUpf.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

iUpf.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

iUpf.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

iUpf.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

iUpf.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv6 ↗.ipv6 ↗.routingTableModule

string

iUpf.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

iUpf.ipv6 ↗.ipv6 ↗.icmpv6Module

string

iUpf.ipv6 ↗.ipv6 ↗.procDelay

double

0s

iUpf.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

iUpf.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

iUpf.ipv6 ↗.ipsec ↗.interfaceTableModule

string

iUpf.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

iUpf.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

iUpf.ipv6 ↗.ipsec ↗.spdConfig

xml

iUpf.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

iUpf.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

iUpf.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

iUpf.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

iUpf.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

iUpf.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

iUpf.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

iUpf.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

iUpf.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

iUpf.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

iUpf.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

iUpf.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

iUpf.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

iUpf.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

iUpf.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

iUpf.ipv6 ↗.mipv6 ↗.isMobileNode

bool

iUpf.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

iUpf.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

iUpf.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

iUpf.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

iUpf.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

iUpf.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

iUpf.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

iUpf.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

iUpf.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

iUpf.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

iUpf.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

iUpf.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

iUpf.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

iUpf.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

iUpf.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

iUpf.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

iUpf.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

iUpf.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

iUpf.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

iUpf.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

iUpf.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

iUpf.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

iUpf.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

iUpf.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

iUpf.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

iUpf.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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.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

iUpf.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

iUpf.udp ↗.checksumMode

string

“declared”

iUpf.udp ↗.defaultMulticastLoop

bool

true

iUpf.tcp ↗.displayStringTextFormat

string

“”

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

iUpf.tcp ↗.checksumMode

string

“declared”

iUpf.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)

iUpf.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

iUpf.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

iUpf.tcp ↗.limitedTransmitEnabled

bool

false

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

iUpf.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

iUpf.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)

iUpf.tcp ↗.windowScalingSupport

bool

false

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

iUpf.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)

iUpf.tcp ↗.timestampSupport

bool

false

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

iUpf.tcp ↗.mss

int

536

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

iUpf.tcp ↗.msl

int

120s

Maximum Segment Lifetime

iUpf.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

iUpf.tcp ↗.dupthresh

int

3

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

iUpf.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…

iUpf.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

iUpf.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

iUpf.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

iUpf.tcp ↗.dctcpGamma

double

0.0625

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

iUpf.tcp ↗.pmtudEnabled

bool

false

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

iUpf.tcp ↗.pmtudTimeout

double

600s

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

iUpf.sctp ↗.displayStringTextFormat

string

“”

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

iUpf.sctp ↗.interfaceTableModule

string

iUpf.sctp ↗.routingTableModule

string

iUpf.sctp ↗.checksumMode

string

“declared”

iUpf.sctp ↗.numGapReports

int

3

iUpf.sctp ↗.rtoInitial

double

3s

iUpf.sctp ↗.rtoMin

double

1s

iUpf.sctp ↗.rtoMax

double

60s

iUpf.sctp ↗.rtoAlpha

double

0.125

iUpf.sctp ↗.rtoBeta

double

0.250

iUpf.sctp ↗.maxBurst

int

4

iUpf.sctp ↗.maxBurstVariant

string

“maxBurst”

iUpf.sctp ↗.initialWindow

int

0

iUpf.sctp ↗.assocMaxRetrans

int

10

iUpf.sctp ↗.pathMaxRetrans

int

5

iUpf.sctp ↗.maxInitRetrans

int

8

iUpf.sctp ↗.sackPeriod

double

200ms

iUpf.sctp ↗.sackFrequency

int

2

iUpf.sctp ↗.reactivatePrimaryPath

bool

false

iUpf.sctp ↗.sendQueueLimit

int

0

iUpf.sctp ↗.validCookieLifetime

double

10s

iUpf.sctp ↗.enableHeartbeats

bool

true

iUpf.sctp ↗.hbInterval

double

30s

iUpf.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

iUpf.sctp ↗.nagleEnabled

bool

true

iUpf.sctp ↗.naglePoint

int

1468

iUpf.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

iUpf.sctp ↗.fastRecoverySupported

bool

true

iUpf.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

iUpf.sctp ↗.ccModule

int

0

RFC4960=0

iUpf.sctp ↗.osbWithHeader

bool

false

iUpf.sctp ↗.RTXMethod

int

0

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

iUpf.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

iUpf.sctp ↗.arwnd

int

65535

iUpf.sctp ↗.swsLimit

int

3000

Limit for SWS

iUpf.sctp ↗.udpEncapsEnabled

bool

false

iUpf.sctp ↗.natFriendly

bool

false

iUpf.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

iUpf.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

iUpf.sctp ↗.tellArwnd

bool

false

For flow control

iUpf.sctp ↗.messageAcceptLimit

int

0

For flow control

iUpf.sctp ↗.fairStart

double

0s

iUpf.sctp ↗.fairStop

double

0s

iUpf.sctp ↗.streamsToPaths

string

“”

iUpf.sctp ↗.startEndToEndDelay

int

0

iUpf.sctp ↗.stopEndToEndDelay

int

10

iUpf.sctp ↗.throughputInterval

double

1

iUpf.sctp ↗.auth

bool

false

iUpf.sctp ↗.chunks

string

“”

iUpf.sctp ↗.padding

bool

false

iUpf.sctp ↗.addIP

bool

false

iUpf.sctp ↗.addTime

double

0s

iUpf.sctp ↗.addAddress

string

“”

iUpf.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

iUpf.sctp ↗.packetDrop

bool

false

iUpf.sctp ↗.sackNow

bool

false

iUpf.sctp ↗.highSpeedCC

bool

false

iUpf.sctp ↗.checkSackSeqNumber

bool

false

iUpf.sctp ↗.nrSack

bool

false

iUpf.sctp ↗.disableReneging

bool

false

iUpf.sctp ↗.gapReportLimit

int

100000000

iUpf.sctp ↗.gapListOptimizationVariant

string

“none”

iUpf.sctp ↗.smartOverfullSACKHandling

bool

false

iUpf.sctp ↗.allowQoSTracking

bool

false

iUpf.sctp ↗.qosTrackingInterval

double

1.0s

iUpf.sctp ↗.cmtSendAllVariant

string

“normal”

iUpf.sctp ↗.cmtRetransmissionVariant

string

“normal”

iUpf.sctp ↗.cmtCUCVariant

string

“normal”

iUpf.sctp ↗.cmtBufferSplitVariant

string

“none”

iUpf.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

iUpf.sctp ↗.cmtUseSFR

bool

true

iUpf.sctp ↗.cmtUseDAC

bool

true

iUpf.sctp ↗.cmtUseFRC

bool

true

iUpf.sctp ↗.cmtSmartT3Reset

bool

true

iUpf.sctp ↗.cmtSmartFastRTX

bool

true

iUpf.sctp ↗.cmtSmartReneging

bool

false

iUpf.sctp ↗.cmtSlowPathRTTUpdate

bool

false

iUpf.sctp ↗.cmtChunkReschedulingVariant

string

“none”

iUpf.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

iUpf.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

iUpf.sctp ↗.movedChunkFastRTXFactor

double

2.0

iUpf.sctp ↗.cmtSackPath

string

“standard”

iUpf.sctp ↗.strictCwndBooking

bool

false

iUpf.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

iUpf.sctp ↗.cmtCCPathGroups

string

“”

iUpf.sctp ↗.rpPathBlocking

bool

false

iUpf.sctp ↗.rpScaleBlockingTimeout

bool

false

iUpf.sctp ↗.rpMinCwnd

int

1

iUpf.quic ↗.displayStringTextFormat

string

“”

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

iUpf.quic ↗.routingTableModule

string

Set by StandardHost.

iUpf.quic ↗.sendZeroRttTokenAsServer

bool

false

iUpf.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

iUpf.quic ↗.accurateIncreaseInNewRenoCongestionAvoidance

bool

true

For NewReno in Congestion Avoidance, if true, increases cwnd after cwnd-acked bytes; if false, increases cwnd on every acked packet by acked_bytes/cwnd.

iUpf.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

iUpf.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

iUpf.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

iUpf.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

iUpf.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

iUpf.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

iUpf.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

iUpf.quic ↗.sendMaxDataFramesImmediately

bool

false

If true, a MAX_(STREAM)_DATA frame is sent immediately, after generation. Otherwise, sending the frame is delayed until the sending process starts due to another event.

iUpf.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

iUpf.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

iUpf.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

iUpf.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

iUpf.quic ↗.maxPmtu

int

65535B

With useDplpmtud, it is used as upper limit for the PMTU search. Without useDplpmtud, the PMTU is set to the minimum of the MTU of the outgoing interface and this value.

iUpf.quic ↗.dplpmtudMinPmtu

int

0

Specifies the minimum PMTU to use (if 0, it uses 1200 B for IPv4 or 1280 B for IPv6 as minimum PMTU).

iUpf.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

iUpf.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

iUpf.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

iUpf.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

iUpf.quic ↗.useCwndForParallelProbes

int

0

If 0, no parallel probe packets; if 1, uses the availbale cwnd to send additional probe packets and if 2 prefers to send probe packets over other packets.

iUpf.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

iUpf.quic ↗.dplpmtudUsePmtuValidator

bool

true

If true, activates the PMTU Validator that trys to detect when the current PMTU estimation is larger than the actual PMTU.

iUpf.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

iUpf.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

iUpf.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

iUpf.quic ↗.pmtuValidatorInvalidOnPersistentCongestion

int

1

If 0, disabled. If 1, the PMTU validator uses persistent congeation as signal for a decreased PMTU. If 2, only two consecutive persisten congestions used as signal. If 3, …

iUpf.quic ↗.reducePacketTimeThreshold

double

0s

Specifies after which time with no acks, packets with reduced size are sent. If zero, packet size reduction is disabled. If negative, reducePacketPtoFactorThreshold is used instead.

iUpf.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

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

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 ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

iUpf.dnPpp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

iUpf.dnPpp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

iUpf.dnPpp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

iUpf.dnPpp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

iUpf.dnPpp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

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 ↗.displayStringTextFormat

string

“addr: %a\nvlan: %v”

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

iUpf.ethBridge.macTable ↗.agingTime

double

120s

iUpf.ethBridge.macTable ↗.forwardingTable

object

[]

iUpf.ethBridge.macTable ↗.forwardingTableFile

string

“”

iUpf.ethBridge.macTable ↗.interfaceTableModule

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.bridging ↗.directionReverser ↗.fork ↗.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.bridging ↗.directionReverser ↗.fork ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

iUpf.ethBridge.bridging ↗.directionReverser ↗.fork ↗.forwardProtocolRegistration

bool

true

iUpf.ethBridge.bridging ↗.directionReverser ↗.fork ↗.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.bridging ↗.directionReverser ↗.fork ↗.serviceMapping

object

{}

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

iUpf.ethBridge.bridging ↗.directionReverser ↗.fork ↗.protocolMapping

object

{}

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

iUpf.ethBridge.bridging ↗.directionReverser ↗.reverser ↗.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.bridging ↗.directionReverser ↗.reverser ↗.forwardVlan

bool

true

iUpf.ethBridge.bridging ↗.directionReverser ↗.reverser ↗.forwardPcp

bool

true

iUpf.ethBridge.bridging ↗.directionReverser ↗.reverser ↗.excludeEncapsulationProtocols

object

[]

iUpf.ethBridge.bridging ↗.directionReverser ↗.join ↗.displayStringTextFormat

string

“passed %p pk (%l)”

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

iUpf.ethBridge.bridging ↗.directionReverser ↗.join ↗.forwardServiceRegistration

bool

true

iUpf.ethBridge.bridging ↗.interfaceRelay ↗.learner ↗.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.bridging ↗.interfaceRelay ↗.learner ↗.macTableModule

string

Relative module path of MAC table

iUpf.ethBridge.bridging ↗.interfaceRelay ↗.learner ↗.interfaceTableModule

string

Relative module path of the interface table

iUpf.ethBridge.bridging ↗.interfaceRelay ↗.selector ↗.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.bridging ↗.interfaceRelay ↗.selector ↗.macTableModule

string

Relative module path of MAC table

iUpf.ethBridge.bridging ↗.interfaceRelay ↗.selector ↗.interfaceTableModule

string

Relative module path of interface table

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.ethernet ↗.socketTable ↗.displayStringTextFormat

string

“”

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

iUpf.ethBridge.ethernet ↗.socketCommandProcessor ↗.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.ethernet ↗.socketCommandProcessor ↗.socketTableModule

string

iUpf.ethBridge.ethernet ↗.macHeaderInserter ↗.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.ethernet ↗.macHeaderInserter ↗.interfaceTableModule

string

iUpf.ethBridge.ethernet ↗.paddingInserter ↗.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.ethernet ↗.paddingInserter ↗.minLength

int

iUpf.ethBridge.ethernet ↗.paddingInserter ↗.roundingLength

int

1B

iUpf.ethBridge.ethernet ↗.paddingInserter ↗.insertionPosition

string

“back”

iUpf.ethBridge.ethernet ↗.fcsInserter ↗.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.ethernet ↗.fcsInserter ↗.fcsMode

string

“declared”

iUpf.ethBridge.ethernet ↗.socketPacketProcessor ↗.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.ethernet ↗.socketPacketProcessor ↗.socketTableModule

string

iUpf.ethBridge.ethernet ↗.macHeaderChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

iUpf.ethBridge.ethernet ↗.macHeaderChecker ↗.backpressure

bool

false

iUpf.ethBridge.ethernet ↗.macHeaderChecker ↗.interfaceTableModule

string

iUpf.ethBridge.ethernet ↗.macHeaderChecker ↗.promiscuous

bool

false

iUpf.ethBridge.ethernet ↗.fcsChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

iUpf.ethBridge.ethernet ↗.fcsChecker ↗.backpressure

bool

false

iUpf.ethBridge.ethernet ↗.fcsChecker ↗.popFcs

bool

true

iUpf.ethBridge.ieee8021q ↗.socketTable ↗.displayStringTextFormat

string

“”

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

iUpf.ethBridge.ieee8021q ↗.socketCommandProcessor ↗.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.ieee8021q ↗.socketCommandProcessor ↗.socketTableModule

string

iUpf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.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.ieee8021q ↗.qTagHeaderInserter ↗.vlanTagType

string

“c”

iUpf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.nextProtocol

string

“ethernetmac”

iUpf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultVlanId

int

-1

iUpf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultPcp

int

-1

iUpf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultUserPriority

int

-1

iUpf.ethBridge.ieee8021q ↗.qTagHeaderInserter ↗.defaultDropEligible

int

-1

<0: unspecified, 0: false, >0: true

iUpf.ethBridge.ieee8021q ↗.socketPacketProcessor ↗.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.ieee8021q ↗.socketPacketProcessor ↗.socketTableModule

string

iUpf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

iUpf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.backpressure

bool

false

iUpf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.vlanTagType

string

“c”

iUpf.ethBridge.ieee8021q ↗.qTagHeaderChecker ↗.vlanIdFilter

object

[]

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 ↗.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.dnEth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

iUpf.dnEth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

iUpf.dnEth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

iUpf.dnEth ↗.pcapRecorder ↗.pcapFile

string

“”

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

iUpf.dnEth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

iUpf.dnEth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

iUpf.dnEth ↗.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.dnEth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

iUpf.dnEth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

iUpf.dnEth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

iUpf.dnEth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

iUpf.dnEth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.dnEth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

iUpf.dnEth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

iUpf.dnEth ↗.macLayer ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

iUpf.dnEth ↗.macLayer ↗.queue ↗.packetCapacity

int

-1

Maximum number of packets in the queue, no limit by default

iUpf.dnEth ↗.macLayer ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

iUpf.dnEth ↗.macLayer ↗.queue ↗.dropperClass

string

“”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

iUpf.dnEth ↗.macLayer ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

iUpf.dnEth ↗.macLayer ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

iUpf.dnEth ↗.macLayer ↗.server ↗.displayStringTextFormat

string

“served %p pk (%l)”

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

iUpf.dnEth ↗.macLayer ↗.server ↗.serveSchedulingPriority

int

0

Specifies the FES scheduling priority for the extra event that is pulling the packet, -1 means no extra event

iUpf.dnEth ↗.macLayer ↗.outboundEmitter ↗.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.dnEth ↗.macLayer ↗.outboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.dnEth ↗.macLayer ↗.outboundEmitter ↗.direction

string

“undefined”

iUpf.dnEth ↗.macLayer ↗.outboundEmitter ↗.signalName

string

iUpf.dnEth ↗.macLayer ↗.fcsChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

iUpf.dnEth ↗.macLayer ↗.fcsChecker ↗.backpressure

bool

false

iUpf.dnEth ↗.macLayer ↗.fcsChecker ↗.popFcs

bool

false

iUpf.dnEth ↗.macLayer ↗.inboundEmitter ↗.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.dnEth ↗.macLayer ↗.inboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.dnEth ↗.macLayer ↗.inboundEmitter ↗.direction

string

“undefined”

iUpf.dnEth ↗.macLayer ↗.inboundEmitter ↗.signalName

string

iUpf.dnEth ↗.phyLayer ↗.phyHeaderInserter ↗.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.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.displayStringTextFormat

string

“delayed %p pk (%l)\nifg: %g”

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

iUpf.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

iUpf.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.initialChannelBusy

bool

false

Assume that the channel was busy before the simulation started

iUpf.dnEth ↗.phyLayer ↗.interFrameGapInserter ↗.duration

double

96s / dropUnit(parent.bitrate)

iUpf.dnEth ↗.phyLayer ↗.outboundEmitter ↗.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.dnEth ↗.phyLayer ↗.outboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.dnEth ↗.phyLayer ↗.outboundEmitter ↗.direction

string

“undefined”

iUpf.dnEth ↗.phyLayer ↗.outboundEmitter ↗.signalName

string

iUpf.dnEth ↗.phyLayer ↗.transmitter ↗.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.dnEth ↗.phyLayer ↗.transmitter ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

iUpf.dnEth ↗.phyLayer ↗.transmitter ↗.datarate

double

parent.bitrate

iUpf.dnEth ↗.phyLayer ↗.phyHeaderChecker ↗.displayStringTextFormat

string

“dropped {numDroppedPackets}/{numProcessedPackets} pk ({droppedTotalLength}/{processedTotalLength})”

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

iUpf.dnEth ↗.phyLayer ↗.phyHeaderChecker ↗.backpressure

bool

false

iUpf.dnEth ↗.phyLayer ↗.inboundEmitter ↗.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.dnEth ↗.phyLayer ↗.inboundEmitter ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

iUpf.dnEth ↗.phyLayer ↗.inboundEmitter ↗.direction

string

“undefined”

iUpf.dnEth ↗.phyLayer ↗.inboundEmitter ↗.signalName

string

iUpf.dnEth ↗.phyLayer ↗.receiver ↗.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.dnEth ↗.phyLayer ↗.receiver ↗.datarate

double

parent.bitrate

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.cellularNic.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.cellularNic.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

gnb.cellularNic.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

gnb.cellularNic.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

gnb.cellularNic.pcapRecorder ↗.pcapFile

string

“”

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

gnb.cellularNic.pcapRecorder ↗.fileFormat

string

“pcapng”

gnb.cellularNic.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

gnb.cellularNic.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.cellularNic.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

gnb.cellularNic.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

gnb.cellularNic.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

gnb.cellularNic.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

gnb.cellularNic.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

gnb.cellularNic.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

gnb.cellularNic.pcapRecorder ↗.alwaysFlush

bool

false

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

gnb.cellularNic.handoverPacketHolder.binderModule

string

“binder”

gnb.cellularNic.ip2nic.binderModule

string

“binder”

gnb.cellularNic.ip2nic.connectionControlModule

string

“^.rrc.connectionControl”

The node’s control-plane entry point, asked for a bearer on a lookup miss

gnb.cellularNic.ip2nic.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB)

gnb.cellularNic.ip2nic.hasSdap

bool

false

When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification

gnb.cellularNic.ip2nic.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe), which the payload the NIC delivers up is of; set by the NIC

gnb.cellularNic.ip2nic.establishBearersOnDemand

bool

true

When false, a packet that finds no established bearer raises an error instead of establishing one (static bearers are established up front; see the staticDrbs parameter of BearerConfigurator)

gnb.cellularNic.ip2nic.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

gnb.cellularNic.rrc.registration.interfaceTableModule

string

gnb.cellularNic.rrc.registration.interfaceName

string

“cellular”

gnb.cellularNic.rrc.registration.routingTableModule

string

gnb.cellularNic.rrc.registration.binderModule

string

“binder”

gnb.cellularNic.rrc.registration.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), told about a multicast group join

gnb.cellularNic.rrc.registration.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe): a UE created during the run gets an IPv4 default route through the NIC only on an IP session, and the NIC of an Ethernet session is an Ethernet port; set by the NIC

gnb.cellularNic.rrc.bearerManagement.binderModule

string

“binder”

To reach a peer’s BearerManagement on RLF

gnb.cellularNic.rrc.bearerManagement.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), which a torn-down bearer’s DRB identity goes back through

gnb.cellularNic.rrc.bearerManagement.t311

double

0s

RRC re-establishment cell-selection timer (0 => release-to-IDLE)

gnb.cellularNic.rrc.bearerManagement.t301

double

0.1s

RRC re-establishment (request -> complete) timer

gnb.cellularNic.rrc.bearerManagement.headerCompressedSize

int

-1B

Removed, an error if set: header compression is configured per bearer (the rohc field of BearerConfigurator’s bearer definitions)

gnb.cellularNic.rrc.bearerManagement.pdcpEntityModuleType

string

“simu5g.stack.pdcp.LtePdcpEntity”

PDCP entity types: the full PDCP entity is a compound (PdcpEntityBase, TX+RX sides plus the leg split/join stage of a multi-leg bearer); the instantiable types are its subclasses (LtePdcpEntity, NrPdcpEntity). At a DC secondary a bearer’s PDCP lives at the master, so the secondary installs an PdcpRelayEntity (tunnels PDUs to/from the master) in its place.

gnb.cellularNic.rrc.bearerManagement.pdcpRelayEntityModuleType

string

“simu5g.stack.pdcp.PdcpRelayEntity”

gnb.cellularNic.rrc.bearerManagement.dualConnectivityEnabled

bool

false

Set by the NIC; two-leg (split-capable) bearers

gnb.cellularNic.rrc.bearerManagement.rlcTmEntityModuleType

string

“simu5g.stack.rlc.RlcTmEntity”

RLC entity types (compound modules): lteRlc* = LTE-FI bearers (TS 36.322), nrRlc* = NR bearers (SI/SO wire format, TS 38.322)

gnb.cellularNic.rrc.bearerManagement.lteRlcUmEntityModuleType

string

“simu5g.stack.rlc.LteRlcUmEntity”

gnb.cellularNic.rrc.bearerManagement.lteRlcAmEntityModuleType

string

“simu5g.stack.rlc.LteRlcAmEntity”

gnb.cellularNic.rrc.bearerManagement.nrRlcUmEntityModuleType

string

“simu5g.stack.rlc.NrRlcUmEntity”

gnb.cellularNic.rrc.bearerManagement.nrRlcAmEntityModuleType

string

“simu5g.stack.rlc.NrRlcAmEntity”

gnb.cellularNic.rrc.bearerManagement.registrationModule

string

“^.registration”

Module references for accessing other stack layers

gnb.cellularNic.rrc.bearerManagement.drbTableModule

string

“^.drbTable”

gnb.cellularNic.rrc.bearerManagement.ip2nicModule

string

“^.^.ip2nic”

gnb.cellularNic.rrc.bearerManagement.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

Attachment-ledger push target (UE only)

gnb.cellularNic.rrc.bearerManagement.pdcpMuxModule

string

“^.^.pdcpMux”

gnb.cellularNic.rrc.bearerManagement.pdcpDcMuxModule

string

“^.^.pdcpDcMux”

gnb.cellularNic.rrc.bearerManagement.d2dModeControllerModule

string

“^.d2dModeController”

gnb.cellularNic.rrc.bearerManagement.rlcMuxModule

string

“^.^.rlcMux”

gnb.cellularNic.rrc.bearerManagement.nrRlcMuxModule

string

“^.^.nrRlcMux”

gnb.cellularNic.rrc.bearerManagement.macModule

string

“^.^.mac”

gnb.cellularNic.rrc.bearerManagement.nrMacModule

string

“^.^.nrMac”

gnb.cellularNic.rrc.bearerManagement.sdapModule

string

“^.^.sdap”

Configuration push target; unresolvable (no SDAP on the NIC) = no pushes

gnb.cellularNic.rrc.bearerManagement.qosFlowClassifierModule

string

“^.^.qosFlowClassifier”

Uplink QFI rule push target; unresolvable (not a UE stack with SDAP) = no pushes

gnb.cellularNic.rrc.connectionControl.binderModule

string

“binder”

gnb.cellularNic.rrc.connectionControl.bearerConfiguratorModule

string

“bearerConfigurator”

gnb.cellularNic.rrc.connectionControl.coreControlModule

string

“coreControl”

gnb.cellularNic.rrc.connectionControl.bearerManagementModule

string

“^.bearerManagement”

gnb.cellularNic.rrc.connectionControl.macModule

string

“^.^.mac”

gnb.cellularNic.rrc.connectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

gnb.cellularNic.rrc.connectionControl.gtpUserModule

string

“^.^.^.relay.gtpUser”

gnb.cellularNic.rrc.connectionControl.gtpUserX2Module

string

“^.^.^.gtpUserX2”

gnb.cellularNic.rrc.connectionControl.macNodeId

int

The base station’s node id; the NIC sets it from the node’s

gnb.cellularNic.rrc.connectionControl.gateway

string

“”

The node’s core network gateway, as its gateway parameter names it; ignored at a node not connected to a core network (a secondary node)

gnb.cellularNic.rrc.nrConnectionControl.dynamicCellAssociation

bool

false

gnb.cellularNic.rrc.nrConnectionControl.enableHandover

bool

false

Allows handovers in the UE

gnb.cellularNic.rrc.nrConnectionControl.isNr

bool

Whether this instance is associated with the NR or the LTE stack

gnb.cellularNic.rrc.nrConnectionControl.macNodeId

int

MacNodeId of the stack leg this controller belongs to (set by the NIC)

gnb.cellularNic.rrc.nrConnectionControl.sessionType

string

The type of the session the UE requests at connection setup (see LteUe), set by the NIC

gnb.cellularNic.rrc.nrConnectionControl.handoverLatency

double

50ms

Handover duration

gnb.cellularNic.rrc.nrConnectionControl.handoverDetachmentTime

double

handoverLatency > 0s ? handoverLatency/2 : 25ms

gnb.cellularNic.rrc.nrConnectionControl.handoverAttachmentTime

double

handoverLatency > 0s ? handoverLatency-handoverDetachmentTime : handoverDetachmentTime

gnb.cellularNic.rrc.nrConnectionControl.minRssiDefault

bool

true

Whether minRssi is taken from PhyPisaData instead of the minRssi parameter

gnb.cellularNic.rrc.nrConnectionControl.minRssi

double

-99.0dB

Configurable minimum threshold RSSI for attaching to an eNB (meaningful only if minRssiDefault==false)

gnb.cellularNic.rrc.nrConnectionControl.hysteresisFactor

double

10

gnb.cellularNic.rrc.nrConnectionControl.binderModule

string

“binder”

gnb.cellularNic.rrc.nrConnectionControl.macModule

string

“^.^.mac”

gnb.cellularNic.rrc.nrConnectionControl.bearerManagementModule

string

“^.bearerManagement”

gnb.cellularNic.rrc.nrConnectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

gnb.cellularNic.rrc.nrConnectionControl.feedbackGeneratorModule

string

“^.^.dlFbGen”

TODO or “^.^.nrDlFbGen”

gnb.cellularNic.rrc.nrConnectionControl.otherConnectionControlModule

string

“”

gnb.cellularNic.rrc.nrConnectionControl.hasCollector

bool

false

True when node has a collector module (ueCollector/nrUeCollector) for this PHY module

gnb.cellularNic.rrc.d2dModeSelection.modeSelectionPeriod

double

1s

gnb.cellularNic.rrc.d2dModeSelection.binderModule

string

“binder”

gnb.cellularNic.rrc.d2dModeSelection.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

gnb.cellularNic.rrc.d2dModeSelection.macModule

string

“^.^.mac”

gnb.cellularNic.rrc.d2dModeSelection.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point, which knows the UEs handing over

gnb.cellularNic.rlcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

gnb.cellularNic.phy.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

gnb.cellularNic.phy.macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

gnb.cellularNic.phy.ueTxPower

double

26dBm

gnb.cellularNic.phy.eNodeBTxPower

double

46dBm

gnb.cellularNic.phy.microTxPower

double

30dBm

gnb.cellularNic.phy.txDirection

string

“OMNI”

gnb.cellularNic.phy.txAngle

double

0deg

gnb.cellularNic.phy.binderModule

string

“binder”

gnb.cellularNic.phy.channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

gnb.cellularNic.phy.enableHandover

bool

false

Marks this eNB as a handover target: its beacons are used by UEs for handover feasibility assessment. Requires enableBeacons=true (the default when handover is on); the module errors out at initialization if beacons are disabled while handover is enabled.

gnb.cellularNic.phy.enableBeacons

bool

enableHandover

Enables broadcasting periodic beacons (at cellInfo.beaconInterval). Beacons are the measurement signal UEs use both for handover feasibility assessment and for radio link monitoring (RLF detection), decoupled from enableHandover so radio link monitoring can run without handover. Defaults to enableHandover (beacons flow exactly when handover is enabled). cellInfo.beaconInterval must be positive: a zero/negative interval is an error – switch beacons off with enableBeacons=false.

gnb.cellularNic.phy.targetBler

double

0.001

gnb.cellularNic.packetFlowObserver.macModule

string

“^.mac”

gnb.cellularNic.packetFlowObserver.pdcpModule

string

“^”

gnb.cellularNic.packetFlowObserver.rlcModule

string

“^”

gnb.cellularNic.packetFlowObserver.isNrObserver

bool

false

gnb.cellularNic.packetFlowObserver.pfmType

string

“PacketFlowObserverEnb”

gnb.cellularNic.pdcpDcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

gnb.cellularNic.x2Manager.interfaceTableModule

string

gnb.cellularNic.x2Manager.binderModule

string

“binder”

gnb.cellularNic.compManager.compNodeType

string

“COMP_CLIENT”

gnb.cellularNic.compManager.coordinatorId

int

ID of the coordinator node

gnb.cellularNic.compManager.clientList

object

[]

Space-separated list of client node identifiers

gnb.cellularNic.compManager.coordinationPeriod

double

0.001s

The time interval between two coordination events

gnb.cellularNic.compManager.binderModule

string

“binder”

gnb.cellularNic.handoverX2Forwarder.losslessHandover

bool

false

gnb.cellularNic.bgTrafficGenerator.bgUE.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.cellularNic.bgTrafficGenerator.bgUE.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.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.coordinateSystemModule

string

“”

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.updateDisplayString

bool

true

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinX

double

-inf m

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinY

double

-inf m

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinZ

double

-inf m

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxX

double

inf m

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxY

double

inf m

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxZ

double

inf m

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialLatitude

double

nan deg

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialLongitude

double

nan deg

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialAltitude

double

0m

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialHeading

double

0deg

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialElevation

double

0deg

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialBank

double

0deg

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initFromDisplayString

bool

true

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

gnb.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.updateFromDisplayString

bool

true

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

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.computeAvgInterference

bool

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.enablePeriodicCqiUpdate

bool

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.useProbabilisticCqi

bool

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.backgroundTrafficManagerModule

string

“^.^.manager”

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.startTimeDl

double

-1s

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.startTimeUl

double

-1s

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.headerLen

int

33B

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.txPower

double

26dBm

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.fbPeriod

int

6tti

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.periodDl

double

uniform(10ms,50ms)

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.periodUl

double

uniform(10ms,50ms)

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.packetSizeDl

int

intuniform(20B,100B)

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.packetSizeUl

int

intuniform(20B,100B)

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.rtxRateDl

double

0.1

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.rtxDelayDl

double

0.006s

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.rtxRateUl

double

0.1

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.rtxDelayUl

double

0.006s

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.cqiMeanDl

double

15

These values are only considered when periodicCqi == false && computeAvgInterference == false

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.cqiMeanUl

double

15

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.cqiStddevDl

double

0

gnb.cellularNic.bgTrafficGenerator.bgUE.generator.cqiStddevUl

double

0

gnb.cellularNic.bgTrafficGenerator.manager.binderModule

string

“binder”

gnb.cellularNic.bgTrafficGenerator.manager.numBgUes

int

gnb.cellularNic.bgTrafficGenerator.manager.macModule

string

“^.^.mac”

gnb.cellularNic.bgTrafficGenerator.manager.phyModule

string

“^.^.phy”

gnb.cellularNic.bgTrafficGenerator.manager.enablePeriodicCqiUpdate

bool

gnb.cellularNic.bgTrafficGenerator.manager.computeAvgInterference

bool

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

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 ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

gnb.pppIf ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

gnb.pppIf ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

gnb.pppIf ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

gnb.pppIf ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

gnb.pppIf ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

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

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 ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

gnb.x2ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

gnb.x2ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

gnb.x2ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

gnb.x2ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

gnb.x2ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

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

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 ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

gnb.pppMEHostIf ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

gnb.pppMEHostIf ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

gnb.pppMEHostIf ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

gnb.pppMEHostIf ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

gnb.pppMEHostIf ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

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.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

gnb.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv4 ↗.configurator ↗.routingTableModule

string

gnb.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

gnb.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

gnb.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

gnb.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

gnb.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

gnb.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

gnb.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

gnb.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

gnb.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

gnb.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

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

gnb.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

gnb.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

gnb.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

gnb.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

gnb.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

gnb.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.serviceMapping

object

{}

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

gnb.ipv4 ↗.up ↗.protocolMapping

object

{}

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

gnb.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

gnb.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv4 ↗.igmp ↗.routingTableModule

string

gnb.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

gnb.ipv4 ↗.igmp ↗.enabled

bool

true

gnb.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

gnb.ipv4 ↗.igmp ↗.queryInterval

double

125s

gnb.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

gnb.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

gnb.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

gnb.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

gnb.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

gnb.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

gnb.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

gnb.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

gnb.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

gnb.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv4 ↗.icmp ↗.routingTableModule

string

gnb.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

gnb.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

gnb.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

gnb.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

gnb.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

gnb.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

gnb.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

gnb.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

gnb.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv4 ↗.ip ↗.routingTableModule

string

gnb.ipv4 ↗.ip ↗.arpModule

string

gnb.ipv4 ↗.ip ↗.icmpModule

string

gnb.ipv4 ↗.ip ↗.checksumMode

string

“declared”

gnb.ipv4 ↗.ip ↗.timeToLive

int

32

gnb.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

gnb.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

gnb.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

gnb.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

gnb.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

gnb.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

gnb.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

gnb.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

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

gnb.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv4 ↗.arp ↗.routingTableModule

string

gnb.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

gnb.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

gnb.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

gnb.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

gnb.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

gnb.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

gnb.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

gnb.ipv4 ↗.ipsec ↗.interfaceTableModule

string

gnb.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

gnb.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

gnb.ipv4 ↗.ipsec ↗.spdConfig

xml

gnb.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

gnb.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

gnb.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

gnb.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

gnb.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

gnb.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

gnb.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

gnb.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

gnb.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

gnb.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

gnb.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

gnb.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

gnb.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

gnb.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

gnb.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

gnb.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

gnb.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.configurator ↗.interfaceTableModule

string

gnb.ipv6 ↗.configurator ↗.routingTableModule

string

gnb.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

gnb.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

gnb.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

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

gnb.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

gnb.ipv6 ↗.routingTable ↗.forwarding

bool

false

gnb.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

gnb.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

gnb.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

gnb.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

gnb.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

gnb.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

gnb.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

gnb.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

gnb.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

gnb.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

gnb.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

gnb.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.serviceMapping

object

{}

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

gnb.ipv6 ↗.up ↗.protocolMapping

object

{}

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

gnb.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

gnb.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

gnb.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

gnb.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

gnb.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

gnb.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

gnb.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

gnb.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

gnb.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

gnb.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

gnb.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

gnb.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

gnb.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

gnb.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

gnb.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

gnb.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

gnb.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

gnb.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

gnb.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

gnb.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

gnb.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

gnb.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

gnb.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv6 ↗.ipv6 ↗.routingTableModule

string

gnb.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

gnb.ipv6 ↗.ipv6 ↗.icmpv6Module

string

gnb.ipv6 ↗.ipv6 ↗.procDelay

double

0s

gnb.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

gnb.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

gnb.ipv6 ↗.ipsec ↗.interfaceTableModule

string

gnb.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

gnb.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

gnb.ipv6 ↗.ipsec ↗.spdConfig

xml

gnb.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

gnb.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

gnb.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

gnb.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

gnb.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

gnb.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

gnb.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

gnb.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

gnb.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

gnb.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

gnb.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

gnb.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

gnb.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

gnb.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

gnb.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

gnb.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

gnb.ipv6 ↗.mipv6 ↗.isMobileNode

bool

gnb.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

gnb.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

gnb.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

gnb.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

gnb.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

gnb.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

gnb.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

gnb.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

gnb.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

gnb.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

gnb.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

gnb.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

gnb.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

gnb.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

gnb.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

gnb.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

gnb.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

gnb.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

gnb.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

gnb.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

gnb.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

gnb.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

gnb.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

gnb.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

gnb.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

gnb.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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

Size of a message that has to be fragmented, i.e. maximum size of a fragment

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

ROUND_ROBIN=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

bgCell.bgTrafficGenerator.bgUE.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.bgTrafficGenerator.bgUE.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.bgTrafficGenerator.bgUE.mobility ↗.coordinateSystemModule

string

“”

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.updateDisplayString

bool

true

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinX

double

-inf m

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinY

double

-inf m

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinZ

double

-inf m

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxX

double

inf m

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxY

double

inf m

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxZ

double

inf m

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialLatitude

double

nan deg

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialLongitude

double

nan deg

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialAltitude

double

0m

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialHeading

double

0deg

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialElevation

double

0deg

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initialBank

double

0deg

bgCell.bgTrafficGenerator.bgUE.mobility ↗.initFromDisplayString

bool

true

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

bgCell.bgTrafficGenerator.bgUE.mobility ↗.updateFromDisplayString

bool

true

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

bgCell.bgTrafficGenerator.bgUE.generator.computeAvgInterference

bool

bgCell.bgTrafficGenerator.bgUE.generator.enablePeriodicCqiUpdate

bool

bgCell.bgTrafficGenerator.bgUE.generator.useProbabilisticCqi

bool

bgCell.bgTrafficGenerator.bgUE.generator.backgroundTrafficManagerModule

string

“^.^.manager”

bgCell.bgTrafficGenerator.bgUE.generator.startTimeDl

double

-1s

bgCell.bgTrafficGenerator.bgUE.generator.startTimeUl

double

-1s

bgCell.bgTrafficGenerator.bgUE.generator.headerLen

int

33B

bgCell.bgTrafficGenerator.bgUE.generator.txPower

double

26dBm

bgCell.bgTrafficGenerator.bgUE.generator.fbPeriod

int

6tti

bgCell.bgTrafficGenerator.bgUE.generator.periodDl

double

uniform(10ms,50ms)

bgCell.bgTrafficGenerator.bgUE.generator.periodUl

double

uniform(10ms,50ms)

bgCell.bgTrafficGenerator.bgUE.generator.packetSizeDl

int

intuniform(20B,100B)

bgCell.bgTrafficGenerator.bgUE.generator.packetSizeUl

int

intuniform(20B,100B)

bgCell.bgTrafficGenerator.bgUE.generator.rtxRateDl

double

0.1

bgCell.bgTrafficGenerator.bgUE.generator.rtxDelayDl

double

0.006s

bgCell.bgTrafficGenerator.bgUE.generator.rtxRateUl

double

0.1

bgCell.bgTrafficGenerator.bgUE.generator.rtxDelayUl

double

0.006s

bgCell.bgTrafficGenerator.bgUE.generator.cqiMeanDl

double

15

These values are only considered when periodicCqi == false && computeAvgInterference == false

bgCell.bgTrafficGenerator.bgUE.generator.cqiMeanUl

double

15

bgCell.bgTrafficGenerator.bgUE.generator.cqiStddevDl

double

0

bgCell.bgTrafficGenerator.bgUE.generator.cqiStddevUl

double

0

bgCell.bgTrafficGenerator.manager.binderModule

string

“binder”

bgCell.bgTrafficGenerator.manager.numBgUes

int

bgCell.bgTrafficGenerator.manager.macModule

string

“^.^.mac”

bgCell.bgTrafficGenerator.manager.phyModule

string

“^.^.phy”

bgCell.bgTrafficGenerator.manager.enablePeriodicCqiUpdate

bool

bgCell.bgTrafficGenerator.manager.computeAvgInterference

bool

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”

Initial status of the network node

ueCell.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

ueCell.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

ueCell.mobility ↗.coordinateSystemModule

string

“”

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

ueCell.mobility ↗.updateDisplayString

bool

true

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

ueCell.mobility ↗.constraintAreaMinX

double

-inf m

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

ueCell.mobility ↗.constraintAreaMinY

double

-inf m

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

ueCell.mobility ↗.constraintAreaMinZ

double

-inf m

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

ueCell.mobility ↗.constraintAreaMaxX

double

inf m

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

ueCell.mobility ↗.constraintAreaMaxY

double

inf m

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

ueCell.mobility ↗.constraintAreaMaxZ

double

inf m

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

ueCell.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

ueCell.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

ueCell.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

ueCell.mobility ↗.initialLatitude

double

nan deg

ueCell.mobility ↗.initialLongitude

double

nan deg

ueCell.mobility ↗.initialAltitude

double

0m

ueCell.mobility ↗.initialHeading

double

0deg

ueCell.mobility ↗.initialElevation

double

0deg

ueCell.mobility ↗.initialBank

double

0deg

ueCell.mobility ↗.initFromDisplayString

bool

true

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

ueCell.mobility ↗.updateFromDisplayString

bool

true

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

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

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.ethernet ↗.displayStringTextFormat

string

“passed up: {totalFromMAC}\nsent: {totalFromHigherLayer}”

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

ueCell.ethernet ↗.registerProtocol

bool

false

FIXME //KLUDGE should redesign place of EthernetEncapsulation and LLC modules

ueCell.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ethernet ↗.fcsMode

string

“declared”

ueCell.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

ueCell.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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.lo ↗.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.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueCell.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueCell.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueCell.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueCell.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueCell.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueCell.lo ↗.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.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueCell.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueCell.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueCell.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueCell.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueCell.lo ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueCell.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueCell.lo ↗.lo ↗.displayStringTextFormat

string

“rcv:{numRcvdOK} snt:{numSent}”

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

ueCell.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.lo ↗.lo ↗.mtu

int

4470B

ueCell.wlan ↗.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.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueCell.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueCell.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueCell.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueCell.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueCell.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueCell.wlan ↗.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.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueCell.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueCell.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueCell.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueCell.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueCell.wlan ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueCell.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueCell.wlan ↗.mib ↗.displayStringTextFormat

string

“Address: {address}{ssidStr}\n{modeStr}{stationTypeStr}{qosStr}{associatedStr}”

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

ueCell.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.wlan ↗.agent ↗.mibModule

string

ueCell.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

ueCell.wlan ↗.agent ↗.channelsToScan

string

“”

List of channel numbers to scan (space delimited); empty means all channels

ueCell.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

ueCell.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

ueCell.wlan ↗.agent ↗.maxChannelTime

double

300ms

Channel time for passive scanning, and max channel time for active scanning

ueCell.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

ueCell.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

ueCell.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

ueCell.wlan ↗.agent ↗.defaultSsid

string

“”

List of allowed SSIDs to connect to; leave empty for no filtering

ueCell.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

ueCell.wlan ↗.mgmt ↗.mibModule

string

ueCell.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.originatorMacDataService”

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.ackHandlerModule

string

“^.^.ackHandler”

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

ueCell.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

ueCell.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

ueCell.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

ueCell.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

ueCell.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.dcf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

ueCell.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

ueCell.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

ueCell.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

ueCell.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.^.originatorMacDataService”

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.ackHandlerModule

string

“^.ackHandler”

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.txopLimit

double

-1s

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.longRetryLimit

int

4

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.collisionController ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.shortRetryLimit

int

7

ueCell.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.longRetryLimit

int

4

ueCell.wlan ↗.mac ↗.hcf ↗.hcca ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.subframeNumThreshold

int

-1

Minimum number of subframes needed to compose an A-MSDU. (-1 means it won’t be checked)

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.aggregationLengthThreshold

int

-1

The minimum length for an aggregated payload necessary to create an A-MSDU (-1 means it won’t be checked).

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.maxAMsduSize

int

4065

-1 means infinity

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.qOsCheck

bool

true

Turns on/off the check of the presence of the QoS flag (false means off – this is needed for aggregation in DCF mode).

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.mpduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

ueCell.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

ueCell.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

ueCell.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

ueCell.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

ueCell.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

ueCell.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

ueCell.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

ueCell.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

ueCell.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

ueCell.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

ueCell.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

ueCell.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

ueCell.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

ueCell.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

ueCell.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

ueCell.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

ueCell.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

ueCell.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

ueCell.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

ueCell.wlan ↗.mac ↗.ds ↗.mibModule

string

ueCell.wlan ↗.mac ↗.rx ↗.displayStringTextFormat

string

“{rxStatus}”

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

ueCell.wlan ↗.mac ↗.tx ↗.displayStringTextFormat

string

“{txFramePrefix}{txState}”

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

ueCell.wlan ↗.mac ↗.tx ↗.rxModule

string

ueCell.ppp ↗.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.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueCell.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueCell.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueCell.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueCell.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueCell.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueCell.ppp ↗.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.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueCell.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueCell.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueCell.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueCell.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueCell.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueCell.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueCell.ppp ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

ueCell.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

ueCell.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueCell.ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueCell.ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueCell.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueCell.ppp ↗.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

ueCell.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ppp ↗.ppp ↗.sendRawBytes

bool

false

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

ueCell.ppp ↗.ppp ↗.mtu

int

4470B

ueCell.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

ueCell.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

ueCell.eth ↗.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.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueCell.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueCell.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueCell.eth ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueCell.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueCell.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueCell.eth ↗.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.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueCell.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueCell.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueCell.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueCell.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueCell.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueCell.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueCell.tun ↗.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.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueCell.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueCell.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueCell.tun ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueCell.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueCell.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueCell.tun ↗.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.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueCell.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueCell.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueCell.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueCell.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueCell.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueCell.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueCell.tun ↗.tun ↗.displayStringTextFormat

string

“”

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

ueCell.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.tun ↗.tun ↗.mtu

int

1500B

ueCell.virt ↗.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.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueCell.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueCell.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueCell.virt ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueCell.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueCell.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueCell.virt ↗.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.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueCell.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueCell.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueCell.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueCell.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueCell.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueCell.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueCell.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

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

ueCell.virt ↗.tunnel ↗.interfaceTableModule

string

ueCell.virt ↗.tunnel ↗.realInterface

string

ueCell.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

ueCell.virt ↗.tunnel ↗.address

string

“copy”

ueCell.virt ↗.tunnel ↗.vlanId

int

-1

ueCell.virt ↗.tunnel ↗.steal

bool

vlanId != -1

ueCell.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

ueCell.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv4 ↗.configurator ↗.routingTableModule

string

ueCell.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

ueCell.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

ueCell.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

ueCell.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

ueCell.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

ueCell.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

ueCell.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

ueCell.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

ueCell.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

ueCell.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

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

ueCell.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

ueCell.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

ueCell.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueCell.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

ueCell.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

ueCell.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.serviceMapping

object

{}

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

ueCell.ipv4 ↗.up ↗.protocolMapping

object

{}

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

ueCell.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

ueCell.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv4 ↗.igmp ↗.routingTableModule

string

ueCell.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

ueCell.ipv4 ↗.igmp ↗.enabled

bool

true

ueCell.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

ueCell.ipv4 ↗.igmp ↗.queryInterval

double

125s

ueCell.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

ueCell.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

ueCell.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

ueCell.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

ueCell.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

ueCell.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

ueCell.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

ueCell.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

ueCell.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

ueCell.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv4 ↗.icmp ↗.routingTableModule

string

ueCell.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

ueCell.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

ueCell.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueCell.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

ueCell.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

ueCell.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

ueCell.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

ueCell.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

ueCell.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv4 ↗.ip ↗.routingTableModule

string

ueCell.ipv4 ↗.ip ↗.arpModule

string

ueCell.ipv4 ↗.ip ↗.icmpModule

string

ueCell.ipv4 ↗.ip ↗.checksumMode

string

“declared”

ueCell.ipv4 ↗.ip ↗.timeToLive

int

32

ueCell.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

ueCell.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

ueCell.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

ueCell.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

ueCell.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

ueCell.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

ueCell.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

ueCell.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

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

ueCell.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv4 ↗.arp ↗.routingTableModule

string

ueCell.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

ueCell.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

ueCell.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

ueCell.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

ueCell.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

ueCell.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

ueCell.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

ueCell.ipv4 ↗.ipsec ↗.interfaceTableModule

string

ueCell.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

ueCell.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

ueCell.ipv4 ↗.ipsec ↗.spdConfig

xml

ueCell.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

ueCell.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

ueCell.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

ueCell.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

ueCell.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

ueCell.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

ueCell.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

ueCell.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

ueCell.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

ueCell.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueCell.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueCell.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueCell.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

ueCell.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

ueCell.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

ueCell.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

ueCell.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.configurator ↗.interfaceTableModule

string

ueCell.ipv6 ↗.configurator ↗.routingTableModule

string

ueCell.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

ueCell.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

ueCell.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

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

ueCell.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

ueCell.ipv6 ↗.routingTable ↗.forwarding

bool

false

ueCell.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

ueCell.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

ueCell.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

ueCell.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

ueCell.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

ueCell.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

ueCell.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

ueCell.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

ueCell.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueCell.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

ueCell.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

ueCell.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.serviceMapping

object

{}

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

ueCell.ipv6 ↗.up ↗.protocolMapping

object

{}

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

ueCell.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

ueCell.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

ueCell.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueCell.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

ueCell.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

ueCell.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

ueCell.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

ueCell.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

ueCell.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

ueCell.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

ueCell.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

ueCell.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

ueCell.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

ueCell.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

ueCell.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

ueCell.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

ueCell.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

ueCell.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

ueCell.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

ueCell.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

ueCell.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

ueCell.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

ueCell.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv6 ↗.ipv6 ↗.routingTableModule

string

ueCell.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

ueCell.ipv6 ↗.ipv6 ↗.icmpv6Module

string

ueCell.ipv6 ↗.ipv6 ↗.procDelay

double

0s

ueCell.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

ueCell.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

ueCell.ipv6 ↗.ipsec ↗.interfaceTableModule

string

ueCell.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

ueCell.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

ueCell.ipv6 ↗.ipsec ↗.spdConfig

xml

ueCell.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

ueCell.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

ueCell.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

ueCell.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

ueCell.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

ueCell.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

ueCell.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

ueCell.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

ueCell.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

ueCell.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueCell.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueCell.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

ueCell.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

ueCell.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

ueCell.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

ueCell.ipv6 ↗.mipv6 ↗.isMobileNode

bool

ueCell.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

ueCell.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

ueCell.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

ueCell.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

ueCell.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

ueCell.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

ueCell.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

ueCell.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

ueCell.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

ueCell.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

ueCell.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

ueCell.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

ueCell.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

ueCell.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

ueCell.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

ueCell.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

ueCell.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

ueCell.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

ueCell.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

ueCell.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

ueCell.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

ueCell.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

ueCell.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

ueCell.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

ueCell.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

ueCell.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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.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

ueCell.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueCell.udp ↗.checksumMode

string

“declared”

ueCell.udp ↗.defaultMulticastLoop

bool

true

ueCell.tcp ↗.displayStringTextFormat

string

“”

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

ueCell.tcp ↗.checksumMode

string

“declared”

ueCell.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)

ueCell.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

ueCell.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

ueCell.tcp ↗.limitedTransmitEnabled

bool

false

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

ueCell.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

ueCell.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)

ueCell.tcp ↗.windowScalingSupport

bool

false

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

ueCell.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)

ueCell.tcp ↗.timestampSupport

bool

false

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

ueCell.tcp ↗.mss

int

536

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

ueCell.tcp ↗.msl

int

120s

Maximum Segment Lifetime

ueCell.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

ueCell.tcp ↗.dupthresh

int

3

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

ueCell.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…

ueCell.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

ueCell.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

ueCell.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

ueCell.tcp ↗.dctcpGamma

double

0.0625

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

ueCell.tcp ↗.pmtudEnabled

bool

false

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

ueCell.tcp ↗.pmtudTimeout

double

600s

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

ueCell.sctp ↗.displayStringTextFormat

string

“”

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

ueCell.sctp ↗.interfaceTableModule

string

ueCell.sctp ↗.routingTableModule

string

ueCell.sctp ↗.checksumMode

string

“declared”

ueCell.sctp ↗.numGapReports

int

3

ueCell.sctp ↗.rtoInitial

double

3s

ueCell.sctp ↗.rtoMin

double

1s

ueCell.sctp ↗.rtoMax

double

60s

ueCell.sctp ↗.rtoAlpha

double

0.125

ueCell.sctp ↗.rtoBeta

double

0.250

ueCell.sctp ↗.maxBurst

int

4

ueCell.sctp ↗.maxBurstVariant

string

“maxBurst”

ueCell.sctp ↗.initialWindow

int

0

ueCell.sctp ↗.assocMaxRetrans

int

10

ueCell.sctp ↗.pathMaxRetrans

int

5

ueCell.sctp ↗.maxInitRetrans

int

8

ueCell.sctp ↗.sackPeriod

double

200ms

ueCell.sctp ↗.sackFrequency

int

2

ueCell.sctp ↗.reactivatePrimaryPath

bool

false

ueCell.sctp ↗.sendQueueLimit

int

0

ueCell.sctp ↗.validCookieLifetime

double

10s

ueCell.sctp ↗.enableHeartbeats

bool

true

ueCell.sctp ↗.hbInterval

double

30s

ueCell.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

ueCell.sctp ↗.nagleEnabled

bool

true

ueCell.sctp ↗.naglePoint

int

1468

ueCell.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

ueCell.sctp ↗.fastRecoverySupported

bool

true

ueCell.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

ueCell.sctp ↗.ccModule

int

0

RFC4960=0

ueCell.sctp ↗.osbWithHeader

bool

false

ueCell.sctp ↗.RTXMethod

int

0

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

ueCell.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

ueCell.sctp ↗.arwnd

int

65535

ueCell.sctp ↗.swsLimit

int

3000

Limit for SWS

ueCell.sctp ↗.udpEncapsEnabled

bool

false

ueCell.sctp ↗.natFriendly

bool

false

ueCell.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

ueCell.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

ueCell.sctp ↗.tellArwnd

bool

false

For flow control

ueCell.sctp ↗.messageAcceptLimit

int

0

For flow control

ueCell.sctp ↗.fairStart

double

0s

ueCell.sctp ↗.fairStop

double

0s

ueCell.sctp ↗.streamsToPaths

string

“”

ueCell.sctp ↗.startEndToEndDelay

int

0

ueCell.sctp ↗.stopEndToEndDelay

int

10

ueCell.sctp ↗.throughputInterval

double

1

ueCell.sctp ↗.auth

bool

false

ueCell.sctp ↗.chunks

string

“”

ueCell.sctp ↗.padding

bool

false

ueCell.sctp ↗.addIP

bool

false

ueCell.sctp ↗.addTime

double

0s

ueCell.sctp ↗.addAddress

string

“”

ueCell.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

ueCell.sctp ↗.packetDrop

bool

false

ueCell.sctp ↗.sackNow

bool

false

ueCell.sctp ↗.highSpeedCC

bool

false

ueCell.sctp ↗.checkSackSeqNumber

bool

false

ueCell.sctp ↗.nrSack

bool

false

ueCell.sctp ↗.disableReneging

bool

false

ueCell.sctp ↗.gapReportLimit

int

100000000

ueCell.sctp ↗.gapListOptimizationVariant

string

“none”

ueCell.sctp ↗.smartOverfullSACKHandling

bool

false

ueCell.sctp ↗.allowQoSTracking

bool

false

ueCell.sctp ↗.qosTrackingInterval

double

1.0s

ueCell.sctp ↗.cmtSendAllVariant

string

“normal”

ueCell.sctp ↗.cmtRetransmissionVariant

string

“normal”

ueCell.sctp ↗.cmtCUCVariant

string

“normal”

ueCell.sctp ↗.cmtBufferSplitVariant

string

“none”

ueCell.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

ueCell.sctp ↗.cmtUseSFR

bool

true

ueCell.sctp ↗.cmtUseDAC

bool

true

ueCell.sctp ↗.cmtUseFRC

bool

true

ueCell.sctp ↗.cmtSmartT3Reset

bool

true

ueCell.sctp ↗.cmtSmartFastRTX

bool

true

ueCell.sctp ↗.cmtSmartReneging

bool

false

ueCell.sctp ↗.cmtSlowPathRTTUpdate

bool

false

ueCell.sctp ↗.cmtChunkReschedulingVariant

string

“none”

ueCell.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

ueCell.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

ueCell.sctp ↗.movedChunkFastRTXFactor

double

2.0

ueCell.sctp ↗.cmtSackPath

string

“standard”

ueCell.sctp ↗.strictCwndBooking

bool

false

ueCell.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

ueCell.sctp ↗.cmtCCPathGroups

string

“”

ueCell.sctp ↗.rpPathBlocking

bool

false

ueCell.sctp ↗.rpScaleBlockingTimeout

bool

false

ueCell.sctp ↗.rpMinCwnd

int

1

ueCell.quic ↗.displayStringTextFormat

string

“”

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

ueCell.quic ↗.routingTableModule

string

Set by StandardHost.

ueCell.quic ↗.sendZeroRttTokenAsServer

bool

false

ueCell.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

ueCell.quic ↗.accurateIncreaseInNewRenoCongestionAvoidance

bool

true

For NewReno in Congestion Avoidance, if true, increases cwnd after cwnd-acked bytes; if false, increases cwnd on every acked packet by acked_bytes/cwnd.

ueCell.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

ueCell.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

ueCell.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

ueCell.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

ueCell.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

ueCell.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

ueCell.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

ueCell.quic ↗.sendMaxDataFramesImmediately

bool

false

If true, a MAX_(STREAM)_DATA frame is sent immediately, after generation. Otherwise, sending the frame is delayed until the sending process starts due to another event.

ueCell.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

ueCell.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

ueCell.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

ueCell.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

ueCell.quic ↗.maxPmtu

int

65535B

With useDplpmtud, it is used as upper limit for the PMTU search. Without useDplpmtud, the PMTU is set to the minimum of the MTU of the outgoing interface and this value.

ueCell.quic ↗.dplpmtudMinPmtu

int

0

Specifies the minimum PMTU to use (if 0, it uses 1200 B for IPv4 or 1280 B for IPv6 as minimum PMTU).

ueCell.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

ueCell.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

ueCell.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

ueCell.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

ueCell.quic ↗.useCwndForParallelProbes

int

0

If 0, no parallel probe packets; if 1, uses the availbale cwnd to send additional probe packets and if 2 prefers to send probe packets over other packets.

ueCell.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

ueCell.quic ↗.dplpmtudUsePmtuValidator

bool

true

If true, activates the PMTU Validator that trys to detect when the current PMTU estimation is larger than the actual PMTU.

ueCell.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

ueCell.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

ueCell.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

ueCell.quic ↗.pmtuValidatorInvalidOnPersistentCongestion

int

1

If 0, disabled. If 1, the PMTU validator uses persistent congeation as signal for a decreased PMTU. If 2, only two consecutive persisten congestions used as signal. If 3, …

ueCell.quic ↗.reducePacketTimeThreshold

double

0s

Specifies after which time with no acks, packets with reduced size are sent. If zero, packet size reduction is disabled. If negative, reducePacketPtoFactorThreshold is used instead.

ueCell.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

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.cellularNic.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.cellularNic.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueCell.cellularNic.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueCell.cellularNic.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueCell.cellularNic.pcapRecorder ↗.pcapFile

string

“”

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

ueCell.cellularNic.pcapRecorder ↗.fileFormat

string

“pcapng”

ueCell.cellularNic.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueCell.cellularNic.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.cellularNic.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueCell.cellularNic.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueCell.cellularNic.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueCell.cellularNic.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueCell.cellularNic.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueCell.cellularNic.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueCell.cellularNic.pcapRecorder ↗.alwaysFlush

bool

false

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

ueCell.cellularNic.handoverPacketHolder.sessionType

string

The type of the UE’s session (see LteUe): the IP types parse the uplink datagram’s header for the modules after this one, the others carry the payload as is

ueCell.cellularNic.ip2nic.binderModule

string

“binder”

ueCell.cellularNic.ip2nic.connectionControlModule

string

“^.rrc.connectionControl”

The node’s control-plane entry point, asked for a bearer on a lookup miss

ueCell.cellularNic.ip2nic.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB)

ueCell.cellularNic.ip2nic.hasSdap

bool

false

When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification

ueCell.cellularNic.ip2nic.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe), which the payload the NIC delivers up is of; set by the NIC

ueCell.cellularNic.ip2nic.establishBearersOnDemand

bool

true

When false, a packet that finds no established bearer raises an error instead of establishing one (static bearers are established up front; see the staticDrbs parameter of BearerConfigurator)

ueCell.cellularNic.ip2nic.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

ueCell.cellularNic.rrc.registration.interfaceTableModule

string

ueCell.cellularNic.rrc.registration.interfaceName

string

“cellular”

ueCell.cellularNic.rrc.registration.routingTableModule

string

ueCell.cellularNic.rrc.registration.binderModule

string

“binder”

ueCell.cellularNic.rrc.registration.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), told about a multicast group join

ueCell.cellularNic.rrc.registration.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe): a UE created during the run gets an IPv4 default route through the NIC only on an IP session, and the NIC of an Ethernet session is an Ethernet port; set by the NIC

ueCell.cellularNic.rrc.bearerManagement.binderModule

string

“binder”

To reach a peer’s BearerManagement on RLF

ueCell.cellularNic.rrc.bearerManagement.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), which a torn-down bearer’s DRB identity goes back through

ueCell.cellularNic.rrc.bearerManagement.t311

double

0s

RRC re-establishment cell-selection timer (0 => release-to-IDLE)

ueCell.cellularNic.rrc.bearerManagement.t301

double

0.1s

RRC re-establishment (request -> complete) timer

ueCell.cellularNic.rrc.bearerManagement.headerCompressedSize

int

-1B

Removed, an error if set: header compression is configured per bearer (the rohc field of BearerConfigurator’s bearer definitions)

ueCell.cellularNic.rrc.bearerManagement.pdcpEntityModuleType

string

“simu5g.stack.pdcp.LtePdcpEntity”

PDCP entity types: the full PDCP entity is a compound (PdcpEntityBase, TX+RX sides plus the leg split/join stage of a multi-leg bearer); the instantiable types are its subclasses (LtePdcpEntity, NrPdcpEntity). At a DC secondary a bearer’s PDCP lives at the master, so the secondary installs an PdcpRelayEntity (tunnels PDUs to/from the master) in its place.

ueCell.cellularNic.rrc.bearerManagement.pdcpRelayEntityModuleType

string

“simu5g.stack.pdcp.PdcpRelayEntity”

ueCell.cellularNic.rrc.bearerManagement.dualConnectivityEnabled

bool

false

Set by the NIC; two-leg (split-capable) bearers

ueCell.cellularNic.rrc.bearerManagement.rlcTmEntityModuleType

string

“simu5g.stack.rlc.RlcTmEntity”

RLC entity types (compound modules): lteRlc* = LTE-FI bearers (TS 36.322), nrRlc* = NR bearers (SI/SO wire format, TS 38.322)

ueCell.cellularNic.rrc.bearerManagement.lteRlcUmEntityModuleType

string

“simu5g.stack.rlc.LteRlcUmEntity”

ueCell.cellularNic.rrc.bearerManagement.lteRlcAmEntityModuleType

string

“simu5g.stack.rlc.LteRlcAmEntity”

ueCell.cellularNic.rrc.bearerManagement.nrRlcUmEntityModuleType

string

“simu5g.stack.rlc.NrRlcUmEntity”

ueCell.cellularNic.rrc.bearerManagement.nrRlcAmEntityModuleType

string

“simu5g.stack.rlc.NrRlcAmEntity”

ueCell.cellularNic.rrc.bearerManagement.registrationModule

string

“^.registration”

Module references for accessing other stack layers

ueCell.cellularNic.rrc.bearerManagement.drbTableModule

string

“^.drbTable”

ueCell.cellularNic.rrc.bearerManagement.ip2nicModule

string

“^.^.ip2nic”

ueCell.cellularNic.rrc.bearerManagement.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

Attachment-ledger push target (UE only)

ueCell.cellularNic.rrc.bearerManagement.pdcpMuxModule

string

“^.^.pdcpMux”

ueCell.cellularNic.rrc.bearerManagement.pdcpDcMuxModule

string

“^.^.pdcpDcMux”

ueCell.cellularNic.rrc.bearerManagement.d2dModeControllerModule

string

“^.d2dModeController”

ueCell.cellularNic.rrc.bearerManagement.rlcMuxModule

string

“^.^.rlcMux”

ueCell.cellularNic.rrc.bearerManagement.nrRlcMuxModule

string

“^.^.nrRlcMux”

ueCell.cellularNic.rrc.bearerManagement.macModule

string

“^.^.mac”

ueCell.cellularNic.rrc.bearerManagement.nrMacModule

string

“^.^.nrMac”

ueCell.cellularNic.rrc.bearerManagement.sdapModule

string

“^.^.sdap”

Configuration push target; unresolvable (no SDAP on the NIC) = no pushes

ueCell.cellularNic.rrc.bearerManagement.qosFlowClassifierModule

string

“^.^.qosFlowClassifier”

Uplink QFI rule push target; unresolvable (not a UE stack with SDAP) = no pushes

ueCell.cellularNic.rrc.connectionControl.binderModule

string

“binder”

ueCell.cellularNic.rrc.connectionControl.bearerConfiguratorModule

string

“bearerConfigurator”

ueCell.cellularNic.rrc.connectionControl.coreControlModule

string

“coreControl”

ueCell.cellularNic.rrc.connectionControl.bearerManagementModule

string

“^.bearerManagement”

ueCell.cellularNic.rrc.connectionControl.macModule

string

“^.^.mac”

ueCell.cellularNic.rrc.connectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

ueCell.cellularNic.rrc.connectionControl.gtpUserModule

string

“^.^.^.relay.gtpUser”

ueCell.cellularNic.rrc.connectionControl.gtpUserX2Module

string

“^.^.^.gtpUserX2”

ueCell.cellularNic.rrc.connectionControl.macNodeId

int

The base station’s node id; the NIC sets it from the node’s

ueCell.cellularNic.rrc.connectionControl.gateway

string

“”

The node’s core network gateway, as its gateway parameter names it; ignored at a node not connected to a core network (a secondary node)

ueCell.cellularNic.rrc.nrConnectionControl.dynamicCellAssociation

bool

false

ueCell.cellularNic.rrc.nrConnectionControl.enableHandover

bool

false

Allows handovers in the UE

ueCell.cellularNic.rrc.nrConnectionControl.isNr

bool

Whether this instance is associated with the NR or the LTE stack

ueCell.cellularNic.rrc.nrConnectionControl.macNodeId

int

MacNodeId of the stack leg this controller belongs to (set by the NIC)

ueCell.cellularNic.rrc.nrConnectionControl.sessionType

string

The type of the session the UE requests at connection setup (see LteUe), set by the NIC

ueCell.cellularNic.rrc.nrConnectionControl.handoverLatency

double

50ms

Handover duration

ueCell.cellularNic.rrc.nrConnectionControl.handoverDetachmentTime

double

handoverLatency > 0s ? handoverLatency/2 : 25ms

ueCell.cellularNic.rrc.nrConnectionControl.handoverAttachmentTime

double

handoverLatency > 0s ? handoverLatency-handoverDetachmentTime : handoverDetachmentTime

ueCell.cellularNic.rrc.nrConnectionControl.minRssiDefault

bool

true

Whether minRssi is taken from PhyPisaData instead of the minRssi parameter

ueCell.cellularNic.rrc.nrConnectionControl.minRssi

double

-99.0dB

Configurable minimum threshold RSSI for attaching to an eNB (meaningful only if minRssiDefault==false)

ueCell.cellularNic.rrc.nrConnectionControl.hysteresisFactor

double

10

ueCell.cellularNic.rrc.nrConnectionControl.binderModule

string

“binder”

ueCell.cellularNic.rrc.nrConnectionControl.macModule

string

“^.^.mac”

ueCell.cellularNic.rrc.nrConnectionControl.bearerManagementModule

string

“^.bearerManagement”

ueCell.cellularNic.rrc.nrConnectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

ueCell.cellularNic.rrc.nrConnectionControl.feedbackGeneratorModule

string

“^.^.dlFbGen”

TODO or “^.^.nrDlFbGen”

ueCell.cellularNic.rrc.nrConnectionControl.otherConnectionControlModule

string

“”

ueCell.cellularNic.rrc.nrConnectionControl.hasCollector

bool

false

True when node has a collector module (ueCollector/nrUeCollector) for this PHY module

ueCell.cellularNic.rrc.d2dModeSelection.modeSelectionPeriod

double

1s

ueCell.cellularNic.rrc.d2dModeSelection.binderModule

string

“binder”

ueCell.cellularNic.rrc.d2dModeSelection.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

ueCell.cellularNic.rrc.d2dModeSelection.macModule

string

“^.^.mac”

ueCell.cellularNic.rrc.d2dModeSelection.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point, which knows the UEs handing over

ueCell.cellularNic.rlcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

ueCell.cellularNic.phy.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

ueCell.cellularNic.phy.macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

ueCell.cellularNic.phy.ueTxPower

double

26dBm

ueCell.cellularNic.phy.eNodeBTxPower

double

46dBm

ueCell.cellularNic.phy.microTxPower

double

30dBm

ueCell.cellularNic.phy.txDirection

string

“OMNI”

ueCell.cellularNic.phy.txAngle

double

0deg

ueCell.cellularNic.phy.binderModule

string

“binder”

ueCell.cellularNic.phy.channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

ueCell.cellularNic.phy.connectionControlModule

string

“^.rrc.connectionControl”

ueCell.cellularNic.packetFlowObserver.macModule

string

“^.mac”

ueCell.cellularNic.packetFlowObserver.pdcpModule

string

“^”

ueCell.cellularNic.packetFlowObserver.rlcModule

string

“^”

ueCell.cellularNic.packetFlowObserver.isNrObserver

bool

false

ueCell.cellularNic.packetFlowObserver.pfmType

string

“PacketFlowObserverUe”

ueCell.cellularNic.dlFbGen.isNr

bool

false

True for the NR leg (set by NrNicUe on the nrDlFbGen submodule)

ueCell.cellularNic.dlFbGen.macNodeId

int

MacNodeId of the stack leg this generator belongs to (set by the NIC)

ueCell.cellularNic.dlFbGen.feedbackType

string

“ALLBANDS”

Can be ALLBANDS, PREFERRED, WIDEBAND

ueCell.cellularNic.dlFbGen.rbAllocationType

string

“localized”

Resource allocation type (“distributed” or “localized”)

ueCell.cellularNic.dlFbGen.fbPeriod

int

6tti

Period for Periodic feedback in TTI

ueCell.cellularNic.dlFbGen.fbDelay

int

1tti

Time interval between sensing and transmission in TTI

ueCell.cellularNic.dlFbGen.usePeriodic

bool

true

Whether periodic feedback is used in addition to aperiodic feedback

ueCell.cellularNic.dlFbGen.initialTxMode

string

“SINGLE_ANTENNA_PORT0”

Initial txMode (see LteCommon.h)

ueCell.cellularNic.dlFbGen.binderModule

string

“binder”

ueCell.cellularNic.dlFbGen.phyModule

string

“^.phy”

ueCell.macTable ↗.displayStringTextFormat

string

“addr: %a\nvlan: %v”

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

ueCell.macTable ↗.agingTime

double

120s

ueCell.macTable ↗.forwardingTable

object

[]

ueCell.macTable ↗.forwardingTableFile

string

“”

ueCell.macTable ↗.interfaceTableModule

string

ueCell.unstructuredApp.source ↗.displayStringTextFormat

string

“created %p pk (%l)”

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

ueCell.unstructuredApp.source ↗.packetNameFormat

string

“%a-%c”

See directives in module documentation

ueCell.unstructuredApp.source ↗.packetRepresentation

string

“byteCount”

Determines the chunk of the packet data

ueCell.unstructuredApp.source ↗.packetProtocol

string

“unknown”

ueCell.unstructuredApp.source ↗.packetLength

int

ueCell.unstructuredApp.source ↗.packetData

int

-1

ueCell.unstructuredApp.source ↗.attachCreationTimeTag

bool

true

ueCell.unstructuredApp.source ↗.attachIdentityTag

bool

true

ueCell.unstructuredApp.source ↗.attachDirectionTag

bool

true

ueCell.unstructuredApp.source ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

ueCell.unstructuredApp.source ↗.initialProductionOffset

double

-1s

Initial duration before which packets are not produced. When negative, then produce packet in initialize()

ueCell.unstructuredApp.source ↗.productionInterval

double

Elapsed time between subsequent packets pushed to the connected packet consumer

ueCell.unstructuredApp.source ↗.scheduleForAbsoluteTime

bool

true

When a clock is used, “relative” means that setting the clock will not affect the simulation time of the event

ueCell.unstructuredApp.sink ↗.displayStringTextFormat

string

“received %p pk (%l)”

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

ueCell.unstructuredApp.sink ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

ueCell.unstructuredApp.sink ↗.initialConsumptionOffset

double

0s

Initial duration before which packets are not consumed

ueCell.unstructuredApp.sink ↗.consumptionInterval

double

0s

Elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time

ueCell.unstructuredApp.sink ↗.scheduleForAbsoluteTime

bool

true

When a clock is used, “relative” means that setting the clock will not affect the simulation time of the event

ueCell.unstructuredApp.io.interfaceTableModule

string

Relative module path of the interface table

ueCell.unstructuredApp.io.interface

string

“cellular”

The name of the cellular NIC’s interface

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”

Initial status of the network node

ueD2DTx.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

ueD2DTx.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

ueD2DTx.mobility ↗.coordinateSystemModule

string

“”

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

ueD2DTx.mobility ↗.updateDisplayString

bool

true

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

ueD2DTx.mobility ↗.constraintAreaMinX

double

-inf m

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

ueD2DTx.mobility ↗.constraintAreaMinY

double

-inf m

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

ueD2DTx.mobility ↗.constraintAreaMinZ

double

-inf m

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

ueD2DTx.mobility ↗.constraintAreaMaxX

double

inf m

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

ueD2DTx.mobility ↗.constraintAreaMaxY

double

inf m

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

ueD2DTx.mobility ↗.constraintAreaMaxZ

double

inf m

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

ueD2DTx.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

ueD2DTx.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

ueD2DTx.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

ueD2DTx.mobility ↗.initialLatitude

double

nan deg

ueD2DTx.mobility ↗.initialLongitude

double

nan deg

ueD2DTx.mobility ↗.initialAltitude

double

0m

ueD2DTx.mobility ↗.initialHeading

double

0deg

ueD2DTx.mobility ↗.initialElevation

double

0deg

ueD2DTx.mobility ↗.initialBank

double

0deg

ueD2DTx.mobility ↗.initFromDisplayString

bool

true

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

ueD2DTx.mobility ↗.updateFromDisplayString

bool

true

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

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

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.ethernet ↗.displayStringTextFormat

string

“passed up: {totalFromMAC}\nsent: {totalFromHigherLayer}”

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

ueD2DTx.ethernet ↗.registerProtocol

bool

false

FIXME //KLUDGE should redesign place of EthernetEncapsulation and LLC modules

ueD2DTx.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ethernet ↗.fcsMode

string

“declared”

ueD2DTx.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

ueD2DTx.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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.lo ↗.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.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DTx.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DTx.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DTx.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueD2DTx.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DTx.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DTx.lo ↗.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.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DTx.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueD2DTx.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DTx.lo ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DTx.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueD2DTx.lo ↗.lo ↗.displayStringTextFormat

string

“rcv:{numRcvdOK} snt:{numSent}”

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

ueD2DTx.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.lo ↗.lo ↗.mtu

int

4470B

ueD2DTx.wlan ↗.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.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DTx.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DTx.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DTx.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueD2DTx.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DTx.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DTx.wlan ↗.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.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DTx.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueD2DTx.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DTx.wlan ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DTx.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueD2DTx.wlan ↗.mib ↗.displayStringTextFormat

string

“Address: {address}{ssidStr}\n{modeStr}{stationTypeStr}{qosStr}{associatedStr}”

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

ueD2DTx.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.wlan ↗.agent ↗.mibModule

string

ueD2DTx.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

ueD2DTx.wlan ↗.agent ↗.channelsToScan

string

“”

List of channel numbers to scan (space delimited); empty means all channels

ueD2DTx.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

ueD2DTx.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

ueD2DTx.wlan ↗.agent ↗.maxChannelTime

double

300ms

Channel time for passive scanning, and max channel time for active scanning

ueD2DTx.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

ueD2DTx.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

ueD2DTx.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

ueD2DTx.wlan ↗.agent ↗.defaultSsid

string

“”

List of allowed SSIDs to connect to; leave empty for no filtering

ueD2DTx.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

ueD2DTx.wlan ↗.mgmt ↗.mibModule

string

ueD2DTx.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.originatorMacDataService”

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.ackHandlerModule

string

“^.^.ackHandler”

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

ueD2DTx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

ueD2DTx.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

ueD2DTx.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

ueD2DTx.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.dcf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

ueD2DTx.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

ueD2DTx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

ueD2DTx.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

ueD2DTx.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.^.originatorMacDataService”

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.ackHandlerModule

string

“^.ackHandler”

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.ackHandler ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.txopLimit

double

-1s

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.longRetryLimit

int

4

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.collisionController ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.shortRetryLimit

int

7

ueD2DTx.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.longRetryLimit

int

4

ueD2DTx.wlan ↗.mac ↗.hcf ↗.hcca ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.subframeNumThreshold

int

-1

Minimum number of subframes needed to compose an A-MSDU. (-1 means it won’t be checked)

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.aggregationLengthThreshold

int

-1

The minimum length for an aggregated payload necessary to create an A-MSDU (-1 means it won’t be checked).

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.maxAMsduSize

int

4065

-1 means infinity

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.qOsCheck

bool

true

Turns on/off the check of the presence of the QoS flag (false means off – this is needed for aggregation in DCF mode).

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.mpduAggregationPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

ueD2DTx.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

ueD2DTx.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

ueD2DTx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

ueD2DTx.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

ueD2DTx.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

ueD2DTx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

ueD2DTx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

ueD2DTx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

ueD2DTx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

ueD2DTx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

ueD2DTx.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

ueD2DTx.wlan ↗.mac ↗.ds ↗.mibModule

string

ueD2DTx.wlan ↗.mac ↗.rx ↗.displayStringTextFormat

string

“{rxStatus}”

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

ueD2DTx.wlan ↗.mac ↗.tx ↗.displayStringTextFormat

string

“{txFramePrefix}{txState}”

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

ueD2DTx.wlan ↗.mac ↗.tx ↗.rxModule

string

ueD2DTx.ppp ↗.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.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DTx.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DTx.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DTx.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueD2DTx.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DTx.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DTx.ppp ↗.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.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DTx.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueD2DTx.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DTx.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DTx.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueD2DTx.ppp ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

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

ueD2DTx.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

ueD2DTx.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueD2DTx.ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueD2DTx.ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueD2DTx.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueD2DTx.ppp ↗.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

ueD2DTx.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ppp ↗.ppp ↗.sendRawBytes

bool

false

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

ueD2DTx.ppp ↗.ppp ↗.mtu

int

4470B

ueD2DTx.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

ueD2DTx.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

ueD2DTx.eth ↗.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.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DTx.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DTx.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DTx.eth ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueD2DTx.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DTx.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DTx.eth ↗.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.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DTx.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueD2DTx.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DTx.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DTx.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueD2DTx.tun ↗.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.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DTx.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DTx.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DTx.tun ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueD2DTx.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DTx.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DTx.tun ↗.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.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DTx.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueD2DTx.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DTx.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DTx.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueD2DTx.tun ↗.tun ↗.displayStringTextFormat

string

“”

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

ueD2DTx.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.tun ↗.tun ↗.mtu

int

1500B

ueD2DTx.virt ↗.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.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DTx.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DTx.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DTx.virt ↗.pcapRecorder ↗.pcapFile

string

“”

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

ueD2DTx.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DTx.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DTx.virt ↗.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.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DTx.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueD2DTx.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DTx.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DTx.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

ueD2DTx.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

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

ueD2DTx.virt ↗.tunnel ↗.interfaceTableModule

string

ueD2DTx.virt ↗.tunnel ↗.realInterface

string

ueD2DTx.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

ueD2DTx.virt ↗.tunnel ↗.address

string

“copy”

ueD2DTx.virt ↗.tunnel ↗.vlanId

int

-1

ueD2DTx.virt ↗.tunnel ↗.steal

bool

vlanId != -1

ueD2DTx.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv4 ↗.configurator ↗.routingTableModule

string

ueD2DTx.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

ueD2DTx.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

ueD2DTx.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

ueD2DTx.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

ueD2DTx.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

ueD2DTx.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

ueD2DTx.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

ueD2DTx.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

ueD2DTx.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

ueD2DTx.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

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

ueD2DTx.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

ueD2DTx.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

ueD2DTx.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DTx.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

ueD2DTx.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

ueD2DTx.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.serviceMapping

object

{}

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

ueD2DTx.ipv4 ↗.up ↗.protocolMapping

object

{}

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

ueD2DTx.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv4 ↗.igmp ↗.routingTableModule

string

ueD2DTx.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

ueD2DTx.ipv4 ↗.igmp ↗.enabled

bool

true

ueD2DTx.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

ueD2DTx.ipv4 ↗.igmp ↗.queryInterval

double

125s

ueD2DTx.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

ueD2DTx.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

ueD2DTx.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

ueD2DTx.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

ueD2DTx.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

ueD2DTx.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

ueD2DTx.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

ueD2DTx.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

ueD2DTx.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv4 ↗.icmp ↗.routingTableModule

string

ueD2DTx.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

ueD2DTx.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

ueD2DTx.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DTx.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

ueD2DTx.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

ueD2DTx.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

ueD2DTx.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

ueD2DTx.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

ueD2DTx.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv4 ↗.ip ↗.routingTableModule

string

ueD2DTx.ipv4 ↗.ip ↗.arpModule

string

ueD2DTx.ipv4 ↗.ip ↗.icmpModule

string

ueD2DTx.ipv4 ↗.ip ↗.checksumMode

string

“declared”

ueD2DTx.ipv4 ↗.ip ↗.timeToLive

int

32

ueD2DTx.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

ueD2DTx.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

ueD2DTx.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

ueD2DTx.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

ueD2DTx.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

ueD2DTx.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

ueD2DTx.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

ueD2DTx.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

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

ueD2DTx.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv4 ↗.arp ↗.routingTableModule

string

ueD2DTx.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

ueD2DTx.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

ueD2DTx.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

ueD2DTx.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

ueD2DTx.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

ueD2DTx.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

ueD2DTx.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

ueD2DTx.ipv4 ↗.ipsec ↗.interfaceTableModule

string

ueD2DTx.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

ueD2DTx.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

ueD2DTx.ipv4 ↗.ipsec ↗.spdConfig

xml

ueD2DTx.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

ueD2DTx.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

ueD2DTx.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

ueD2DTx.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

ueD2DTx.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

ueD2DTx.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

ueD2DTx.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

ueD2DTx.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

ueD2DTx.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

ueD2DTx.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueD2DTx.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueD2DTx.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DTx.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

ueD2DTx.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

ueD2DTx.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

ueD2DTx.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

ueD2DTx.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.configurator ↗.interfaceTableModule

string

ueD2DTx.ipv6 ↗.configurator ↗.routingTableModule

string

ueD2DTx.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

ueD2DTx.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

ueD2DTx.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

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

ueD2DTx.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

ueD2DTx.ipv6 ↗.routingTable ↗.forwarding

bool

false

ueD2DTx.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

ueD2DTx.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

ueD2DTx.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

ueD2DTx.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

ueD2DTx.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

ueD2DTx.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

ueD2DTx.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

ueD2DTx.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

ueD2DTx.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DTx.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

ueD2DTx.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

ueD2DTx.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.serviceMapping

object

{}

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

ueD2DTx.ipv6 ↗.up ↗.protocolMapping

object

{}

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

ueD2DTx.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

ueD2DTx.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

ueD2DTx.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DTx.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

ueD2DTx.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

ueD2DTx.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

ueD2DTx.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

ueD2DTx.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

ueD2DTx.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

ueD2DTx.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv6 ↗.ipv6 ↗.routingTableModule

string

ueD2DTx.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

ueD2DTx.ipv6 ↗.ipv6 ↗.icmpv6Module

string

ueD2DTx.ipv6 ↗.ipv6 ↗.procDelay

double

0s

ueD2DTx.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

ueD2DTx.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

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

ueD2DTx.ipv6 ↗.ipsec ↗.interfaceTableModule

string

ueD2DTx.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

ueD2DTx.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

ueD2DTx.ipv6 ↗.ipsec ↗.spdConfig

xml

ueD2DTx.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

ueD2DTx.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

ueD2DTx.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

ueD2DTx.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

ueD2DTx.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

ueD2DTx.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

ueD2DTx.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

ueD2DTx.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

ueD2DTx.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

ueD2DTx.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueD2DTx.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

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

ueD2DTx.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

ueD2DTx.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

ueD2DTx.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

ueD2DTx.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

ueD2DTx.ipv6 ↗.mipv6 ↗.isMobileNode

bool

ueD2DTx.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

ueD2DTx.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

ueD2DTx.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

ueD2DTx.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

ueD2DTx.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

ueD2DTx.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

ueD2DTx.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

ueD2DTx.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

ueD2DTx.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

ueD2DTx.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

ueD2DTx.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

ueD2DTx.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

ueD2DTx.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

ueD2DTx.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

ueD2DTx.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

ueD2DTx.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

ueD2DTx.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

ueD2DTx.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

ueD2DTx.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

ueD2DTx.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

ueD2DTx.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

ueD2DTx.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

ueD2DTx.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

ueD2DTx.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

ueD2DTx.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

ueD2DTx.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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.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

ueD2DTx.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DTx.udp ↗.checksumMode

string

“declared”

ueD2DTx.udp ↗.defaultMulticastLoop

bool

true

ueD2DTx.tcp ↗.displayStringTextFormat

string

“”

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

ueD2DTx.tcp ↗.checksumMode

string

“declared”

ueD2DTx.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)

ueD2DTx.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

ueD2DTx.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

ueD2DTx.tcp ↗.limitedTransmitEnabled

bool

false

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

ueD2DTx.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

ueD2DTx.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)

ueD2DTx.tcp ↗.windowScalingSupport

bool

false

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

ueD2DTx.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)

ueD2DTx.tcp ↗.timestampSupport

bool

false

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

ueD2DTx.tcp ↗.mss

int

536

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

ueD2DTx.tcp ↗.msl

int

120s

Maximum Segment Lifetime

ueD2DTx.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

ueD2DTx.tcp ↗.dupthresh

int

3

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

ueD2DTx.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…

ueD2DTx.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

ueD2DTx.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

ueD2DTx.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

ueD2DTx.tcp ↗.dctcpGamma

double

0.0625

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

ueD2DTx.tcp ↗.pmtudEnabled

bool

false

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

ueD2DTx.tcp ↗.pmtudTimeout

double

600s

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

ueD2DTx.sctp ↗.displayStringTextFormat

string

“”

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

ueD2DTx.sctp ↗.interfaceTableModule

string

ueD2DTx.sctp ↗.routingTableModule

string

ueD2DTx.sctp ↗.checksumMode

string

“declared”

ueD2DTx.sctp ↗.numGapReports

int

3

ueD2DTx.sctp ↗.rtoInitial

double

3s

ueD2DTx.sctp ↗.rtoMin

double

1s

ueD2DTx.sctp ↗.rtoMax

double

60s

ueD2DTx.sctp ↗.rtoAlpha

double

0.125

ueD2DTx.sctp ↗.rtoBeta

double

0.250

ueD2DTx.sctp ↗.maxBurst

int

4

ueD2DTx.sctp ↗.maxBurstVariant

string

“maxBurst”

ueD2DTx.sctp ↗.initialWindow

int

0

ueD2DTx.sctp ↗.assocMaxRetrans

int

10

ueD2DTx.sctp ↗.pathMaxRetrans

int

5

ueD2DTx.sctp ↗.maxInitRetrans

int

8

ueD2DTx.sctp ↗.sackPeriod

double

200ms

ueD2DTx.sctp ↗.sackFrequency

int

2

ueD2DTx.sctp ↗.reactivatePrimaryPath

bool

false

ueD2DTx.sctp ↗.sendQueueLimit

int

0

ueD2DTx.sctp ↗.validCookieLifetime

double

10s

ueD2DTx.sctp ↗.enableHeartbeats

bool

true

ueD2DTx.sctp ↗.hbInterval

double

30s

ueD2DTx.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

ueD2DTx.sctp ↗.nagleEnabled

bool

true

ueD2DTx.sctp ↗.naglePoint

int

1468

ueD2DTx.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

ueD2DTx.sctp ↗.fastRecoverySupported

bool

true

ueD2DTx.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

ueD2DTx.sctp ↗.ccModule

int

0

RFC4960=0

ueD2DTx.sctp ↗.osbWithHeader

bool

false

ueD2DTx.sctp ↗.RTXMethod

int

0

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

ueD2DTx.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

ueD2DTx.sctp ↗.arwnd

int

65535

ueD2DTx.sctp ↗.swsLimit

int

3000

Limit for SWS

ueD2DTx.sctp ↗.udpEncapsEnabled

bool

false

ueD2DTx.sctp ↗.natFriendly

bool

false

ueD2DTx.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

ueD2DTx.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

ueD2DTx.sctp ↗.tellArwnd

bool

false

For flow control

ueD2DTx.sctp ↗.messageAcceptLimit

int

0

For flow control

ueD2DTx.sctp ↗.fairStart

double

0s

ueD2DTx.sctp ↗.fairStop

double

0s

ueD2DTx.sctp ↗.streamsToPaths

string

“”

ueD2DTx.sctp ↗.startEndToEndDelay

int

0

ueD2DTx.sctp ↗.stopEndToEndDelay

int

10

ueD2DTx.sctp ↗.throughputInterval

double

1

ueD2DTx.sctp ↗.auth

bool

false

ueD2DTx.sctp ↗.chunks

string

“”

ueD2DTx.sctp ↗.padding

bool

false

ueD2DTx.sctp ↗.addIP

bool

false

ueD2DTx.sctp ↗.addTime

double

0s

ueD2DTx.sctp ↗.addAddress

string

“”

ueD2DTx.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

ueD2DTx.sctp ↗.packetDrop

bool

false

ueD2DTx.sctp ↗.sackNow

bool

false

ueD2DTx.sctp ↗.highSpeedCC

bool

false

ueD2DTx.sctp ↗.checkSackSeqNumber

bool

false

ueD2DTx.sctp ↗.nrSack

bool

false

ueD2DTx.sctp ↗.disableReneging

bool

false

ueD2DTx.sctp ↗.gapReportLimit

int

100000000

ueD2DTx.sctp ↗.gapListOptimizationVariant

string

“none”

ueD2DTx.sctp ↗.smartOverfullSACKHandling

bool

false

ueD2DTx.sctp ↗.allowQoSTracking

bool

false

ueD2DTx.sctp ↗.qosTrackingInterval

double

1.0s

ueD2DTx.sctp ↗.cmtSendAllVariant

string

“normal”

ueD2DTx.sctp ↗.cmtRetransmissionVariant

string

“normal”

ueD2DTx.sctp ↗.cmtCUCVariant

string

“normal”

ueD2DTx.sctp ↗.cmtBufferSplitVariant

string

“none”

ueD2DTx.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

ueD2DTx.sctp ↗.cmtUseSFR

bool

true

ueD2DTx.sctp ↗.cmtUseDAC

bool

true

ueD2DTx.sctp ↗.cmtUseFRC

bool

true

ueD2DTx.sctp ↗.cmtSmartT3Reset

bool

true

ueD2DTx.sctp ↗.cmtSmartFastRTX

bool

true

ueD2DTx.sctp ↗.cmtSmartReneging

bool

false

ueD2DTx.sctp ↗.cmtSlowPathRTTUpdate

bool

false

ueD2DTx.sctp ↗.cmtChunkReschedulingVariant

string

“none”

ueD2DTx.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

ueD2DTx.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

ueD2DTx.sctp ↗.movedChunkFastRTXFactor

double

2.0

ueD2DTx.sctp ↗.cmtSackPath

string

“standard”

ueD2DTx.sctp ↗.strictCwndBooking

bool

false

ueD2DTx.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

ueD2DTx.sctp ↗.cmtCCPathGroups

string

“”

ueD2DTx.sctp ↗.rpPathBlocking

bool

false

ueD2DTx.sctp ↗.rpScaleBlockingTimeout

bool

false

ueD2DTx.sctp ↗.rpMinCwnd

int

1

ueD2DTx.quic ↗.displayStringTextFormat

string

“”

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

ueD2DTx.quic ↗.routingTableModule

string

Set by StandardHost.

ueD2DTx.quic ↗.sendZeroRttTokenAsServer

bool

false

ueD2DTx.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

ueD2DTx.quic ↗.accurateIncreaseInNewRenoCongestionAvoidance

bool

true

For NewReno in Congestion Avoidance, if true, increases cwnd after cwnd-acked bytes; if false, increases cwnd on every acked packet by acked_bytes/cwnd.

ueD2DTx.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

ueD2DTx.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

ueD2DTx.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

ueD2DTx.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

ueD2DTx.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

ueD2DTx.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

ueD2DTx.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

ueD2DTx.quic ↗.sendMaxDataFramesImmediately

bool

false

If true, a MAX_(STREAM)_DATA frame is sent immediately, after generation. Otherwise, sending the frame is delayed until the sending process starts due to another event.

ueD2DTx.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

ueD2DTx.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

ueD2DTx.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

ueD2DTx.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

ueD2DTx.quic ↗.maxPmtu

int

65535B

With useDplpmtud, it is used as upper limit for the PMTU search. Without useDplpmtud, the PMTU is set to the minimum of the MTU of the outgoing interface and this value.

ueD2DTx.quic ↗.dplpmtudMinPmtu

int

0

Specifies the minimum PMTU to use (if 0, it uses 1200 B for IPv4 or 1280 B for IPv6 as minimum PMTU).

ueD2DTx.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

ueD2DTx.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

ueD2DTx.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

ueD2DTx.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

ueD2DTx.quic ↗.useCwndForParallelProbes

int

0

If 0, no parallel probe packets; if 1, uses the availbale cwnd to send additional probe packets and if 2 prefers to send probe packets over other packets.

ueD2DTx.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

ueD2DTx.quic ↗.dplpmtudUsePmtuValidator

bool

true

If true, activates the PMTU Validator that trys to detect when the current PMTU estimation is larger than the actual PMTU.

ueD2DTx.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

ueD2DTx.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

ueD2DTx.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

ueD2DTx.quic ↗.pmtuValidatorInvalidOnPersistentCongestion

int

1

If 0, disabled. If 1, the PMTU validator uses persistent congeation as signal for a decreased PMTU. If 2, only two consecutive persisten congestions used as signal. If 3, …

ueD2DTx.quic ↗.reducePacketTimeThreshold

double

0s

Specifies after which time with no acks, packets with reduced size are sent. If zero, packet size reduction is disabled. If negative, reducePacketPtoFactorThreshold is used instead.

ueD2DTx.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

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.cellularNic.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.cellularNic.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DTx.cellularNic.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DTx.cellularNic.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DTx.cellularNic.pcapRecorder ↗.pcapFile

string

“”

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

ueD2DTx.cellularNic.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DTx.cellularNic.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DTx.cellularNic.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.cellularNic.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DTx.cellularNic.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DTx.cellularNic.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DTx.cellularNic.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

ueD2DTx.cellularNic.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DTx.cellularNic.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DTx.cellularNic.pcapRecorder ↗.alwaysFlush

bool

false

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

ueD2DTx.cellularNic.handoverPacketHolder.sessionType

string

The type of the UE’s session (see LteUe): the IP types parse the uplink datagram’s header for the modules after this one, the others carry the payload as is

ueD2DTx.cellularNic.ip2nic.binderModule

string

“binder”

ueD2DTx.cellularNic.ip2nic.connectionControlModule

string

“^.rrc.connectionControl”

The node’s control-plane entry point, asked for a bearer on a lookup miss

ueD2DTx.cellularNic.ip2nic.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB)

ueD2DTx.cellularNic.ip2nic.hasSdap

bool

false

When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification

ueD2DTx.cellularNic.ip2nic.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe), which the payload the NIC delivers up is of; set by the NIC

ueD2DTx.cellularNic.ip2nic.establishBearersOnDemand

bool

true

When false, a packet that finds no established bearer raises an error instead of establishing one (static bearers are established up front; see the staticDrbs parameter of BearerConfigurator)

ueD2DTx.cellularNic.ip2nic.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

ueD2DTx.cellularNic.rrc.registration.interfaceTableModule

string

ueD2DTx.cellularNic.rrc.registration.interfaceName

string

“cellular”

ueD2DTx.cellularNic.rrc.registration.routingTableModule

string

ueD2DTx.cellularNic.rrc.registration.binderModule

string

“binder”

ueD2DTx.cellularNic.rrc.registration.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), told about a multicast group join

ueD2DTx.cellularNic.rrc.registration.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe): a UE created during the run gets an IPv4 default route through the NIC only on an IP session, and the NIC of an Ethernet session is an Ethernet port; set by the NIC

ueD2DTx.cellularNic.rrc.bearerManagement.binderModule

string

“binder”

To reach a peer’s BearerManagement on RLF

ueD2DTx.cellularNic.rrc.bearerManagement.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), which a torn-down bearer’s DRB identity goes back through

ueD2DTx.cellularNic.rrc.bearerManagement.t311

double

0s

RRC re-establishment cell-selection timer (0 => release-to-IDLE)

ueD2DTx.cellularNic.rrc.bearerManagement.t301

double

0.1s

RRC re-establishment (request -> complete) timer

ueD2DTx.cellularNic.rrc.bearerManagement.headerCompressedSize

int

-1B

Removed, an error if set: header compression is configured per bearer (the rohc field of BearerConfigurator’s bearer definitions)

ueD2DTx.cellularNic.rrc.bearerManagement.pdcpEntityModuleType

string

“simu5g.stack.pdcp.LtePdcpEntity”

PDCP entity types: the full PDCP entity is a compound (PdcpEntityBase, TX+RX sides plus the leg split/join stage of a multi-leg bearer); the instantiable types are its subclasses (LtePdcpEntity, NrPdcpEntity). At a DC secondary a bearer’s PDCP lives at the master, so the secondary installs an PdcpRelayEntity (tunnels PDUs to/from the master) in its place.

ueD2DTx.cellularNic.rrc.bearerManagement.pdcpRelayEntityModuleType

string

“simu5g.stack.pdcp.PdcpRelayEntity”

ueD2DTx.cellularNic.rrc.bearerManagement.dualConnectivityEnabled

bool

false

Set by the NIC; two-leg (split-capable) bearers

ueD2DTx.cellularNic.rrc.bearerManagement.rlcTmEntityModuleType

string

“simu5g.stack.rlc.RlcTmEntity”

RLC entity types (compound modules): lteRlc* = LTE-FI bearers (TS 36.322), nrRlc* = NR bearers (SI/SO wire format, TS 38.322)

ueD2DTx.cellularNic.rrc.bearerManagement.lteRlcUmEntityModuleType

string

“simu5g.stack.rlc.LteRlcUmEntity”

ueD2DTx.cellularNic.rrc.bearerManagement.lteRlcAmEntityModuleType

string

“simu5g.stack.rlc.LteRlcAmEntity”

ueD2DTx.cellularNic.rrc.bearerManagement.nrRlcUmEntityModuleType

string

“simu5g.stack.rlc.NrRlcUmEntity”

ueD2DTx.cellularNic.rrc.bearerManagement.nrRlcAmEntityModuleType

string

“simu5g.stack.rlc.NrRlcAmEntity”

ueD2DTx.cellularNic.rrc.bearerManagement.registrationModule

string

“^.registration”

Module references for accessing other stack layers

ueD2DTx.cellularNic.rrc.bearerManagement.drbTableModule

string

“^.drbTable”

ueD2DTx.cellularNic.rrc.bearerManagement.ip2nicModule

string

“^.^.ip2nic”

ueD2DTx.cellularNic.rrc.bearerManagement.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

Attachment-ledger push target (UE only)

ueD2DTx.cellularNic.rrc.bearerManagement.pdcpMuxModule

string

“^.^.pdcpMux”

ueD2DTx.cellularNic.rrc.bearerManagement.pdcpDcMuxModule

string

“^.^.pdcpDcMux”

ueD2DTx.cellularNic.rrc.bearerManagement.d2dModeControllerModule

string

“^.d2dModeController”

ueD2DTx.cellularNic.rrc.bearerManagement.rlcMuxModule

string

“^.^.rlcMux”

ueD2DTx.cellularNic.rrc.bearerManagement.nrRlcMuxModule

string

“^.^.nrRlcMux”

ueD2DTx.cellularNic.rrc.bearerManagement.macModule

string

“^.^.mac”

ueD2DTx.cellularNic.rrc.bearerManagement.nrMacModule

string

“^.^.nrMac”

ueD2DTx.cellularNic.rrc.bearerManagement.sdapModule

string

“^.^.sdap”

Configuration push target; unresolvable (no SDAP on the NIC) = no pushes

ueD2DTx.cellularNic.rrc.bearerManagement.qosFlowClassifierModule

string

“^.^.qosFlowClassifier”

Uplink QFI rule push target; unresolvable (not a UE stack with SDAP) = no pushes

ueD2DTx.cellularNic.rrc.connectionControl.binderModule

string

“binder”

ueD2DTx.cellularNic.rrc.connectionControl.bearerConfiguratorModule

string

“bearerConfigurator”

ueD2DTx.cellularNic.rrc.connectionControl.coreControlModule

string

“coreControl”

ueD2DTx.cellularNic.rrc.connectionControl.bearerManagementModule

string

“^.bearerManagement”

ueD2DTx.cellularNic.rrc.connectionControl.macModule

string

“^.^.mac”

ueD2DTx.cellularNic.rrc.connectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

ueD2DTx.cellularNic.rrc.connectionControl.gtpUserModule

string

“^.^.^.relay.gtpUser”

ueD2DTx.cellularNic.rrc.connectionControl.gtpUserX2Module

string

“^.^.^.gtpUserX2”

ueD2DTx.cellularNic.rrc.connectionControl.macNodeId

int

The base station’s node id; the NIC sets it from the node’s

ueD2DTx.cellularNic.rrc.connectionControl.gateway

string

“”

The node’s core network gateway, as its gateway parameter names it; ignored at a node not connected to a core network (a secondary node)

ueD2DTx.cellularNic.rrc.nrConnectionControl.dynamicCellAssociation

bool

false

ueD2DTx.cellularNic.rrc.nrConnectionControl.enableHandover

bool

false

Allows handovers in the UE

ueD2DTx.cellularNic.rrc.nrConnectionControl.isNr

bool

Whether this instance is associated with the NR or the LTE stack

ueD2DTx.cellularNic.rrc.nrConnectionControl.macNodeId

int

MacNodeId of the stack leg this controller belongs to (set by the NIC)

ueD2DTx.cellularNic.rrc.nrConnectionControl.sessionType

string

The type of the session the UE requests at connection setup (see LteUe), set by the NIC

ueD2DTx.cellularNic.rrc.nrConnectionControl.handoverLatency

double

50ms

Handover duration

ueD2DTx.cellularNic.rrc.nrConnectionControl.handoverDetachmentTime

double

handoverLatency > 0s ? handoverLatency/2 : 25ms

ueD2DTx.cellularNic.rrc.nrConnectionControl.handoverAttachmentTime

double

handoverLatency > 0s ? handoverLatency-handoverDetachmentTime : handoverDetachmentTime

ueD2DTx.cellularNic.rrc.nrConnectionControl.minRssiDefault

bool

true

Whether minRssi is taken from PhyPisaData instead of the minRssi parameter

ueD2DTx.cellularNic.rrc.nrConnectionControl.minRssi

double

-99.0dB

Configurable minimum threshold RSSI for attaching to an eNB (meaningful only if minRssiDefault==false)

ueD2DTx.cellularNic.rrc.nrConnectionControl.hysteresisFactor

double

10

ueD2DTx.cellularNic.rrc.nrConnectionControl.binderModule

string

“binder”

ueD2DTx.cellularNic.rrc.nrConnectionControl.macModule

string

“^.^.mac”

ueD2DTx.cellularNic.rrc.nrConnectionControl.bearerManagementModule

string

“^.bearerManagement”

ueD2DTx.cellularNic.rrc.nrConnectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

ueD2DTx.cellularNic.rrc.nrConnectionControl.feedbackGeneratorModule

string

“^.^.dlFbGen”

TODO or “^.^.nrDlFbGen”

ueD2DTx.cellularNic.rrc.nrConnectionControl.otherConnectionControlModule

string

“”

ueD2DTx.cellularNic.rrc.nrConnectionControl.hasCollector

bool

false

True when node has a collector module (ueCollector/nrUeCollector) for this PHY module

ueD2DTx.cellularNic.rrc.d2dModeSelection.modeSelectionPeriod

double

1s

ueD2DTx.cellularNic.rrc.d2dModeSelection.binderModule

string

“binder”

ueD2DTx.cellularNic.rrc.d2dModeSelection.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

ueD2DTx.cellularNic.rrc.d2dModeSelection.macModule

string

“^.^.mac”

ueD2DTx.cellularNic.rrc.d2dModeSelection.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point, which knows the UEs handing over

ueD2DTx.cellularNic.rlcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

ueD2DTx.cellularNic.phy.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

ueD2DTx.cellularNic.phy.macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

ueD2DTx.cellularNic.phy.ueTxPower

double

26dBm

ueD2DTx.cellularNic.phy.eNodeBTxPower

double

46dBm

ueD2DTx.cellularNic.phy.microTxPower

double

30dBm

ueD2DTx.cellularNic.phy.txDirection

string

“OMNI”

ueD2DTx.cellularNic.phy.txAngle

double

0deg

ueD2DTx.cellularNic.phy.binderModule

string

“binder”

ueD2DTx.cellularNic.phy.channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

ueD2DTx.cellularNic.phy.connectionControlModule

string

“^.rrc.connectionControl”

ueD2DTx.cellularNic.packetFlowObserver.macModule

string

“^.mac”

ueD2DTx.cellularNic.packetFlowObserver.pdcpModule

string

“^”

ueD2DTx.cellularNic.packetFlowObserver.rlcModule

string

“^”

ueD2DTx.cellularNic.packetFlowObserver.isNrObserver

bool

false

ueD2DTx.cellularNic.packetFlowObserver.pfmType

string

“PacketFlowObserverUe”

ueD2DTx.cellularNic.dlFbGen.isNr

bool

false

True for the NR leg (set by NrNicUe on the nrDlFbGen submodule)

ueD2DTx.cellularNic.dlFbGen.macNodeId

int

MacNodeId of the stack leg this generator belongs to (set by the NIC)

ueD2DTx.cellularNic.dlFbGen.feedbackType

string

“ALLBANDS”

Can be ALLBANDS, PREFERRED, WIDEBAND

ueD2DTx.cellularNic.dlFbGen.rbAllocationType

string

“localized”

Resource allocation type (“distributed” or “localized”)

ueD2DTx.cellularNic.dlFbGen.fbPeriod

int

6tti

Period for Periodic feedback in TTI

ueD2DTx.cellularNic.dlFbGen.fbDelay

int

1tti

Time interval between sensing and transmission in TTI

ueD2DTx.cellularNic.dlFbGen.usePeriodic

bool

true

Whether periodic feedback is used in addition to aperiodic feedback

ueD2DTx.cellularNic.dlFbGen.initialTxMode

string

“SINGLE_ANTENNA_PORT0”

Initial txMode (see LteCommon.h)

ueD2DTx.cellularNic.dlFbGen.binderModule

string

“binder”

ueD2DTx.cellularNic.dlFbGen.phyModule

string

“^.phy”

ueD2DTx.macTable ↗.displayStringTextFormat

string

“addr: %a\nvlan: %v”

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

ueD2DTx.macTable ↗.agingTime

double

120s

ueD2DTx.macTable ↗.forwardingTable

object

[]

ueD2DTx.macTable ↗.forwardingTableFile

string

“”

ueD2DTx.macTable ↗.interfaceTableModule

string

ueD2DTx.unstructuredApp.source ↗.displayStringTextFormat

string

“created %p pk (%l)”

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

ueD2DTx.unstructuredApp.source ↗.packetNameFormat

string

“%a-%c”

See directives in module documentation

ueD2DTx.unstructuredApp.source ↗.packetRepresentation

string

“byteCount”

Determines the chunk of the packet data

ueD2DTx.unstructuredApp.source ↗.packetProtocol

string

“unknown”

ueD2DTx.unstructuredApp.source ↗.packetLength

int

ueD2DTx.unstructuredApp.source ↗.packetData

int

-1

ueD2DTx.unstructuredApp.source ↗.attachCreationTimeTag

bool

true

ueD2DTx.unstructuredApp.source ↗.attachIdentityTag

bool

true

ueD2DTx.unstructuredApp.source ↗.attachDirectionTag

bool

true

ueD2DTx.unstructuredApp.source ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

ueD2DTx.unstructuredApp.source ↗.initialProductionOffset

double

-1s

Initial duration before which packets are not produced. When negative, then produce packet in initialize()

ueD2DTx.unstructuredApp.source ↗.productionInterval

double

Elapsed time between subsequent packets pushed to the connected packet consumer

ueD2DTx.unstructuredApp.source ↗.scheduleForAbsoluteTime

bool

true

When a clock is used, “relative” means that setting the clock will not affect the simulation time of the event

ueD2DTx.unstructuredApp.sink ↗.displayStringTextFormat

string

“received %p pk (%l)”

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

ueD2DTx.unstructuredApp.sink ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

ueD2DTx.unstructuredApp.sink ↗.initialConsumptionOffset

double

0s

Initial duration before which packets are not consumed

ueD2DTx.unstructuredApp.sink ↗.consumptionInterval

double

0s

Elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time

ueD2DTx.unstructuredApp.sink ↗.scheduleForAbsoluteTime

bool

true

When a clock is used, “relative” means that setting the clock will not affect the simulation time of the event

ueD2DTx.unstructuredApp.io.interfaceTableModule

string

Relative module path of the interface table

ueD2DTx.unstructuredApp.io.interface

string

“cellular”

The name of the cellular NIC’s interface

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”

Initial status of the network node

ueD2DRx.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

ueD2DRx.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

ueD2DRx.mobility ↗.coordinateSystemModule

string

“”

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

ueD2DRx.mobility ↗.updateDisplayString

bool

true

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

ueD2DRx.mobility ↗.constraintAreaMinX

double

-inf m

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

ueD2DRx.mobility ↗.constraintAreaMinY

double

-inf m

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

ueD2DRx.mobility ↗.constraintAreaMinZ

double

-inf m

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

ueD2DRx.mobility ↗.constraintAreaMaxX

double

inf m

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

ueD2DRx.mobility ↗.constraintAreaMaxY

double

inf m

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

ueD2DRx.mobility ↗.constraintAreaMaxZ

double

inf m

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

ueD2DRx.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

ueD2DRx.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

ueD2DRx.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

ueD2DRx.mobility ↗.initialLatitude

double

nan deg

ueD2DRx.mobility ↗.initialLongitude

double

nan deg

ueD2DRx.mobility ↗.initialAltitude

double

0m

ueD2DRx.mobility ↗.initialHeading

double

0deg

ueD2DRx.mobility ↗.initialElevation

double

0deg

ueD2DRx.mobility ↗.initialBank

double

0deg

ueD2DRx.mobility ↗.initFromDisplayString

bool

true

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

ueD2DRx.mobility ↗.updateFromDisplayString

bool

true

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

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

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.ethernet ↗.displayStringTextFormat

string

“passed up: {totalFromMAC}\nsent: {totalFromHigherLayer}”

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

ueD2DRx.ethernet ↗.registerProtocol

bool

false

FIXME //KLUDGE should redesign place of EthernetEncapsulation and LLC modules

ueD2DRx.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ethernet ↗.fcsMode

string

“declared”

ueD2DRx.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

ueD2DRx.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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.lo ↗.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.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DRx.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DRx.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DRx.lo ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

ueD2DRx.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DRx.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DRx.lo ↗.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.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DRx.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DRx.lo ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DRx.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.lo ↗.lo ↗.displayStringTextFormat

string

“rcv:{numRcvdOK} snt:{numSent}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.lo ↗.lo ↗.mtu

int

4470B

ueD2DRx.wlan ↗.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.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DRx.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DRx.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DRx.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

ueD2DRx.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DRx.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DRx.wlan ↗.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.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DRx.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DRx.wlan ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DRx.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.wlan ↗.mib ↗.displayStringTextFormat

string

“Address: {address}{ssidStr}\n{modeStr}{stationTypeStr}{qosStr}{associatedStr}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.agent ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.wlan ↗.agent ↗.mibModule

string

ueD2DRx.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

ueD2DRx.wlan ↗.agent ↗.channelsToScan

string

“”

List of channel numbers to scan (space delimited); empty means all channels

ueD2DRx.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

ueD2DRx.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

ueD2DRx.wlan ↗.agent ↗.maxChannelTime

double

300ms

Channel time for passive scanning, and max channel time for active scanning

ueD2DRx.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

ueD2DRx.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

ueD2DRx.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

ueD2DRx.wlan ↗.agent ↗.defaultSsid

string

“”

List of allowed SSIDs to connect to; leave empty for no filtering

ueD2DRx.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

ueD2DRx.wlan ↗.mgmt ↗.mibModule

string

ueD2DRx.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.originatorMacDataService”

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.inProgressFrames ↗.ackHandlerModule

string

“^.^.ackHandler”

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

ueD2DRx.wlan ↗.mac ↗.dcf ↗.channelAccess ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

ueD2DRx.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

ueD2DRx.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

ueD2DRx.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.dcf ↗.ackHandler ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

ueD2DRx.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

ueD2DRx.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

ueD2DRx.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

ueD2DRx.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.packetCapacity

int

100

Maximum number of packets in the queue, no limit by default

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.comparatorClass

string

“inet::ieee80211::MgmtOverDataComparator”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.pendingQueue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.displayStringTextFormat

string

“{numInProgress} packets”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.pendingQueueModule

string

“^.pendingQueue”

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.originatorMacDataServiceModule

string

“^.^.^.originatorMacDataService”

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.inProgressFrames ↗.ackHandlerModule

string

“^.ackHandler”

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.displayStringTextFormat

string

“{fsmState}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.initialChannelBusy

bool

true

Assume that the channel was busy before the simulation started

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.contention ↗.backoffOptimization

bool

true

We can pretend the frame has arrived into the queue a little bit earlier, and maybe able to start transmitting immediately

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.ackHandler ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.txopProcedure ↗.txopLimit

double

-1s

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.edcaf ↗.recoveryProcedure ↗.longRetryLimit

int

4

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.collisionController ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.shortRetryLimit

int

7

ueD2DRx.wlan ↗.mac ↗.hcf ↗.edca ↗.mgmtAndNonQoSRecoveryProcedure ↗.longRetryLimit

int

4

ueD2DRx.wlan ↗.mac ↗.hcf ↗.hcca ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.subframeNumThreshold

int

-1

Minimum number of subframes needed to compose an A-MSDU. (-1 means it won’t be checked)

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.aggregationLengthThreshold

int

-1

The minimum length for an aggregated payload necessary to create an A-MSDU (-1 means it won’t be checked).

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.maxAMsduSize

int

4065

-1 means infinity

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.msduAggregationPolicy ↗.qOsCheck

bool

true

Turns on/off the check of the presence of the QoS flag (false means off – this is needed for aggregation in DCF mode).

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.mpduAggregationPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorMacDataService ↗.fragmentationPolicy ↗.fragmentationThreshold

int

1500B

ueD2DRx.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

ueD2DRx.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

ueD2DRx.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

ueD2DRx.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

ueD2DRx.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

ueD2DRx.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

ueD2DRx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

ueD2DRx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

ueD2DRx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

ueD2DRx.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

ueD2DRx.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.ds ↗.mibModule

string

ueD2DRx.wlan ↗.mac ↗.rx ↗.displayStringTextFormat

string

“{rxStatus}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.tx ↗.displayStringTextFormat

string

“{txFramePrefix}{txState}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.wlan ↗.mac ↗.tx ↗.rxModule

string

ueD2DRx.ppp ↗.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.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DRx.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DRx.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DRx.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

ueD2DRx.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DRx.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DRx.ppp ↗.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.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DRx.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DRx.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DRx.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.ppp ↗.queue ↗.displayStringTextFormat

string

“contains %p pk (%l) pushed %u\npulled %o removed %r dropped %d”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

ueD2DRx.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

ueD2DRx.ppp ↗.queue ↗.dropperClass

string

“inet::queueing::PacketAtCollectionEndDropper”

Determines which packets are dropped when the queue is overloaded, packets are not dropped by default; the parameter must be the name of a C++ class which implements the IPacketDropperFunction C++ interface and is registered via Register_Class

ueD2DRx.ppp ↗.queue ↗.comparatorClass

string

“”

Determines the order of packets in the queue, insertion order by default; the parameter must be the name of a C++ class which implements the IPacketComparatorFunction C++ interface and is registered via Register_Class

ueD2DRx.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

ueD2DRx.ppp ↗.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

ueD2DRx.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ppp ↗.ppp ↗.sendRawBytes

bool

false

When true packets are serialized into a sequence of bytes before sending out

ueD2DRx.ppp ↗.ppp ↗.mtu

int

4470B

ueD2DRx.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

ueD2DRx.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

ueD2DRx.eth ↗.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.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DRx.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DRx.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DRx.eth ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

ueD2DRx.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DRx.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DRx.eth ↗.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.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DRx.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DRx.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DRx.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.tun ↗.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.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DRx.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DRx.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DRx.tun ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

ueD2DRx.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DRx.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DRx.tun ↗.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.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DRx.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DRx.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DRx.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.tun ↗.tun ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.tun ↗.tun ↗.mtu

int

1500B

ueD2DRx.virt ↗.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.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DRx.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DRx.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DRx.virt ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

ueD2DRx.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DRx.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DRx.virt ↗.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.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DRx.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DRx.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DRx.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.virt ↗.tunnel ↗.interfaceTableModule

string

ueD2DRx.virt ↗.tunnel ↗.realInterface

string

ueD2DRx.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

ueD2DRx.virt ↗.tunnel ↗.address

string

“copy”

ueD2DRx.virt ↗.tunnel ↗.vlanId

int

-1

ueD2DRx.virt ↗.tunnel ↗.steal

bool

vlanId != -1

ueD2DRx.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv4 ↗.configurator ↗.routingTableModule

string

ueD2DRx.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

ueD2DRx.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

ueD2DRx.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

ueD2DRx.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

ueD2DRx.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

ueD2DRx.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

ueD2DRx.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

ueD2DRx.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

ueD2DRx.ipv4 ↗.natTable ↗.displayStringTextFormat

string

“{numNatEntries} entries”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

ueD2DRx.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

ueD2DRx.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DRx.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

ueD2DRx.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

ueD2DRx.ipv4 ↗.up ↗.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.ipv4 ↗.up ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.ipv4 ↗.up ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv4 ↗.igmp ↗.routingTableModule

string

ueD2DRx.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

ueD2DRx.ipv4 ↗.igmp ↗.enabled

bool

true

ueD2DRx.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

ueD2DRx.ipv4 ↗.igmp ↗.queryInterval

double

125s

ueD2DRx.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

ueD2DRx.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

ueD2DRx.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

ueD2DRx.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

ueD2DRx.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

ueD2DRx.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

ueD2DRx.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

ueD2DRx.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

ueD2DRx.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv4 ↗.icmp ↗.routingTableModule

string

ueD2DRx.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

ueD2DRx.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

ueD2DRx.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DRx.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

ueD2DRx.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

ueD2DRx.ipv4 ↗.mp ↗.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.ipv4 ↗.mp ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.ipv4 ↗.mp ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv4 ↗.ip ↗.routingTableModule

string

ueD2DRx.ipv4 ↗.ip ↗.arpModule

string

ueD2DRx.ipv4 ↗.ip ↗.icmpModule

string

ueD2DRx.ipv4 ↗.ip ↗.checksumMode

string

“declared”

ueD2DRx.ipv4 ↗.ip ↗.timeToLive

int

32

ueD2DRx.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

ueD2DRx.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

ueD2DRx.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

ueD2DRx.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

ueD2DRx.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

ueD2DRx.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

ueD2DRx.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

ueD2DRx.ipv4 ↗.arp ↗.displayStringTextFormat

string

“size:{arpCacheSize} sent:{numRequestsSent}\nrepl:{numRepliesSent} fail:{numFailedResolutions}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv4 ↗.arp ↗.routingTableModule

string

ueD2DRx.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

ueD2DRx.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

ueD2DRx.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

ueD2DRx.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

ueD2DRx.ipv4 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

ueD2DRx.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

ueD2DRx.ipv4 ↗.ipsec ↗.interfaceTableModule

string

ueD2DRx.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

ueD2DRx.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

ueD2DRx.ipv4 ↗.ipsec ↗.spdConfig

xml

ueD2DRx.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

ueD2DRx.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

ueD2DRx.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

ueD2DRx.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

ueD2DRx.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

ueD2DRx.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

ueD2DRx.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

ueD2DRx.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

ueD2DRx.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

ueD2DRx.ipv4 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DRx.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

ueD2DRx.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

ueD2DRx.ipv4 ↗.lp ↗.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.ipv4 ↗.lp ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.ipv4 ↗.lp ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.configurator ↗.interfaceTableModule

string

ueD2DRx.ipv6 ↗.configurator ↗.routingTableModule

string

ueD2DRx.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

ueD2DRx.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

ueD2DRx.ipv6 ↗.routingTable ↗.displayStringTextFormat

string

“{numRoutes} routes\n{numDestCache} destcache entries”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

ueD2DRx.ipv6 ↗.routingTable ↗.forwarding

bool

false

ueD2DRx.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

ueD2DRx.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

ueD2DRx.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

ueD2DRx.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

ueD2DRx.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

ueD2DRx.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

ueD2DRx.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

ueD2DRx.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

ueD2DRx.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DRx.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

ueD2DRx.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

ueD2DRx.ipv6 ↗.up ↗.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.ipv6 ↗.up ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.ipv6 ↗.up ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

ueD2DRx.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

ueD2DRx.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

ueD2DRx.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

ueD2DRx.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

ueD2DRx.ipv6 ↗.lp ↗.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.ipv6 ↗.lp ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

ueD2DRx.ipv6 ↗.lp ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.optimisticDad

bool

false

RFC 4429 Optimistic DAD: if true, an autoconfigured address may be used as a source address while DAD is still in progress; if false (RFC 4862), packets that would use it are deferred until DAD completes

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.detectL2Movement

bool

true

if true (default), (re)start Router Discovery (send Router Solicitations) whenever an interface associates at the link layer (e.g. a wireless handover to a new access point); lets a mobile node detect movement and obtain a new care-of address immediately, instead of relying on frequent unsolicited Router Advertisements (cf. MIPv6 fast RAs). Set to false to restore the legacy behaviour (movement detected only from periodic Router Advertisements)

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.routerBootupTime

double

uniform(0s, 0.3s)

random startup delay before a router assigns its link-local address; routers boot faster than hosts so that RAs are available by the time hosts solicit

ueD2DRx.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

ueD2DRx.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv6 ↗.ipv6 ↗.routingTableModule

string

ueD2DRx.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

ueD2DRx.ipv6 ↗.ipv6 ↗.icmpv6Module

string

ueD2DRx.ipv6 ↗.ipv6 ↗.procDelay

double

0s

ueD2DRx.ipv6 ↗.ipv6 ↗.sendRedirects

bool

true

RFC 4861 Section 8.2: when a router forwards a packet back out the interface it arrived on, send the source an ICMPv6 Redirect. Disable on wireless multi-hop / ad-hoc networks (e.g. MANET routing), where the geographic next hop is not directly reachable by the source, so redirects are useless and trigger a storm.

ueD2DRx.ipv6 ↗.ipsec ↗.displayStringTextFormat

string

“IN: ACCEPT: {inAccept} DROP: {inDrop} BYPASS: {inBypass}\n OUT: PROTECT: {outProtect} DROP: {outDrop} BYPASS: {outBypass}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.ipsec ↗.interfaceTableModule

string

ueD2DRx.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

ueD2DRx.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

ueD2DRx.ipv6 ↗.ipsec ↗.spdConfig

xml

ueD2DRx.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

ueD2DRx.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

ueD2DRx.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

ueD2DRx.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

ueD2DRx.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

ueD2DRx.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

ueD2DRx.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

ueD2DRx.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

ueD2DRx.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

ueD2DRx.ipv6 ↗.spd ↗.displayStringTextFormat

string

“entries: {numEntries}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.sad ↗.displayStringTextFormat

string

“entries: {numEntries}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

ueD2DRx.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

ueD2DRx.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

ueD2DRx.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

ueD2DRx.ipv6 ↗.mipv6 ↗.isMobileNode

bool

ueD2DRx.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

ueD2DRx.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

ueD2DRx.ipv6 ↗.mipv6 ↗.useRouteOptimization

bool

true

whether a mobile node route-optimizes with correspondent nodes (RFC 3775); if false, their traffic always uses the bidirectional home-agent tunnel

ueD2DRx.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

ueD2DRx.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

ueD2DRx.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

ueD2DRx.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

ueD2DRx.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

ueD2DRx.ipv6 ↗.pmipv6 ↗.mobileNodeProfiles

xml

xml(“<mobileNodes/>”)

MAG: mobile-node policy profiles, one per access interface, e.g. <mobileNodes> <mobileNode accessInterface=”wlan0” id=”mn1@example.com” homeNetworkPrefix=”2001:db8:1::” prefixLength=”64”/> </mobileNodes> (accessInterface may be omitted to match any access interface)

ueD2DRx.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

ueD2DRx.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

ueD2DRx.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

ueD2DRx.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

ueD2DRx.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

ueD2DRx.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

ueD2DRx.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

ueD2DRx.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

ueD2DRx.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

ueD2DRx.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

ueD2DRx.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

ueD2DRx.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

ueD2DRx.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

ueD2DRx.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

ueD2DRx.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

ueD2DRx.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

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.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

ueD2DRx.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

ueD2DRx.udp ↗.checksumMode

string

“declared”

ueD2DRx.udp ↗.defaultMulticastLoop

bool

true

ueD2DRx.tcp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.tcp ↗.checksumMode

string

“declared”

ueD2DRx.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)

ueD2DRx.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

ueD2DRx.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

ueD2DRx.tcp ↗.limitedTransmitEnabled

bool

false

Limited Transmit algorithm (RFC 3042) enabled/disabled (can be used for TcpReno/TcpTahoe/TcpNewReno/TcpNoCongestionControl)

ueD2DRx.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

ueD2DRx.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)

ueD2DRx.tcp ↗.windowScalingSupport

bool

false

Window Scale (RFC 1323) support (header option) (WS will be enabled for a connection if both endpoints support it)

ueD2DRx.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)

ueD2DRx.tcp ↗.timestampSupport

bool

false

Timestamps (RFC 1323) support (header option) (TS will be enabled for a connection if both endpoints support it)

ueD2DRx.tcp ↗.mss

int

536

Maximum Segment Size (header option). Default 536 per RFC 1122.

ueD2DRx.tcp ↗.msl

int

120s

Maximum Segment Lifetime

ueD2DRx.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

ueD2DRx.tcp ↗.dupthresh

int

3

Used for TcpTahoe, TcpReno, and SACK (RFC 3517) DO NOT change unless you really know what you are doing

ueD2DRx.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…

ueD2DRx.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

ueD2DRx.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

ueD2DRx.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

ueD2DRx.tcp ↗.dctcpGamma

double

0.0625

A fixed estimation gain for calculating dctcp_alpha (RFC 8257 4.2)

ueD2DRx.tcp ↗.pmtudEnabled

bool

false

Path MTU Discovery (RFC 1191, RFC 1981) enabled/disabled

ueD2DRx.tcp ↗.pmtudTimeout

double

600s

Time after which the original MSS is restored to probe for increased path MTU (RFC 1191, Section 6.3)

ueD2DRx.sctp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.sctp ↗.interfaceTableModule

string

ueD2DRx.sctp ↗.routingTableModule

string

ueD2DRx.sctp ↗.checksumMode

string

“declared”

ueD2DRx.sctp ↗.numGapReports

int

3

ueD2DRx.sctp ↗.rtoInitial

double

3s

ueD2DRx.sctp ↗.rtoMin

double

1s

ueD2DRx.sctp ↗.rtoMax

double

60s

ueD2DRx.sctp ↗.rtoAlpha

double

0.125

ueD2DRx.sctp ↗.rtoBeta

double

0.250

ueD2DRx.sctp ↗.maxBurst

int

4

ueD2DRx.sctp ↗.maxBurstVariant

string

“maxBurst”

ueD2DRx.sctp ↗.initialWindow

int

0

ueD2DRx.sctp ↗.assocMaxRetrans

int

10

ueD2DRx.sctp ↗.pathMaxRetrans

int

5

ueD2DRx.sctp ↗.maxInitRetrans

int

8

ueD2DRx.sctp ↗.sackPeriod

double

200ms

ueD2DRx.sctp ↗.sackFrequency

int

2

ueD2DRx.sctp ↗.reactivatePrimaryPath

bool

false

ueD2DRx.sctp ↗.sendQueueLimit

int

0

ueD2DRx.sctp ↗.validCookieLifetime

double

10s

ueD2DRx.sctp ↗.enableHeartbeats

bool

true

ueD2DRx.sctp ↗.hbInterval

double

30s

ueD2DRx.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

ueD2DRx.sctp ↗.nagleEnabled

bool

true

ueD2DRx.sctp ↗.naglePoint

int

1468

ueD2DRx.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

ueD2DRx.sctp ↗.fastRecoverySupported

bool

true

ueD2DRx.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

ueD2DRx.sctp ↗.ccModule

int

0

RFC4960=0

ueD2DRx.sctp ↗.osbWithHeader

bool

false

ueD2DRx.sctp ↗.RTXMethod

int

0

0=Once after 3 Sacks; 1=once per RTT; 2=Switch off Fast Retransmit; 3=Always after 3 Sacks

ueD2DRx.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

ueD2DRx.sctp ↗.arwnd

int

65535

ueD2DRx.sctp ↗.swsLimit

int

3000

Limit for SWS

ueD2DRx.sctp ↗.udpEncapsEnabled

bool

false

ueD2DRx.sctp ↗.natFriendly

bool

false

ueD2DRx.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

ueD2DRx.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

ueD2DRx.sctp ↗.tellArwnd

bool

false

For flow control

ueD2DRx.sctp ↗.messageAcceptLimit

int

0

For flow control

ueD2DRx.sctp ↗.fairStart

double

0s

ueD2DRx.sctp ↗.fairStop

double

0s

ueD2DRx.sctp ↗.streamsToPaths

string

“”

ueD2DRx.sctp ↗.startEndToEndDelay

int

0

ueD2DRx.sctp ↗.stopEndToEndDelay

int

10

ueD2DRx.sctp ↗.throughputInterval

double

1

ueD2DRx.sctp ↗.auth

bool

false

ueD2DRx.sctp ↗.chunks

string

“”

ueD2DRx.sctp ↗.padding

bool

false

ueD2DRx.sctp ↗.addIP

bool

false

ueD2DRx.sctp ↗.addTime

double

0s

ueD2DRx.sctp ↗.addAddress

string

“”

ueD2DRx.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

ueD2DRx.sctp ↗.packetDrop

bool

false

ueD2DRx.sctp ↗.sackNow

bool

false

ueD2DRx.sctp ↗.highSpeedCC

bool

false

ueD2DRx.sctp ↗.checkSackSeqNumber

bool

false

ueD2DRx.sctp ↗.nrSack

bool

false

ueD2DRx.sctp ↗.disableReneging

bool

false

ueD2DRx.sctp ↗.gapReportLimit

int

100000000

ueD2DRx.sctp ↗.gapListOptimizationVariant

string

“none”

ueD2DRx.sctp ↗.smartOverfullSACKHandling

bool

false

ueD2DRx.sctp ↗.allowQoSTracking

bool

false

ueD2DRx.sctp ↗.qosTrackingInterval

double

1.0s

ueD2DRx.sctp ↗.cmtSendAllVariant

string

“normal”

ueD2DRx.sctp ↗.cmtRetransmissionVariant

string

“normal”

ueD2DRx.sctp ↗.cmtCUCVariant

string

“normal”

ueD2DRx.sctp ↗.cmtBufferSplitVariant

string

“none”

ueD2DRx.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

ueD2DRx.sctp ↗.cmtUseSFR

bool

true

ueD2DRx.sctp ↗.cmtUseDAC

bool

true

ueD2DRx.sctp ↗.cmtUseFRC

bool

true

ueD2DRx.sctp ↗.cmtSmartT3Reset

bool

true

ueD2DRx.sctp ↗.cmtSmartFastRTX

bool

true

ueD2DRx.sctp ↗.cmtSmartReneging

bool

false

ueD2DRx.sctp ↗.cmtSlowPathRTTUpdate

bool

false

ueD2DRx.sctp ↗.cmtChunkReschedulingVariant

string

“none”

ueD2DRx.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

ueD2DRx.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

ueD2DRx.sctp ↗.movedChunkFastRTXFactor

double

2.0

ueD2DRx.sctp ↗.cmtSackPath

string

“standard”

ueD2DRx.sctp ↗.strictCwndBooking

bool

false

ueD2DRx.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

ueD2DRx.sctp ↗.cmtCCPathGroups

string

“”

ueD2DRx.sctp ↗.rpPathBlocking

bool

false

ueD2DRx.sctp ↗.rpScaleBlockingTimeout

bool

false

ueD2DRx.sctp ↗.rpMinCwnd

int

1

ueD2DRx.quic ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.quic ↗.routingTableModule

string

Set by StandardHost.

ueD2DRx.quic ↗.sendZeroRttTokenAsServer

bool

false

ueD2DRx.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

ueD2DRx.quic ↗.accurateIncreaseInNewRenoCongestionAvoidance

bool

true

For NewReno in Congestion Avoidance, if true, increases cwnd after cwnd-acked bytes; if false, increases cwnd on every acked packet by acked_bytes/cwnd.

ueD2DRx.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

ueD2DRx.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

ueD2DRx.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

ueD2DRx.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

ueD2DRx.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

ueD2DRx.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

ueD2DRx.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

ueD2DRx.quic ↗.sendMaxDataFramesImmediately

bool

false

If true, a MAX_(STREAM)_DATA frame is sent immediately, after generation. Otherwise, sending the frame is delayed until the sending process starts due to another event.

ueD2DRx.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

ueD2DRx.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

ueD2DRx.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

ueD2DRx.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

ueD2DRx.quic ↗.maxPmtu

int

65535B

With useDplpmtud, it is used as upper limit for the PMTU search. Without useDplpmtud, the PMTU is set to the minimum of the MTU of the outgoing interface and this value.

ueD2DRx.quic ↗.dplpmtudMinPmtu

int

0

Specifies the minimum PMTU to use (if 0, it uses 1200 B for IPv4 or 1280 B for IPv6 as minimum PMTU).

ueD2DRx.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

ueD2DRx.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

ueD2DRx.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

ueD2DRx.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

ueD2DRx.quic ↗.useCwndForParallelProbes

int

0

If 0, no parallel probe packets; if 1, uses the availbale cwnd to send additional probe packets and if 2 prefers to send probe packets over other packets.

ueD2DRx.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

ueD2DRx.quic ↗.dplpmtudUsePmtuValidator

bool

true

If true, activates the PMTU Validator that trys to detect when the current PMTU estimation is larger than the actual PMTU.

ueD2DRx.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

ueD2DRx.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

ueD2DRx.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

ueD2DRx.quic ↗.pmtuValidatorInvalidOnPersistentCongestion

int

1

If 0, disabled. If 1, the PMTU validator uses persistent congeation as signal for a decreased PMTU. If 2, only two consecutive persisten congestions used as signal. If 3, …

ueD2DRx.quic ↗.reducePacketTimeThreshold

double

0s

Specifies after which time with no acks, packets with reduced size are sent. If zero, packet size reduction is disabled. If negative, reducePacketPtoFactorThreshold is used instead.

ueD2DRx.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

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.cellularNic.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.cellularNic.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

ueD2DRx.cellularNic.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

ueD2DRx.cellularNic.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

ueD2DRx.cellularNic.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

ueD2DRx.cellularNic.pcapRecorder ↗.fileFormat

string

“pcapng”

ueD2DRx.cellularNic.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

ueD2DRx.cellularNic.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.cellularNic.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

ueD2DRx.cellularNic.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

ueD2DRx.cellularNic.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

ueD2DRx.cellularNic.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

ueD2DRx.cellularNic.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

ueD2DRx.cellularNic.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

ueD2DRx.cellularNic.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

ueD2DRx.cellularNic.handoverPacketHolder.sessionType

string

The type of the UE’s session (see LteUe): the IP types parse the uplink datagram’s header for the modules after this one, the others carry the payload as is

ueD2DRx.cellularNic.ip2nic.binderModule

string

“binder”

ueD2DRx.cellularNic.ip2nic.connectionControlModule

string

“^.rrc.connectionControl”

The node’s control-plane entry point, asked for a bearer on a lookup miss

ueD2DRx.cellularNic.ip2nic.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB)

ueD2DRx.cellularNic.ip2nic.hasSdap

bool

false

When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification

ueD2DRx.cellularNic.ip2nic.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe), which the payload the NIC delivers up is of; set by the NIC

ueD2DRx.cellularNic.ip2nic.establishBearersOnDemand

bool

true

When false, a packet that finds no established bearer raises an error instead of establishing one (static bearers are established up front; see the staticDrbs parameter of BearerConfigurator)

ueD2DRx.cellularNic.ip2nic.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

ueD2DRx.cellularNic.rrc.registration.interfaceTableModule

string

ueD2DRx.cellularNic.rrc.registration.interfaceName

string

“cellular”

ueD2DRx.cellularNic.rrc.registration.routingTableModule

string

ueD2DRx.cellularNic.rrc.registration.binderModule

string

“binder”

ueD2DRx.cellularNic.rrc.registration.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), told about a multicast group join

ueD2DRx.cellularNic.rrc.registration.sessionType

string

“”

UE only: the type of the UE’s session (see LteUe): a UE created during the run gets an IPv4 default route through the NIC only on an IP session, and the NIC of an Ethernet session is an Ethernet port; set by the NIC

ueD2DRx.cellularNic.rrc.bearerManagement.binderModule

string

“binder”

To reach a peer’s BearerManagement on RLF

ueD2DRx.cellularNic.rrc.bearerManagement.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), which a torn-down bearer’s DRB identity goes back through

ueD2DRx.cellularNic.rrc.bearerManagement.t311

double

0s

RRC re-establishment cell-selection timer (0 => release-to-IDLE)

ueD2DRx.cellularNic.rrc.bearerManagement.t301

double

0.1s

RRC re-establishment (request -> complete) timer

ueD2DRx.cellularNic.rrc.bearerManagement.headerCompressedSize

int

-1B

Removed, an error if set: header compression is configured per bearer (the rohc field of BearerConfigurator’s bearer definitions)

ueD2DRx.cellularNic.rrc.bearerManagement.pdcpEntityModuleType

string

“simu5g.stack.pdcp.LtePdcpEntity”

PDCP entity types: the full PDCP entity is a compound (PdcpEntityBase, TX+RX sides plus the leg split/join stage of a multi-leg bearer); the instantiable types are its subclasses (LtePdcpEntity, NrPdcpEntity). At a DC secondary a bearer’s PDCP lives at the master, so the secondary installs an PdcpRelayEntity (tunnels PDUs to/from the master) in its place.

ueD2DRx.cellularNic.rrc.bearerManagement.pdcpRelayEntityModuleType

string

“simu5g.stack.pdcp.PdcpRelayEntity”

ueD2DRx.cellularNic.rrc.bearerManagement.dualConnectivityEnabled

bool

false

Set by the NIC; two-leg (split-capable) bearers

ueD2DRx.cellularNic.rrc.bearerManagement.rlcTmEntityModuleType

string

“simu5g.stack.rlc.RlcTmEntity”

RLC entity types (compound modules): lteRlc* = LTE-FI bearers (TS 36.322), nrRlc* = NR bearers (SI/SO wire format, TS 38.322)

ueD2DRx.cellularNic.rrc.bearerManagement.lteRlcUmEntityModuleType

string

“simu5g.stack.rlc.LteRlcUmEntity”

ueD2DRx.cellularNic.rrc.bearerManagement.lteRlcAmEntityModuleType

string

“simu5g.stack.rlc.LteRlcAmEntity”

ueD2DRx.cellularNic.rrc.bearerManagement.nrRlcUmEntityModuleType

string

“simu5g.stack.rlc.NrRlcUmEntity”

ueD2DRx.cellularNic.rrc.bearerManagement.nrRlcAmEntityModuleType

string

“simu5g.stack.rlc.NrRlcAmEntity”

ueD2DRx.cellularNic.rrc.bearerManagement.registrationModule

string

“^.registration”

Module references for accessing other stack layers

ueD2DRx.cellularNic.rrc.bearerManagement.drbTableModule

string

“^.drbTable”

ueD2DRx.cellularNic.rrc.bearerManagement.ip2nicModule

string

“^.^.ip2nic”

ueD2DRx.cellularNic.rrc.bearerManagement.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

Attachment-ledger push target (UE only)

ueD2DRx.cellularNic.rrc.bearerManagement.pdcpMuxModule

string

“^.^.pdcpMux”

ueD2DRx.cellularNic.rrc.bearerManagement.pdcpDcMuxModule

string

“^.^.pdcpDcMux”

ueD2DRx.cellularNic.rrc.bearerManagement.d2dModeControllerModule

string

“^.d2dModeController”

ueD2DRx.cellularNic.rrc.bearerManagement.rlcMuxModule

string

“^.^.rlcMux”

ueD2DRx.cellularNic.rrc.bearerManagement.nrRlcMuxModule

string

“^.^.nrRlcMux”

ueD2DRx.cellularNic.rrc.bearerManagement.macModule

string

“^.^.mac”

ueD2DRx.cellularNic.rrc.bearerManagement.nrMacModule

string

“^.^.nrMac”

ueD2DRx.cellularNic.rrc.bearerManagement.sdapModule

string

“^.^.sdap”

Configuration push target; unresolvable (no SDAP on the NIC) = no pushes

ueD2DRx.cellularNic.rrc.bearerManagement.qosFlowClassifierModule

string

“^.^.qosFlowClassifier”

Uplink QFI rule push target; unresolvable (not a UE stack with SDAP) = no pushes

ueD2DRx.cellularNic.rrc.connectionControl.binderModule

string

“binder”

ueD2DRx.cellularNic.rrc.connectionControl.bearerConfiguratorModule

string

“bearerConfigurator”

ueD2DRx.cellularNic.rrc.connectionControl.coreControlModule

string

“coreControl”

ueD2DRx.cellularNic.rrc.connectionControl.bearerManagementModule

string

“^.bearerManagement”

ueD2DRx.cellularNic.rrc.connectionControl.macModule

string

“^.^.mac”

ueD2DRx.cellularNic.rrc.connectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

ueD2DRx.cellularNic.rrc.connectionControl.gtpUserModule

string

“^.^.^.relay.gtpUser”

ueD2DRx.cellularNic.rrc.connectionControl.gtpUserX2Module

string

“^.^.^.gtpUserX2”

ueD2DRx.cellularNic.rrc.connectionControl.macNodeId

int

The base station’s node id; the NIC sets it from the node’s

ueD2DRx.cellularNic.rrc.connectionControl.gateway

string

“”

The node’s core network gateway, as its gateway parameter names it; ignored at a node not connected to a core network (a secondary node)

ueD2DRx.cellularNic.rrc.nrConnectionControl.dynamicCellAssociation

bool

false

ueD2DRx.cellularNic.rrc.nrConnectionControl.enableHandover

bool

false

Allows handovers in the UE

ueD2DRx.cellularNic.rrc.nrConnectionControl.isNr

bool

Whether this instance is associated with the NR or the LTE stack

ueD2DRx.cellularNic.rrc.nrConnectionControl.macNodeId

int

MacNodeId of the stack leg this controller belongs to (set by the NIC)

ueD2DRx.cellularNic.rrc.nrConnectionControl.sessionType

string

The type of the session the UE requests at connection setup (see LteUe), set by the NIC

ueD2DRx.cellularNic.rrc.nrConnectionControl.handoverLatency

double

50ms

Handover duration

ueD2DRx.cellularNic.rrc.nrConnectionControl.handoverDetachmentTime

double

handoverLatency > 0s ? handoverLatency/2 : 25ms

ueD2DRx.cellularNic.rrc.nrConnectionControl.handoverAttachmentTime

double

handoverLatency > 0s ? handoverLatency-handoverDetachmentTime : handoverDetachmentTime

ueD2DRx.cellularNic.rrc.nrConnectionControl.minRssiDefault

bool

true

Whether minRssi is taken from PhyPisaData instead of the minRssi parameter

ueD2DRx.cellularNic.rrc.nrConnectionControl.minRssi

double

-99.0dB

Configurable minimum threshold RSSI for attaching to an eNB (meaningful only if minRssiDefault==false)

ueD2DRx.cellularNic.rrc.nrConnectionControl.hysteresisFactor

double

10

ueD2DRx.cellularNic.rrc.nrConnectionControl.binderModule

string

“binder”

ueD2DRx.cellularNic.rrc.nrConnectionControl.macModule

string

“^.^.mac”

ueD2DRx.cellularNic.rrc.nrConnectionControl.bearerManagementModule

string

“^.bearerManagement”

ueD2DRx.cellularNic.rrc.nrConnectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

ueD2DRx.cellularNic.rrc.nrConnectionControl.feedbackGeneratorModule

string

“^.^.dlFbGen”

TODO or “^.^.nrDlFbGen”

ueD2DRx.cellularNic.rrc.nrConnectionControl.otherConnectionControlModule

string

“”

ueD2DRx.cellularNic.rrc.nrConnectionControl.hasCollector

bool

false

True when node has a collector module (ueCollector/nrUeCollector) for this PHY module

ueD2DRx.cellularNic.rrc.d2dModeSelection.modeSelectionPeriod

double

1s

ueD2DRx.cellularNic.rrc.d2dModeSelection.binderModule

string

“binder”

ueD2DRx.cellularNic.rrc.d2dModeSelection.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

ueD2DRx.cellularNic.rrc.d2dModeSelection.macModule

string

“^.^.mac”

ueD2DRx.cellularNic.rrc.d2dModeSelection.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point, which knows the UEs handing over

ueD2DRx.cellularNic.rlcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

ueD2DRx.cellularNic.phy.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

ueD2DRx.cellularNic.phy.macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

ueD2DRx.cellularNic.phy.ueTxPower

double

26dBm

ueD2DRx.cellularNic.phy.eNodeBTxPower

double

46dBm

ueD2DRx.cellularNic.phy.microTxPower

double

30dBm

ueD2DRx.cellularNic.phy.txDirection

string

“OMNI”

ueD2DRx.cellularNic.phy.txAngle

double

0deg

ueD2DRx.cellularNic.phy.binderModule

string

“binder”

ueD2DRx.cellularNic.phy.channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

ueD2DRx.cellularNic.phy.connectionControlModule

string

“^.rrc.connectionControl”

ueD2DRx.cellularNic.packetFlowObserver.macModule

string

“^.mac”

ueD2DRx.cellularNic.packetFlowObserver.pdcpModule

string

“^”

ueD2DRx.cellularNic.packetFlowObserver.rlcModule

string

“^”

ueD2DRx.cellularNic.packetFlowObserver.isNrObserver

bool

false

ueD2DRx.cellularNic.packetFlowObserver.pfmType

string

“PacketFlowObserverUe”

ueD2DRx.cellularNic.dlFbGen.isNr

bool

false

True for the NR leg (set by NrNicUe on the nrDlFbGen submodule)

ueD2DRx.cellularNic.dlFbGen.macNodeId

int

MacNodeId of the stack leg this generator belongs to (set by the NIC)

ueD2DRx.cellularNic.dlFbGen.feedbackType

string

“ALLBANDS”

Can be ALLBANDS, PREFERRED, WIDEBAND

ueD2DRx.cellularNic.dlFbGen.rbAllocationType

string

“localized”

Resource allocation type (“distributed” or “localized”)

ueD2DRx.cellularNic.dlFbGen.fbPeriod

int

6tti

Period for Periodic feedback in TTI

ueD2DRx.cellularNic.dlFbGen.fbDelay

int

1tti

Time interval between sensing and transmission in TTI

ueD2DRx.cellularNic.dlFbGen.usePeriodic

bool

true

Whether periodic feedback is used in addition to aperiodic feedback

ueD2DRx.cellularNic.dlFbGen.initialTxMode

string

“SINGLE_ANTENNA_PORT0”

Initial txMode (see LteCommon.h)

ueD2DRx.cellularNic.dlFbGen.binderModule

string

“binder”

ueD2DRx.cellularNic.dlFbGen.phyModule

string

“^.phy”

ueD2DRx.macTable ↗.displayStringTextFormat

string

“addr: %a\nvlan: %v”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.macTable ↗.agingTime

double

120s

ueD2DRx.macTable ↗.forwardingTable

object

[]

ueD2DRx.macTable ↗.forwardingTableFile

string

“”

ueD2DRx.macTable ↗.interfaceTableModule

string

ueD2DRx.unstructuredApp.source ↗.displayStringTextFormat

string

“created %p pk (%l)”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.unstructuredApp.source ↗.packetNameFormat

string

“%a-%c”

See directives in module documentation

ueD2DRx.unstructuredApp.source ↗.packetRepresentation

string

“byteCount”

Determines the chunk of the packet data

ueD2DRx.unstructuredApp.source ↗.packetProtocol

string

“unknown”

ueD2DRx.unstructuredApp.source ↗.packetLength

int

ueD2DRx.unstructuredApp.source ↗.packetData

int

-1

ueD2DRx.unstructuredApp.source ↗.attachCreationTimeTag

bool

true

ueD2DRx.unstructuredApp.source ↗.attachIdentityTag

bool

true

ueD2DRx.unstructuredApp.source ↗.attachDirectionTag

bool

true

ueD2DRx.unstructuredApp.source ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

ueD2DRx.unstructuredApp.source ↗.initialProductionOffset

double

-1s

Initial duration before which packets are not produced. When negative, then produce packet in initialize()

ueD2DRx.unstructuredApp.source ↗.productionInterval

double

Elapsed time between subsequent packets pushed to the connected packet consumer

ueD2DRx.unstructuredApp.source ↗.scheduleForAbsoluteTime

bool

true

When a clock is used, “relative” means that setting the clock will not affect the simulation time of the event

ueD2DRx.unstructuredApp.sink ↗.displayStringTextFormat

string

“received %p pk (%l)”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

ueD2DRx.unstructuredApp.sink ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

ueD2DRx.unstructuredApp.sink ↗.initialConsumptionOffset

double

0s

Initial duration before which packets are not consumed

ueD2DRx.unstructuredApp.sink ↗.consumptionInterval

double

0s

Elapsed time between subsequent packets allowed to be pushed by the connected packet producer, 0 means any number of packets can be pushed at the same simulation time

ueD2DRx.unstructuredApp.sink ↗.scheduleForAbsoluteTime

bool

true

When a clock is used, “relative” means that setting the clock will not affect the simulation time of the event

ueD2DRx.unstructuredApp.io.interfaceTableModule

string

Relative module path of the interface table

ueD2DRx.unstructuredApp.io.interface

string

“cellular”

The name of the cellular NIC’s interface

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