Highway

Package: simu5g.simulations.lte.cars

network Highway

Two eNodeB cells on a shared EPC PgwStandard, joined by an X2 link, with a router and a server behind the core. The cars are LteCar nodes created at run time by the VeinsInetManager from a SUMO road traffic simulation, so the car[] vector is empty in the topology itself.

Highwayserver.pppg++ <--> Eth10G <--> router.pppg++router.pppg++ <--> Eth10G <--> pgw.dnPppgpgw.pppg++ <--> Eth10G <--> eNodeB1.ppppgw.pppg++ <--> Eth10G <--> eNodeB2.pppeNodeB1.x2++ <--> Eth10G <--> eNodeB2.x2++routingRecorder: 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"); }configuratorveinsManager: VeinsInetManager Source: veinsManager: VeinsInetManager { @display("p=50,325;is=s"); }veinsManagerchannelControl: 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"); }channelControlbinder: 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=660,136;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=561,135;i=device/smallrouter"); }routerpgw: simu5g.nodes.PgwStandard Implements a simplified EPC PDN Gateway (P-GW) of a 4G LTE network. Source: pgw: PgwStandard { @display("p=462,136;is=l"); }pgweNodeB1: simu5g.nodes.eNodeB Models an evolved Node B (eNB) of a 4G LTE network. Source: eNodeB1: eNodeB { @display("p=156,136;is=vl"); }eNodeB1eNodeB2: simu5g.nodes.eNodeB Models an evolved Node B (eNB) of a 4G LTE network. Source: eNodeB2: eNodeB { @display("p=391,313;is=vl"); }eNodeB2car[0]: simu5g.nodes.LteCar Defines a LteCar node as a LTE User Equipment (UE) with vehicular-like mobility. Source: car[0]: LteCar;car[0]

Usage diagram

Parameters

Name

Type

Default value

Description

playgroundSizeX

double

X size of the area the nodes are in (in meters)

playgroundSizeY

double

Y size of the area the nodes are in (in meters)

playgroundSizeZ

double

Z size of the area the nodes are in (in meters)

Properties

Name

Value

Description

display

bgb=732,483

Unassigned submodule parameters

Name

Type

Default value

Description

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)

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)

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

pgw.status ↗.displayStringTextFormat

string

“{stateStr}”

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

pgw.status ↗.initialStatus

string

“UP”

Initial status of the network node

pgw.environment ↗.displayStringTextFormat

string

“”

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

pgw.environment ↗.initStage

int

0

Initialization stage for the setup command

pgw.environment ↗.globalNamespace

bool

false

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

pgw.environment ↗.namespace

string

“”

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

pgw.environment ↗.setupCommand

string

“”

A host OS system command

pgw.environment ↗.teardownCommand

string

“”

A host OS system command

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

pgw.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.pcapRecorder ↗.pcapFile

string

“”

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

pgw.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.pcapRecorder ↗.moduleNamePatterns

string

“wlan[*] eth[*] ppp[*]”

Space-separated list of sibling module names to listen on

pgw.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.pcapRecorder ↗.helpers

string

“”

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

pgw.pcapRecorder ↗.alwaysFlush

bool

false

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

pgw.interfaceTable ↗.displayStringTextFormat

string

“{numInterfaces} interfaces”

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

pgw.interfaceTable ↗.displayAddresses

bool

false

Whether to display IP addresses on links

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

pgw.cb ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.cb ↗.forwardServiceRegistration

bool

true

pgw.cb ↗.forwardProtocolRegistration

bool

true

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

pgw.cb ↗.serviceMapping

object

{}

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

pgw.cb ↗.protocolMapping

object

{}

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

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

pgw.bl ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.bl ↗.forwardServiceRegistration

bool

true

pgw.bl ↗.forwardProtocolRegistration

bool

true

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

pgw.bl ↗.serviceMapping

object

{}

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

pgw.bl ↗.protocolMapping

object

{}

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

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

pgw.ethernet ↗.registerProtocol

bool

false

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

pgw.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ethernet ↗.fcsMode

string

“declared”

pgw.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

pgw.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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

pgw.li ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.li ↗.forwardServiceRegistration

bool

true

pgw.li ↗.forwardProtocolRegistration

bool

true

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

pgw.li ↗.serviceMapping

object

{}

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

pgw.li ↗.protocolMapping

object

{}

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

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

pgw.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

pgw.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.lo ↗.pcapRecorder ↗.helpers

string

“”

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

pgw.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

pgw.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.lo ↗.lo ↗.mtu

int

4470B

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

pgw.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

pgw.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.wlan ↗.pcapRecorder ↗.helpers

string

“”

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

pgw.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

pgw.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

pgw.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.wlan ↗.agent ↗.mibModule

string

pgw.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

pgw.wlan ↗.agent ↗.channelsToScan

string

“”

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

pgw.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

pgw.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

pgw.wlan ↗.agent ↗.maxChannelTime

double

300ms

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

pgw.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

pgw.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

pgw.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

pgw.wlan ↗.agent ↗.defaultSsid

string

“”

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

pgw.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

pgw.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

pgw.wlan ↗.mgmt ↗.mibModule

string

pgw.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

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

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

int

100

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

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

int

-1b

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

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

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

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

string

“”

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

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

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

string

“^.pendingQueue”

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

string

“^.^.originatorMacDataService”

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

string

“^.^.ackHandler”

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

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

bool

true

Assume that the channel was busy before the simulation started

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

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

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

int

1500B

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

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

pgw.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

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

pgw.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

pgw.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

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

pgw.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

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

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

pgw.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

pgw.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

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

pgw.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

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

pgw.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

pgw.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

pgw.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

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

pgw.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

pgw.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

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

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

int

100

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

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

int

-1b

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

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

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

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

string

“”

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

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

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

string

“^.pendingQueue”

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

string

“^.^.^.originatorMacDataService”

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

string

“^.ackHandler”

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

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

bool

true

Assume that the channel was busy before the simulation started

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

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

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

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

double

-1s

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

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

int

7

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

int

4

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

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

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

int

7

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

int

4

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

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

pgw.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)

pgw.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).

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

int

4065

-1 means infinity

pgw.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).

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

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

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

int

1500B

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

pgw.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

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

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

pgw.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

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

pgw.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

pgw.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

pgw.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

pgw.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

pgw.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

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

pgw.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

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

pgw.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

pgw.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

pgw.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

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

pgw.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

pgw.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

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

pgw.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

pgw.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

pgw.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

pgw.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

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

pgw.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

pgw.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

pgw.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

pgw.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

pgw.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

pgw.wlan ↗.mac ↗.ds ↗.mibModule

string

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

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

pgw.wlan ↗.mac ↗.tx ↗.rxModule

string

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

pgw.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

pgw.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.ppp ↗.pcapRecorder ↗.helpers

string

“”

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

pgw.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

pgw.ppp ↗.queue ↗.packetCapacity

int

10000

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

pgw.ppp ↗.queue ↗.dataCapacity

int

-1b

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

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

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

pgw.ppp ↗.queue ↗.bufferModule

string

“”

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

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

pgw.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ppp ↗.ppp ↗.sendRawBytes

bool

false

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

pgw.ppp ↗.ppp ↗.mtu

int

4470B

pgw.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

pgw.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

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

pgw.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.eth ↗.pcapRecorder ↗.pcapFile

string

“”

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

pgw.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.eth ↗.pcapRecorder ↗.helpers

string

“”

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

pgw.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

pgw.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.tun ↗.pcapRecorder ↗.pcapFile

string

“”

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

pgw.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.tun ↗.pcapRecorder ↗.helpers

string

“”

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

pgw.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

pgw.tun ↗.tun ↗.displayStringTextFormat

string

“”

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

pgw.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.tun ↗.tun ↗.mtu

int

1500B

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

pgw.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.virt ↗.pcapRecorder ↗.pcapFile

string

“”

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

pgw.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.virt ↗.pcapRecorder ↗.helpers

string

“”

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

pgw.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

pgw.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

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

pgw.virt ↗.tunnel ↗.interfaceTableModule

string

pgw.virt ↗.tunnel ↗.realInterface

string

pgw.virt ↗.tunnel ↗.protocol

string

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

pgw.virt ↗.tunnel ↗.address

string

“copy”

pgw.virt ↗.tunnel ↗.vlanId

int

-1

pgw.virt ↗.tunnel ↗.steal

bool

vlanId != -1

pgw.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

pgw.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv4 ↗.configurator ↗.routingTableModule

string

pgw.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

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

pgw.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

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

pgw.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

pgw.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

pgw.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

pgw.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

pgw.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

pgw.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

pgw.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

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

pgw.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

pgw.ipv4 ↗.natTable ↗.config

xml

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

XML configuration parameters for network address translation

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

pgw.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

pgw.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

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

pgw.ipv4 ↗.up ↗.serviceMapping

object

{}

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

pgw.ipv4 ↗.up ↗.protocolMapping

object

{}

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

pgw.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

pgw.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv4 ↗.igmp ↗.routingTableModule

string

pgw.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

pgw.ipv4 ↗.igmp ↗.enabled

bool

true

pgw.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

pgw.ipv4 ↗.igmp ↗.queryInterval

double

125s

pgw.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

pgw.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

pgw.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

pgw.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

pgw.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

pgw.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

pgw.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

pgw.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

pgw.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

pgw.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv4 ↗.icmp ↗.routingTableModule

string

pgw.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

pgw.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

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

pgw.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

pgw.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

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

pgw.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

pgw.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

pgw.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

pgw.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv4 ↗.ip ↗.routingTableModule

string

pgw.ipv4 ↗.ip ↗.arpModule

string

pgw.ipv4 ↗.ip ↗.icmpModule

string

pgw.ipv4 ↗.ip ↗.checksumMode

string

“declared”

pgw.ipv4 ↗.ip ↗.timeToLive

int

32

pgw.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

pgw.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

pgw.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

pgw.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

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

pgw.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

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

pgw.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

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

pgw.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

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

pgw.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv4 ↗.arp ↗.routingTableModule

string

pgw.ipv4 ↗.arp ↗.retryTimeout

double

1s

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

pgw.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

pgw.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

pgw.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

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

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

pgw.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

pgw.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

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

pgw.ipv4 ↗.ipsec ↗.interfaceTableModule

string

pgw.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

pgw.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

pgw.ipv4 ↗.ipsec ↗.spdConfig

xml

pgw.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

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

pgw.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

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

pgw.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

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

pgw.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

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

pgw.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

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

pgw.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

pgw.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

pgw.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

pgw.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

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

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

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

pgw.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

pgw.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

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

pgw.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

pgw.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

pgw.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.configurator ↗.interfaceTableModule

string

pgw.ipv6 ↗.configurator ↗.routingTableModule

string

pgw.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

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

pgw.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

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

pgw.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

pgw.ipv6 ↗.routingTable ↗.forwarding

bool

false

pgw.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

pgw.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

pgw.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

pgw.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

pgw.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

pgw.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

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

pgw.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

pgw.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

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

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

pgw.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

pgw.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

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

pgw.ipv6 ↗.up ↗.serviceMapping

object

{}

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

pgw.ipv6 ↗.up ↗.protocolMapping

object

{}

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

pgw.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

pgw.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

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

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

pgw.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

pgw.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

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

pgw.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

pgw.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

pgw.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

pgw.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

pgw.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

pgw.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

pgw.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

pgw.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

pgw.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

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

pgw.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

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

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

pgw.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)

pgw.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

pgw.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

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

pgw.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

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

pgw.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

pgw.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv6 ↗.ipv6 ↗.routingTableModule

string

pgw.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

pgw.ipv6 ↗.ipv6 ↗.icmpv6Module

string

pgw.ipv6 ↗.ipv6 ↗.procDelay

double

0s

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

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

pgw.ipv6 ↗.ipsec ↗.interfaceTableModule

string

pgw.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

pgw.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

pgw.ipv6 ↗.ipsec ↗.spdConfig

xml

pgw.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

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

pgw.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

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

pgw.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

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

pgw.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

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

pgw.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

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

pgw.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

pgw.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

pgw.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

pgw.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

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

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

pgw.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

pgw.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

pgw.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

pgw.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

pgw.ipv6 ↗.mipv6 ↗.isMobileNode

bool

pgw.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

pgw.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

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

pgw.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

pgw.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

pgw.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

pgw.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

pgw.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

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

pgw.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)

pgw.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

pgw.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

pgw.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

pgw.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

pgw.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

pgw.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

pgw.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

pgw.ipv6 ↗.mld ↗.enabled

bool

true

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

pgw.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

pgw.ipv6 ↗.mld ↗.robustnessVariable

int

2

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

pgw.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

pgw.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

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

pgw.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

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

pgw.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

pgw.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

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

pgw.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

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

pgw.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

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

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

pgw.nl ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.nl ↗.forwardServiceRegistration

bool

true

pgw.nl ↗.forwardProtocolRegistration

bool

true

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

pgw.nl ↗.serviceMapping

object

{}

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

pgw.nl ↗.protocolMapping

object

{}

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

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

pgw.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.udp ↗.checksumMode

string

“declared”

pgw.udp ↗.defaultMulticastLoop

bool

true

pgw.tcp ↗.displayStringTextFormat

string

“”

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

pgw.tcp ↗.checksumMode

string

“declared”

pgw.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)

pgw.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

pgw.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

pgw.tcp ↗.limitedTransmitEnabled

bool

false

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

pgw.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

pgw.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)

pgw.tcp ↗.windowScalingSupport

bool

false

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

pgw.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)

pgw.tcp ↗.timestampSupport

bool

false

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

pgw.tcp ↗.mss

int

536

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

pgw.tcp ↗.msl

int

120s

Maximum Segment Lifetime

pgw.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

pgw.tcp ↗.dupthresh

int

3

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

pgw.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…

pgw.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

pgw.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

pgw.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

pgw.tcp ↗.dctcpGamma

double

0.0625

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

pgw.tcp ↗.pmtudEnabled

bool

false

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

pgw.tcp ↗.pmtudTimeout

double

600s

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

pgw.sctp ↗.displayStringTextFormat

string

“”

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

pgw.sctp ↗.interfaceTableModule

string

pgw.sctp ↗.routingTableModule

string

pgw.sctp ↗.checksumMode

string

“declared”

pgw.sctp ↗.numGapReports

int

3

pgw.sctp ↗.rtoInitial

double

3s

pgw.sctp ↗.rtoMin

double

1s

pgw.sctp ↗.rtoMax

double

60s

pgw.sctp ↗.rtoAlpha

double

0.125

pgw.sctp ↗.rtoBeta

double

0.250

pgw.sctp ↗.maxBurst

int

4

pgw.sctp ↗.maxBurstVariant

string

“maxBurst”

pgw.sctp ↗.initialWindow

int

0

pgw.sctp ↗.assocMaxRetrans

int

10

pgw.sctp ↗.pathMaxRetrans

int

5

pgw.sctp ↗.maxInitRetrans

int

8

pgw.sctp ↗.sackPeriod

double

200ms

pgw.sctp ↗.sackFrequency

int

2

pgw.sctp ↗.reactivatePrimaryPath

bool

false

pgw.sctp ↗.sendQueueLimit

int

0

pgw.sctp ↗.validCookieLifetime

double

10s

pgw.sctp ↗.enableHeartbeats

bool

true

pgw.sctp ↗.hbInterval

double

30s

pgw.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

pgw.sctp ↗.nagleEnabled

bool

true

pgw.sctp ↗.naglePoint

int

1468

pgw.sctp ↗.fragPoint

int

1452

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

pgw.sctp ↗.fastRecoverySupported

bool

true

pgw.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

pgw.sctp ↗.ccModule

int

0

RFC4960=0

pgw.sctp ↗.osbWithHeader

bool

false

pgw.sctp ↗.RTXMethod

int

0

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

pgw.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

pgw.sctp ↗.arwnd

int

65535

pgw.sctp ↗.swsLimit

int

3000

Limit for SWS

pgw.sctp ↗.udpEncapsEnabled

bool

false

pgw.sctp ↗.natFriendly

bool

false

pgw.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

pgw.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

pgw.sctp ↗.tellArwnd

bool

false

For flow control

pgw.sctp ↗.messageAcceptLimit

int

0

For flow control

pgw.sctp ↗.fairStart

double

0s

pgw.sctp ↗.fairStop

double

0s

pgw.sctp ↗.streamsToPaths

string

“”

pgw.sctp ↗.startEndToEndDelay

int

0

pgw.sctp ↗.stopEndToEndDelay

int

10

pgw.sctp ↗.throughputInterval

double

1

pgw.sctp ↗.auth

bool

false

pgw.sctp ↗.chunks

string

“”

pgw.sctp ↗.padding

bool

false

pgw.sctp ↗.addIP

bool

false

pgw.sctp ↗.addTime

double

0s

pgw.sctp ↗.addAddress

string

“”

pgw.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

pgw.sctp ↗.packetDrop

bool

false

pgw.sctp ↗.sackNow

bool

false

pgw.sctp ↗.highSpeedCC

bool

false

pgw.sctp ↗.checkSackSeqNumber

bool

false

pgw.sctp ↗.nrSack

bool

false

pgw.sctp ↗.disableReneging

bool

false

pgw.sctp ↗.gapReportLimit

int

100000000

pgw.sctp ↗.gapListOptimizationVariant

string

“none”

pgw.sctp ↗.smartOverfullSACKHandling

bool

false

pgw.sctp ↗.allowQoSTracking

bool

false

pgw.sctp ↗.qosTrackingInterval

double

1.0s

pgw.sctp ↗.cmtSendAllVariant

string

“normal”

pgw.sctp ↗.cmtRetransmissionVariant

string

“normal”

pgw.sctp ↗.cmtCUCVariant

string

“normal”

pgw.sctp ↗.cmtBufferSplitVariant

string

“none”

pgw.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

pgw.sctp ↗.cmtUseSFR

bool

true

pgw.sctp ↗.cmtUseDAC

bool

true

pgw.sctp ↗.cmtUseFRC

bool

true

pgw.sctp ↗.cmtSmartT3Reset

bool

true

pgw.sctp ↗.cmtSmartFastRTX

bool

true

pgw.sctp ↗.cmtSmartReneging

bool

false

pgw.sctp ↗.cmtSlowPathRTTUpdate

bool

false

pgw.sctp ↗.cmtChunkReschedulingVariant

string

“none”

pgw.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

pgw.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

pgw.sctp ↗.movedChunkFastRTXFactor

double

2.0

pgw.sctp ↗.cmtSackPath

string

“standard”

pgw.sctp ↗.strictCwndBooking

bool

false

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

pgw.sctp ↗.cmtCCPathGroups

string

“”

pgw.sctp ↗.rpPathBlocking

bool

false

pgw.sctp ↗.rpScaleBlockingTimeout

bool

false

pgw.sctp ↗.rpMinCwnd

int

1

pgw.quic ↗.displayStringTextFormat

string

“”

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

pgw.quic ↗.routingTableModule

string

Set by StandardHost.

pgw.quic ↗.sendZeroRttTokenAsServer

bool

false

pgw.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

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

pgw.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

pgw.quic ↗.sendQueueLowWaterRatio

double

.4

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

pgw.quic ↗.initialMaxData

int

15MB

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

pgw.quic ↗.initialMaxStreamData

int

6MB

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

pgw.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

pgw.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

pgw.quic ↗.roundConsumedDataValue

bool

false

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

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

pgw.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

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

pgw.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

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

pgw.quic ↗.useIBit

bool

false

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

pgw.quic ↗.useDplpmtud

bool

false

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

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

pgw.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).

pgw.quic ↗.dplpmtudMaxProbes

int

3

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

pgw.quic ↗.dplpmtudUsePtb

bool

true

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

pgw.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

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

pgw.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

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

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

pgw.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

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

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

pgw.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

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

pgw.quic ↗.pmtuValidatorTimeThreshold

double

-1s

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

pgw.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

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

pgw.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, …

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

pgw.quic ↗.reducePacketPtoFactorThreshold

int

3

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

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

pgw.tn ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.tn ↗.forwardServiceRegistration

bool

true

pgw.tn ↗.forwardProtocolRegistration

bool

true

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

pgw.tn ↗.serviceMapping

object

{}

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

pgw.tn ↗.protocolMapping

object

{}

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

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

pgw.at ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

pgw.at ↗.forwardServiceRegistration

bool

true

pgw.at ↗.forwardProtocolRegistration

bool

true

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

pgw.at ↗.serviceMapping

object

{}

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

pgw.at ↗.protocolMapping

object

{}

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

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

pgw.dnPpp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

pgw.dnPpp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

pgw.dnPpp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

pgw.dnPpp ↗.pcapRecorder ↗.pcapFile

string

“”

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

pgw.dnPpp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

pgw.dnPpp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

pgw.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).

pgw.dnPpp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

pgw.dnPpp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

pgw.dnPpp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

pgw.dnPpp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

pgw.dnPpp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

pgw.dnPpp ↗.pcapRecorder ↗.helpers

string

“”

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

pgw.dnPpp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

pgw.dnPpp ↗.queue ↗.packetCapacity

int

10000

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

pgw.dnPpp ↗.queue ↗.dataCapacity

int

-1b

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

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

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

pgw.dnPpp ↗.queue ↗.bufferModule

string

“”

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

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

pgw.dnPpp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

pgw.dnPpp ↗.ppp ↗.sendRawBytes

bool

false

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

pgw.dnPpp ↗.ppp ↗.mtu

int

4470B

pgw.dnPpp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

pgw.dnPpp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

pgw.relay.trafficFlowFilter.binderModule

string

“binder”

pgw.relay.trafficFlowFilter.fastForwarding

bool

true

pgw.relay.gtpUser.binderModule

string

“binder”

pgw.relay.gtpUser.localPort

int

31

pgw.relay.gtpUser.tunnelPeerPort

int

31

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

pgw.rd ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

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

pgw.nodeControl.binderModule

string

“binder”

pgw.nodeControl.gtpUserModule

string

“^.relay.gtpUser”

pgw.nodeControl.trafficFlowFilterModule

string

“^.relay.trafficFlowFilter”

pgw.nodeControl.ethernetBridgeModule

string

“^.ethBridge.sessionMux”

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

pgw.nodeControl.gateway

string

“”

A MEC host UPF’s core network gateway, the anchor UPF whose sessions it serves; empty at an anchor

pgw.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)

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

pgw.nodeControl.unstructuredServerPort

int

-1

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

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

pgw.ndResponder.binderModule

string

“binder”

pgw.ndResponder.linkLocalAddress

string

“fe80::1”

The router’s address on every session’s link

pgw.ndResponder.routerLifetime

double

9000s

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

pgw.ndResponder.curHopLimit

int

64

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

pgw.ndResponder.checksumMode

string

“declared”

eNodeB1.interfaceTable ↗.displayStringTextFormat

string

“{numInterfaces} interfaces”

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

eNodeB1.interfaceTable ↗.displayAddresses

bool

false

Whether to display IP addresses on links

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

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

eNodeB1.mobility ↗.coordinateSystemModule

string

“”

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

eNodeB1.mobility ↗.updateDisplayString

bool

true

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

eNodeB1.mobility ↗.constraintAreaMinX

double

-inf m

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

eNodeB1.mobility ↗.constraintAreaMinY

double

-inf m

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

eNodeB1.mobility ↗.constraintAreaMinZ

double

-inf m

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

eNodeB1.mobility ↗.constraintAreaMaxX

double

inf m

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

eNodeB1.mobility ↗.constraintAreaMaxY

double

inf m

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

eNodeB1.mobility ↗.constraintAreaMaxZ

double

inf m

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

eNodeB1.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

eNodeB1.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

eNodeB1.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

eNodeB1.mobility ↗.initialLatitude

double

nan deg

eNodeB1.mobility ↗.initialLongitude

double

nan deg

eNodeB1.mobility ↗.initialAltitude

double

0m

eNodeB1.mobility ↗.initialHeading

double

0deg

eNodeB1.mobility ↗.initialElevation

double

0deg

eNodeB1.mobility ↗.initialBank

double

0deg

eNodeB1.mobility ↗.initFromDisplayString

bool

true

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

eNodeB1.mobility ↗.updateFromDisplayString

bool

true

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

eNodeB1.cellInfo.constraintAreaMinX

double

-1m/0

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

eNodeB1.cellInfo.constraintAreaMinY

double

-1m/0

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

eNodeB1.cellInfo.constraintAreaMaxX

double

1m/0

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

eNodeB1.cellInfo.constraintAreaMaxY

double

1m/0

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

eNodeB1.cellInfo.beaconInterval

double

1s

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

eNodeB1.cellInfo.microCell

bool

false

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

eNodeB1.cellInfo.rbyDl

int

12

Number of sub-carriers per RB in DL

eNodeB1.cellInfo.rbyUl

int

12

Number of sub-carriers per RB in UL

eNodeB1.cellInfo.rbxDl

int

7

Number of OFDM symbols per slot in DL

eNodeB1.cellInfo.rbxUl

int

7

Number of OFDM symbols per slot in UL

eNodeB1.cellInfo.rbPilotDl

int

3

Number of pilot Resource Elements per RB in DL

eNodeB1.cellInfo.rbPilotUl

int

0

Number of pilot Resource Elements per RB in UL

eNodeB1.cellInfo.signalDl

int

1

Number of signaling symbols for each Resource Block in DL

eNodeB1.cellInfo.signalUl

int

1

Number of signaling symbols for each Resource Block in UL

eNodeB1.cellInfo.numPreferredBands

int

1

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

eNodeB1.cellInfo.binderModule

string

“binder”

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

eNodeB1.cellularNic.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB1.cellularNic.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB1.cellularNic.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB1.cellularNic.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB1.cellularNic.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB1.cellularNic.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB1.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).

eNodeB1.cellularNic.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB1.cellularNic.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB1.cellularNic.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB1.cellularNic.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB1.cellularNic.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB1.cellularNic.pcapRecorder ↗.helpers

string

“”

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

eNodeB1.cellularNic.pcapRecorder ↗.alwaysFlush

bool

false

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

eNodeB1.cellularNic.handoverPacketHolder.binderModule

string

“binder”

eNodeB1.cellularNic.ip2nic.binderModule

string

“binder”

eNodeB1.cellularNic.ip2nic.connectionControlModule

string

“^.rrc.connectionControl”

The node’s control-plane entry point, asked for a bearer on a lookup miss

eNodeB1.cellularNic.ip2nic.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB)

eNodeB1.cellularNic.ip2nic.hasSdap

bool

false

When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification

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

eNodeB1.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)

eNodeB1.cellularNic.ip2nic.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

eNodeB1.cellularNic.rrc.registration.interfaceTableModule

string

eNodeB1.cellularNic.rrc.registration.interfaceName

string

“cellular”

eNodeB1.cellularNic.rrc.registration.routingTableModule

string

eNodeB1.cellularNic.rrc.registration.binderModule

string

“binder”

eNodeB1.cellularNic.rrc.registration.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), told about a multicast group join

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

eNodeB1.cellularNic.rrc.bearerManagement.binderModule

string

“binder”

To reach a peer’s BearerManagement on RLF

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

eNodeB1.cellularNic.rrc.bearerManagement.t311

double

0s

RRC re-establishment cell-selection timer (0 => release-to-IDLE)

eNodeB1.cellularNic.rrc.bearerManagement.t301

double

0.1s

RRC re-establishment (request -> complete) timer

eNodeB1.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)

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

eNodeB1.cellularNic.rrc.bearerManagement.pdcpRelayEntityModuleType

string

“simu5g.stack.pdcp.PdcpRelayEntity”

eNodeB1.cellularNic.rrc.bearerManagement.dualConnectivityEnabled

bool

false

Set by the NIC; two-leg (split-capable) bearers

eNodeB1.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)

eNodeB1.cellularNic.rrc.bearerManagement.lteRlcUmEntityModuleType

string

“simu5g.stack.rlc.LteRlcUmEntity”

eNodeB1.cellularNic.rrc.bearerManagement.lteRlcAmEntityModuleType

string

“simu5g.stack.rlc.LteRlcAmEntity”

eNodeB1.cellularNic.rrc.bearerManagement.nrRlcUmEntityModuleType

string

“simu5g.stack.rlc.NrRlcUmEntity”

eNodeB1.cellularNic.rrc.bearerManagement.nrRlcAmEntityModuleType

string

“simu5g.stack.rlc.NrRlcAmEntity”

eNodeB1.cellularNic.rrc.bearerManagement.registrationModule

string

“^.registration”

Module references for accessing other stack layers

eNodeB1.cellularNic.rrc.bearerManagement.drbTableModule

string

“^.drbTable”

eNodeB1.cellularNic.rrc.bearerManagement.ip2nicModule

string

“^.^.ip2nic”

eNodeB1.cellularNic.rrc.bearerManagement.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

Attachment-ledger push target (UE only)

eNodeB1.cellularNic.rrc.bearerManagement.pdcpMuxModule

string

“^.^.pdcpMux”

eNodeB1.cellularNic.rrc.bearerManagement.pdcpDcMuxModule

string

“^.^.pdcpDcMux”

eNodeB1.cellularNic.rrc.bearerManagement.d2dModeControllerModule

string

“^.d2dModeController”

eNodeB1.cellularNic.rrc.bearerManagement.rlcMuxModule

string

“^.^.rlcMux”

eNodeB1.cellularNic.rrc.bearerManagement.nrRlcMuxModule

string

“^.^.nrRlcMux”

eNodeB1.cellularNic.rrc.bearerManagement.macModule

string

“^.^.mac”

eNodeB1.cellularNic.rrc.bearerManagement.nrMacModule

string

“^.^.nrMac”

eNodeB1.cellularNic.rrc.bearerManagement.sdapModule

string

“^.^.sdap”

Configuration push target; unresolvable (no SDAP on the NIC) = no pushes

eNodeB1.cellularNic.rrc.bearerManagement.qosFlowClassifierModule

string

“^.^.qosFlowClassifier”

Uplink QFI rule push target; unresolvable (not a UE stack with SDAP) = no pushes

eNodeB1.cellularNic.rrc.connectionControl.binderModule

string

“binder”

eNodeB1.cellularNic.rrc.connectionControl.bearerConfiguratorModule

string

“bearerConfigurator”

eNodeB1.cellularNic.rrc.connectionControl.coreControlModule

string

“coreControl”

eNodeB1.cellularNic.rrc.connectionControl.bearerManagementModule

string

“^.bearerManagement”

eNodeB1.cellularNic.rrc.connectionControl.macModule

string

“^.^.mac”

eNodeB1.cellularNic.rrc.connectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

eNodeB1.cellularNic.rrc.connectionControl.gtpUserModule

string

“^.^.^.relay.gtpUser”

eNodeB1.cellularNic.rrc.connectionControl.gtpUserX2Module

string

“^.^.^.gtpUserX2”

eNodeB1.cellularNic.rrc.connectionControl.macNodeId

int

The base station’s node id; the NIC sets it from the node’s

eNodeB1.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)

eNodeB1.cellularNic.rrc.nrConnectionControl.dynamicCellAssociation

bool

false

eNodeB1.cellularNic.rrc.nrConnectionControl.enableHandover

bool

false

Allows handovers in the UE

eNodeB1.cellularNic.rrc.nrConnectionControl.isNr

bool

Whether this instance is associated with the NR or the LTE stack

eNodeB1.cellularNic.rrc.nrConnectionControl.macNodeId

int

MacNodeId of the stack leg this controller belongs to (set by the NIC)

eNodeB1.cellularNic.rrc.nrConnectionControl.sessionType

string

The type of the session the UE requests at connection setup (see LteUe), set by the NIC

eNodeB1.cellularNic.rrc.nrConnectionControl.handoverLatency

double

50ms

Handover duration

eNodeB1.cellularNic.rrc.nrConnectionControl.handoverDetachmentTime

double

handoverLatency > 0s ? handoverLatency/2 : 25ms

eNodeB1.cellularNic.rrc.nrConnectionControl.handoverAttachmentTime

double

handoverLatency > 0s ? handoverLatency-handoverDetachmentTime : handoverDetachmentTime

eNodeB1.cellularNic.rrc.nrConnectionControl.minRssiDefault

bool

true

Whether minRssi is taken from PhyPisaData instead of the minRssi parameter

eNodeB1.cellularNic.rrc.nrConnectionControl.minRssi

double

-99.0dB

Configurable minimum threshold RSSI for attaching to an eNB (meaningful only if minRssiDefault==false)

eNodeB1.cellularNic.rrc.nrConnectionControl.hysteresisFactor

double

10

eNodeB1.cellularNic.rrc.nrConnectionControl.binderModule

string

“binder”

eNodeB1.cellularNic.rrc.nrConnectionControl.macModule

string

“^.^.mac”

eNodeB1.cellularNic.rrc.nrConnectionControl.bearerManagementModule

string

“^.bearerManagement”

eNodeB1.cellularNic.rrc.nrConnectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

eNodeB1.cellularNic.rrc.nrConnectionControl.feedbackGeneratorModule

string

“^.^.dlFbGen”

TODO or “^.^.nrDlFbGen”

eNodeB1.cellularNic.rrc.nrConnectionControl.otherConnectionControlModule

string

“”

eNodeB1.cellularNic.rrc.nrConnectionControl.hasCollector

bool

false

True when node has a collector module (ueCollector/nrUeCollector) for this PHY module

eNodeB1.cellularNic.rrc.d2dModeSelection.modeSelectionPeriod

double

1s

eNodeB1.cellularNic.rrc.d2dModeSelection.binderModule

string

“binder”

eNodeB1.cellularNic.rrc.d2dModeSelection.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

eNodeB1.cellularNic.rrc.d2dModeSelection.macModule

string

“^.^.mac”

eNodeB1.cellularNic.rrc.d2dModeSelection.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point, which knows the UEs handing over

eNodeB1.cellularNic.rlcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

eNodeB1.cellularNic.phy.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

eNodeB1.cellularNic.phy.macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

eNodeB1.cellularNic.phy.ueTxPower

double

26dBm

eNodeB1.cellularNic.phy.eNodeBTxPower

double

46dBm

eNodeB1.cellularNic.phy.microTxPower

double

30dBm

eNodeB1.cellularNic.phy.txDirection

string

“OMNI”

eNodeB1.cellularNic.phy.txAngle

double

0deg

eNodeB1.cellularNic.phy.binderModule

string

“binder”

eNodeB1.cellularNic.phy.channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

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

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

eNodeB1.cellularNic.phy.targetBler

double

0.001

eNodeB1.cellularNic.packetFlowObserver.macModule

string

“^.mac”

eNodeB1.cellularNic.packetFlowObserver.pdcpModule

string

“^”

eNodeB1.cellularNic.packetFlowObserver.rlcModule

string

“^”

eNodeB1.cellularNic.packetFlowObserver.isNrObserver

bool

false

eNodeB1.cellularNic.packetFlowObserver.pfmType

string

“PacketFlowObserverEnb”

eNodeB1.cellularNic.pdcpDcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

eNodeB1.cellularNic.x2Manager.interfaceTableModule

string

eNodeB1.cellularNic.x2Manager.binderModule

string

“binder”

eNodeB1.cellularNic.compManager.compNodeType

string

“COMP_CLIENT”

eNodeB1.cellularNic.compManager.coordinatorId

int

ID of the coordinator node

eNodeB1.cellularNic.compManager.clientList

object

[]

Space-separated list of client node identifiers

eNodeB1.cellularNic.compManager.coordinationPeriod

double

0.001s

The time interval between two coordination events

eNodeB1.cellularNic.compManager.binderModule

string

“binder”

eNodeB1.cellularNic.handoverX2Forwarder.losslessHandover

bool

false

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

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

eNodeB1.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)

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.updateDisplayString

bool

true

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinX

double

-inf m

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinY

double

-inf m

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinZ

double

-inf m

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxX

double

inf m

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxY

double

inf m

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxZ

double

inf m

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialLatitude

double

nan deg

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialLongitude

double

nan deg

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialAltitude

double

0m

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialHeading

double

0deg

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialElevation

double

0deg

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialBank

double

0deg

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initFromDisplayString

bool

true

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.updateFromDisplayString

bool

true

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

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.computeAvgInterference

bool

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.enablePeriodicCqiUpdate

bool

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.useProbabilisticCqi

bool

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.backgroundTrafficManagerModule

string

“^.^.manager”

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.startTimeDl

double

-1s

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.startTimeUl

double

-1s

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.headerLen

int

33B

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.txPower

double

26dBm

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.fbPeriod

int

6tti

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.periodDl

double

uniform(10ms,50ms)

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.periodUl

double

uniform(10ms,50ms)

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.packetSizeDl

int

intuniform(20B,100B)

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.packetSizeUl

int

intuniform(20B,100B)

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.rtxRateDl

double

0.1

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.rtxDelayDl

double

0.006s

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.rtxRateUl

double

0.1

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.rtxDelayUl

double

0.006s

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.cqiMeanDl

double

15

These values are only considered when periodicCqi == false && computeAvgInterference == false

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.cqiMeanUl

double

15

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.cqiStddevDl

double

0

eNodeB1.cellularNic.bgTrafficGenerator.bgUE.generator.cqiStddevUl

double

0

eNodeB1.cellularNic.bgTrafficGenerator.manager.binderModule

string

“binder”

eNodeB1.cellularNic.bgTrafficGenerator.manager.numBgUes

int

eNodeB1.cellularNic.bgTrafficGenerator.manager.macModule

string

“^.^.mac”

eNodeB1.cellularNic.bgTrafficGenerator.manager.phyModule

string

“^.^.phy”

eNodeB1.cellularNic.bgTrafficGenerator.manager.enablePeriodicCqiUpdate

bool

eNodeB1.cellularNic.bgTrafficGenerator.manager.computeAvgInterference

bool

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

eNodeB1.pppIf ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB1.pppIf ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB1.pppIf ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB1.pppIf ↗.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB1.pppIf ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB1.pppIf ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB1.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).

eNodeB1.pppIf ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB1.pppIf ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB1.pppIf ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB1.pppIf ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB1.pppIf ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB1.pppIf ↗.pcapRecorder ↗.helpers

string

“”

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

eNodeB1.pppIf ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

eNodeB1.pppIf ↗.queue ↗.packetCapacity

int

10000

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

eNodeB1.pppIf ↗.queue ↗.dataCapacity

int

-1b

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

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

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

eNodeB1.pppIf ↗.queue ↗.bufferModule

string

“”

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

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

eNodeB1.pppIf ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.pppIf ↗.ppp ↗.sendRawBytes

bool

false

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

eNodeB1.pppIf ↗.ppp ↗.mtu

int

4470B

eNodeB1.pppIf ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

eNodeB1.pppIf ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

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

eNodeB1.x2ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB1.x2ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB1.x2ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB1.x2ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB1.x2ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB1.x2ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB1.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).

eNodeB1.x2ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB1.x2ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB1.x2ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB1.x2ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB1.x2ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB1.x2ppp ↗.pcapRecorder ↗.helpers

string

“”

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

eNodeB1.x2ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

eNodeB1.x2ppp ↗.queue ↗.packetCapacity

int

10000

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

eNodeB1.x2ppp ↗.queue ↗.dataCapacity

int

-1b

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

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

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

eNodeB1.x2ppp ↗.queue ↗.bufferModule

string

“”

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

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

eNodeB1.x2ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.x2ppp ↗.ppp ↗.sendRawBytes

bool

false

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

eNodeB1.x2ppp ↗.ppp ↗.mtu

int

4470B

eNodeB1.x2ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

eNodeB1.x2ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

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

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB1.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).

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.helpers

string

“”

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

eNodeB1.pppMEHostIf ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

eNodeB1.pppMEHostIf ↗.queue ↗.packetCapacity

int

10000

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

eNodeB1.pppMEHostIf ↗.queue ↗.dataCapacity

int

-1b

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

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

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

eNodeB1.pppMEHostIf ↗.queue ↗.bufferModule

string

“”

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

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

eNodeB1.pppMEHostIf ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.pppMEHostIf ↗.ppp ↗.sendRawBytes

bool

false

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

eNodeB1.pppMEHostIf ↗.ppp ↗.mtu

int

4470B

eNodeB1.pppMEHostIf ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

eNodeB1.pppMEHostIf ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

eNodeB1.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv4 ↗.configurator ↗.routingTableModule

string

eNodeB1.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

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

eNodeB1.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

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

eNodeB1.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

eNodeB1.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

eNodeB1.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

eNodeB1.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

eNodeB1.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

eNodeB1.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

eNodeB1.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

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

eNodeB1.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

eNodeB1.ipv4 ↗.natTable ↗.config

xml

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

XML configuration parameters for network address translation

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

eNodeB1.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

eNodeB1.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

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

eNodeB1.ipv4 ↗.up ↗.serviceMapping

object

{}

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

eNodeB1.ipv4 ↗.up ↗.protocolMapping

object

{}

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

eNodeB1.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv4 ↗.igmp ↗.routingTableModule

string

eNodeB1.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

eNodeB1.ipv4 ↗.igmp ↗.enabled

bool

true

eNodeB1.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

eNodeB1.ipv4 ↗.igmp ↗.queryInterval

double

125s

eNodeB1.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

eNodeB1.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

eNodeB1.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

eNodeB1.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

eNodeB1.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

eNodeB1.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

eNodeB1.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

eNodeB1.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

eNodeB1.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv4 ↗.icmp ↗.routingTableModule

string

eNodeB1.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

eNodeB1.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

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

eNodeB1.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

eNodeB1.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

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

eNodeB1.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

eNodeB1.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

eNodeB1.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

eNodeB1.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv4 ↗.ip ↗.routingTableModule

string

eNodeB1.ipv4 ↗.ip ↗.arpModule

string

eNodeB1.ipv4 ↗.ip ↗.icmpModule

string

eNodeB1.ipv4 ↗.ip ↗.checksumMode

string

“declared”

eNodeB1.ipv4 ↗.ip ↗.timeToLive

int

32

eNodeB1.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

eNodeB1.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

eNodeB1.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

eNodeB1.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

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

eNodeB1.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

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

eNodeB1.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

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

eNodeB1.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

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

eNodeB1.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv4 ↗.arp ↗.routingTableModule

string

eNodeB1.ipv4 ↗.arp ↗.retryTimeout

double

1s

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

eNodeB1.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

eNodeB1.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

eNodeB1.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

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

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

eNodeB1.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

eNodeB1.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

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

eNodeB1.ipv4 ↗.ipsec ↗.interfaceTableModule

string

eNodeB1.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

eNodeB1.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

eNodeB1.ipv4 ↗.ipsec ↗.spdConfig

xml

eNodeB1.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

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

eNodeB1.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

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

eNodeB1.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

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

eNodeB1.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

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

eNodeB1.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

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

eNodeB1.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

eNodeB1.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

eNodeB1.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

eNodeB1.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

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

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

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

eNodeB1.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

eNodeB1.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

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

eNodeB1.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

eNodeB1.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

eNodeB1.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.configurator ↗.interfaceTableModule

string

eNodeB1.ipv6 ↗.configurator ↗.routingTableModule

string

eNodeB1.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

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

eNodeB1.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

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

eNodeB1.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

eNodeB1.ipv6 ↗.routingTable ↗.forwarding

bool

false

eNodeB1.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

eNodeB1.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

eNodeB1.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

eNodeB1.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

eNodeB1.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

eNodeB1.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

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

eNodeB1.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

eNodeB1.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

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

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

eNodeB1.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

eNodeB1.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

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

eNodeB1.ipv6 ↗.up ↗.serviceMapping

object

{}

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

eNodeB1.ipv6 ↗.up ↗.protocolMapping

object

{}

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

eNodeB1.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

eNodeB1.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

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

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

eNodeB1.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

eNodeB1.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

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

eNodeB1.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

eNodeB1.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

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

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

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

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

eNodeB1.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)

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

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

eNodeB1.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

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

eNodeB1.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

eNodeB1.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv6 ↗.ipv6 ↗.routingTableModule

string

eNodeB1.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

eNodeB1.ipv6 ↗.ipv6 ↗.icmpv6Module

string

eNodeB1.ipv6 ↗.ipv6 ↗.procDelay

double

0s

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

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

eNodeB1.ipv6 ↗.ipsec ↗.interfaceTableModule

string

eNodeB1.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

eNodeB1.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

eNodeB1.ipv6 ↗.ipsec ↗.spdConfig

xml

eNodeB1.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

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

eNodeB1.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

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

eNodeB1.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

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

eNodeB1.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

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

eNodeB1.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

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

eNodeB1.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

eNodeB1.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

eNodeB1.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

eNodeB1.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

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

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

eNodeB1.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

eNodeB1.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

eNodeB1.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

eNodeB1.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

eNodeB1.ipv6 ↗.mipv6 ↗.isMobileNode

bool

eNodeB1.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

eNodeB1.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

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

eNodeB1.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

eNodeB1.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

eNodeB1.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

eNodeB1.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

eNodeB1.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

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

eNodeB1.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)

eNodeB1.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

eNodeB1.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

eNodeB1.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

eNodeB1.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

eNodeB1.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

eNodeB1.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

eNodeB1.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

eNodeB1.ipv6 ↗.mld ↗.enabled

bool

true

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

eNodeB1.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

eNodeB1.ipv6 ↗.mld ↗.robustnessVariable

int

2

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

eNodeB1.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

eNodeB1.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

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

eNodeB1.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

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

eNodeB1.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

eNodeB1.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

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

eNodeB1.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

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

eNodeB1.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

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

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

eNodeB1.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB1.udp ↗.checksumMode

string

“declared”

eNodeB1.udp ↗.defaultMulticastLoop

bool

true

eNodeB1.tcp ↗.displayStringTextFormat

string

“”

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

eNodeB1.tcp ↗.checksumMode

string

“declared”

eNodeB1.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)

eNodeB1.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

eNodeB1.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

eNodeB1.tcp ↗.limitedTransmitEnabled

bool

false

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

eNodeB1.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

eNodeB1.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)

eNodeB1.tcp ↗.windowScalingSupport

bool

false

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

eNodeB1.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)

eNodeB1.tcp ↗.timestampSupport

bool

false

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

eNodeB1.tcp ↗.mss

int

536

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

eNodeB1.tcp ↗.msl

int

120s

Maximum Segment Lifetime

eNodeB1.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

eNodeB1.tcp ↗.dupthresh

int

3

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

eNodeB1.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…

eNodeB1.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

eNodeB1.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

eNodeB1.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

eNodeB1.tcp ↗.dctcpGamma

double

0.0625

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

eNodeB1.tcp ↗.pmtudEnabled

bool

false

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

eNodeB1.tcp ↗.pmtudTimeout

double

600s

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

eNodeB1.x2App.client.displayStringTextFormat

string

“{socketState}”

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

eNodeB1.x2App.client.localAddress

string

“”

Comma-separated list of addresses

eNodeB1.x2App.client.localPort

int

0

Port number to listen on

eNodeB1.x2App.client.connectAddress

string

Server address (may be symbolic)

eNodeB1.x2App.client.connectPort

int

5000

Port number to connect to

eNodeB1.x2App.client.startTime

double

0s

Time the first session begins

eNodeB1.x2App.client.numRequestsPerSession

int

1

Number of requests sent per session

eNodeB1.x2App.client.numPacketsToReceive

int

0

eNodeB1.x2App.client.requestLength

int

1452

Length of a request (bytes)

eNodeB1.x2App.client.thinkTime

double

0s

Time gap between requests

eNodeB1.x2App.client.waitToClose

double

0s

Time to wait between the last message sent and abort

eNodeB1.x2App.client.reconnectInterval

double

0s

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

eNodeB1.x2App.client.inboundStreams

int

17

eNodeB1.x2App.client.outboundStreams

int

1

eNodeB1.x2App.client.echo

bool

false

Echoes received packages when true

eNodeB1.x2App.client.ordered

bool

true

eNodeB1.x2App.client.queueSize

int

0

eNodeB1.x2App.client.prMethod

int

0

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

eNodeB1.x2App.client.prValue

double

0

For PR-SCTP

eNodeB1.x2App.client.streamReset

bool

false

eNodeB1.x2App.client.streamRequestTime

double

0s

eNodeB1.x2App.client.streamResetType

int

5

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

eNodeB1.x2App.client.streamToReset

int

0

eNodeB1.x2App.client.stopTime

double

-1s

Time of finishing sending, negative values mean forever

eNodeB1.x2App.client.primaryTime

double

0s

eNodeB1.x2App.client.newPrimary

string

“”

eNodeB1.x2App.client.streamRequestLengths

string

“”

eNodeB1.x2App.client.streamRequestRatio

string

“”

eNodeB1.x2App.client.streamPriorities

string

“”

eNodeB1.x2App.client.finishEndsSimulation

bool

false

eNodeB1.x2App.client.binderModule

string

“binder”

eNodeB1.x2App.server.displayStringTextFormat

string

“”

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

eNodeB1.x2App.server.localAddress

string

“”

Comma-separated list of addresses

eNodeB1.x2App.server.localPort

int

0

Port number to listen on

eNodeB1.x2App.server.echo

bool

false

Echoes received packages when true

eNodeB1.x2App.server.echoDelay

double

0s

eNodeB1.x2App.server.delayFirstRead

double

0s

eNodeB1.x2App.server.readingInterval

double

0s

eNodeB1.x2App.server.messagesToPush

int

0

eNodeB1.x2App.server.numPacketsToSendPerClient

int

0

Number of requests sent per session

eNodeB1.x2App.server.numPacketsToReceivePerClient

int

1

eNodeB1.x2App.server.requestLength

int

1452

Length of a request (bytes)

eNodeB1.x2App.server.thinkTime

double

0s

Time gap between requests

eNodeB1.x2App.server.waitToClose

double

0s

Time to wait between last message sent and abort

eNodeB1.x2App.server.finishEndsSimulation

bool

false

eNodeB1.x2App.server.ordered

bool

true

eNodeB1.x2App.server.inboundStreams

int

17

eNodeB1.x2App.server.outboundStreams

int

1

eNodeB1.x2App.server.queueSize

int

0

eNodeB1.x2App.server.prMethod

int

0

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

eNodeB1.x2App.server.prValue

double

0

For PR-SCTP

eNodeB1.x2App.server.streamReset

bool

false

eNodeB1.x2App.server.streamRequestTime

double

0s

eNodeB1.x2App.server.streamToReset

int

0

eNodeB1.x2App.server.streamPriorities

string

“”

eNodeB1.x2App.server.binderModule

string

“binder”

eNodeB1.sctp ↗.displayStringTextFormat

string

“”

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

eNodeB1.sctp ↗.interfaceTableModule

string

eNodeB1.sctp ↗.routingTableModule

string

eNodeB1.sctp ↗.checksumMode

string

“declared”

eNodeB1.sctp ↗.numGapReports

int

3

eNodeB1.sctp ↗.rtoInitial

double

3s

eNodeB1.sctp ↗.rtoMin

double

1s

eNodeB1.sctp ↗.rtoMax

double

60s

eNodeB1.sctp ↗.rtoAlpha

double

0.125

eNodeB1.sctp ↗.rtoBeta

double

0.250

eNodeB1.sctp ↗.maxBurst

int

4

eNodeB1.sctp ↗.maxBurstVariant

string

“maxBurst”

eNodeB1.sctp ↗.initialWindow

int

0

eNodeB1.sctp ↗.assocMaxRetrans

int

10

eNodeB1.sctp ↗.pathMaxRetrans

int

5

eNodeB1.sctp ↗.maxInitRetrans

int

8

eNodeB1.sctp ↗.sackPeriod

double

200ms

eNodeB1.sctp ↗.sackFrequency

int

2

eNodeB1.sctp ↗.reactivatePrimaryPath

bool

false

eNodeB1.sctp ↗.sendQueueLimit

int

0

eNodeB1.sctp ↗.validCookieLifetime

double

10s

eNodeB1.sctp ↗.enableHeartbeats

bool

true

eNodeB1.sctp ↗.hbInterval

double

30s

eNodeB1.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

eNodeB1.sctp ↗.nagleEnabled

bool

true

eNodeB1.sctp ↗.naglePoint

int

1468

eNodeB1.sctp ↗.fragPoint

int

1452

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

eNodeB1.sctp ↗.fastRecoverySupported

bool

true

eNodeB1.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

eNodeB1.sctp ↗.ccModule

int

0

RFC4960=0

eNodeB1.sctp ↗.osbWithHeader

bool

false

eNodeB1.sctp ↗.RTXMethod

int

0

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

eNodeB1.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

eNodeB1.sctp ↗.arwnd

int

65535

eNodeB1.sctp ↗.swsLimit

int

3000

Limit for SWS

eNodeB1.sctp ↗.udpEncapsEnabled

bool

false

eNodeB1.sctp ↗.natFriendly

bool

false

eNodeB1.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

eNodeB1.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

eNodeB1.sctp ↗.tellArwnd

bool

false

For flow control

eNodeB1.sctp ↗.messageAcceptLimit

int

0

For flow control

eNodeB1.sctp ↗.fairStart

double

0s

eNodeB1.sctp ↗.fairStop

double

0s

eNodeB1.sctp ↗.streamsToPaths

string

“”

eNodeB1.sctp ↗.startEndToEndDelay

int

0

eNodeB1.sctp ↗.stopEndToEndDelay

int

10

eNodeB1.sctp ↗.throughputInterval

double

1

eNodeB1.sctp ↗.auth

bool

false

eNodeB1.sctp ↗.chunks

string

“”

eNodeB1.sctp ↗.padding

bool

false

eNodeB1.sctp ↗.addIP

bool

false

eNodeB1.sctp ↗.addTime

double

0s

eNodeB1.sctp ↗.addAddress

string

“”

eNodeB1.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

eNodeB1.sctp ↗.packetDrop

bool

false

eNodeB1.sctp ↗.sackNow

bool

false

eNodeB1.sctp ↗.highSpeedCC

bool

false

eNodeB1.sctp ↗.checkSackSeqNumber

bool

false

eNodeB1.sctp ↗.nrSack

bool

false

eNodeB1.sctp ↗.disableReneging

bool

false

eNodeB1.sctp ↗.gapReportLimit

int

100000000

eNodeB1.sctp ↗.gapListOptimizationVariant

string

“none”

eNodeB1.sctp ↗.smartOverfullSACKHandling

bool

false

eNodeB1.sctp ↗.allowQoSTracking

bool

false

eNodeB1.sctp ↗.qosTrackingInterval

double

1.0s

eNodeB1.sctp ↗.cmtSendAllVariant

string

“normal”

eNodeB1.sctp ↗.cmtRetransmissionVariant

string

“normal”

eNodeB1.sctp ↗.cmtCUCVariant

string

“normal”

eNodeB1.sctp ↗.cmtBufferSplitVariant

string

“none”

eNodeB1.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

eNodeB1.sctp ↗.cmtUseSFR

bool

true

eNodeB1.sctp ↗.cmtUseDAC

bool

true

eNodeB1.sctp ↗.cmtUseFRC

bool

true

eNodeB1.sctp ↗.cmtSmartT3Reset

bool

true

eNodeB1.sctp ↗.cmtSmartFastRTX

bool

true

eNodeB1.sctp ↗.cmtSmartReneging

bool

false

eNodeB1.sctp ↗.cmtSlowPathRTTUpdate

bool

false

eNodeB1.sctp ↗.cmtChunkReschedulingVariant

string

“none”

eNodeB1.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

eNodeB1.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

eNodeB1.sctp ↗.movedChunkFastRTXFactor

double

2.0

eNodeB1.sctp ↗.cmtSackPath

string

“standard”

eNodeB1.sctp ↗.strictCwndBooking

bool

false

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

eNodeB1.sctp ↗.cmtCCPathGroups

string

“”

eNodeB1.sctp ↗.rpPathBlocking

bool

false

eNodeB1.sctp ↗.rpScaleBlockingTimeout

bool

false

eNodeB1.sctp ↗.rpMinCwnd

int

1

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

eNodeB1.at ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.at ↗.forwardServiceRegistration

bool

true

eNodeB1.at ↗.forwardProtocolRegistration

bool

true

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

eNodeB1.at ↗.serviceMapping

object

{}

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

eNodeB1.at ↗.protocolMapping

object

{}

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

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

eNodeB1.tn ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.tn ↗.forwardServiceRegistration

bool

true

eNodeB1.tn ↗.forwardProtocolRegistration

bool

true

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

eNodeB1.tn ↗.serviceMapping

object

{}

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

eNodeB1.tn ↗.protocolMapping

object

{}

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

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

eNodeB1.nl ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB1.nl ↗.forwardServiceRegistration

bool

true

eNodeB1.nl ↗.forwardProtocolRegistration

bool

true

eNodeB1.nl ↗.serviceMapping

object

{}

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

eNodeB1.nl ↗.protocolMapping

object

{}

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

eNodeB1.relay.trafficFlowFilter.binderModule

string

“binder”

eNodeB1.relay.trafficFlowFilter.fastForwarding

bool

true

eNodeB1.relay.gtpUser.binderModule

string

“binder”

eNodeB1.relay.gtpUser.localPort

int

31

eNodeB1.relay.gtpUser.tunnelPeerPort

int

31

eNodeB1.gtpUserX2.binderModule

string

“binder”

eNodeB1.gtpUserX2.localPort

int

32

eNodeB1.gtpUserX2.tunnelPeerPort

int

32

eNodeB2.interfaceTable ↗.displayStringTextFormat

string

“{numInterfaces} interfaces”

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

eNodeB2.interfaceTable ↗.displayAddresses

bool

false

Whether to display IP addresses on links

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

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

eNodeB2.mobility ↗.coordinateSystemModule

string

“”

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

eNodeB2.mobility ↗.updateDisplayString

bool

true

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

eNodeB2.mobility ↗.constraintAreaMinX

double

-inf m

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

eNodeB2.mobility ↗.constraintAreaMinY

double

-inf m

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

eNodeB2.mobility ↗.constraintAreaMinZ

double

-inf m

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

eNodeB2.mobility ↗.constraintAreaMaxX

double

inf m

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

eNodeB2.mobility ↗.constraintAreaMaxY

double

inf m

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

eNodeB2.mobility ↗.constraintAreaMaxZ

double

inf m

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

eNodeB2.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

eNodeB2.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

eNodeB2.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

eNodeB2.mobility ↗.initialLatitude

double

nan deg

eNodeB2.mobility ↗.initialLongitude

double

nan deg

eNodeB2.mobility ↗.initialAltitude

double

0m

eNodeB2.mobility ↗.initialHeading

double

0deg

eNodeB2.mobility ↗.initialElevation

double

0deg

eNodeB2.mobility ↗.initialBank

double

0deg

eNodeB2.mobility ↗.initFromDisplayString

bool

true

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

eNodeB2.mobility ↗.updateFromDisplayString

bool

true

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

eNodeB2.cellInfo.constraintAreaMinX

double

-1m/0

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

eNodeB2.cellInfo.constraintAreaMinY

double

-1m/0

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

eNodeB2.cellInfo.constraintAreaMaxX

double

1m/0

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

eNodeB2.cellInfo.constraintAreaMaxY

double

1m/0

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

eNodeB2.cellInfo.beaconInterval

double

1s

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

eNodeB2.cellInfo.microCell

bool

false

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

eNodeB2.cellInfo.rbyDl

int

12

Number of sub-carriers per RB in DL

eNodeB2.cellInfo.rbyUl

int

12

Number of sub-carriers per RB in UL

eNodeB2.cellInfo.rbxDl

int

7

Number of OFDM symbols per slot in DL

eNodeB2.cellInfo.rbxUl

int

7

Number of OFDM symbols per slot in UL

eNodeB2.cellInfo.rbPilotDl

int

3

Number of pilot Resource Elements per RB in DL

eNodeB2.cellInfo.rbPilotUl

int

0

Number of pilot Resource Elements per RB in UL

eNodeB2.cellInfo.signalDl

int

1

Number of signaling symbols for each Resource Block in DL

eNodeB2.cellInfo.signalUl

int

1

Number of signaling symbols for each Resource Block in UL

eNodeB2.cellInfo.numPreferredBands

int

1

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

eNodeB2.cellInfo.binderModule

string

“binder”

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

eNodeB2.cellularNic.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB2.cellularNic.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB2.cellularNic.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB2.cellularNic.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB2.cellularNic.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB2.cellularNic.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB2.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).

eNodeB2.cellularNic.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB2.cellularNic.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB2.cellularNic.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB2.cellularNic.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB2.cellularNic.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB2.cellularNic.pcapRecorder ↗.helpers

string

“”

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

eNodeB2.cellularNic.pcapRecorder ↗.alwaysFlush

bool

false

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

eNodeB2.cellularNic.handoverPacketHolder.binderModule

string

“binder”

eNodeB2.cellularNic.ip2nic.binderModule

string

“binder”

eNodeB2.cellularNic.ip2nic.connectionControlModule

string

“^.rrc.connectionControl”

The node’s control-plane entry point, asked for a bearer on a lookup miss

eNodeB2.cellularNic.ip2nic.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB)

eNodeB2.cellularNic.ip2nic.hasSdap

bool

false

When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification

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

eNodeB2.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)

eNodeB2.cellularNic.ip2nic.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

eNodeB2.cellularNic.rrc.registration.interfaceTableModule

string

eNodeB2.cellularNic.rrc.registration.interfaceName

string

“cellular”

eNodeB2.cellularNic.rrc.registration.routingTableModule

string

eNodeB2.cellularNic.rrc.registration.binderModule

string

“binder”

eNodeB2.cellularNic.rrc.registration.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), told about a multicast group join

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

eNodeB2.cellularNic.rrc.bearerManagement.binderModule

string

“binder”

To reach a peer’s BearerManagement on RLF

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

eNodeB2.cellularNic.rrc.bearerManagement.t311

double

0s

RRC re-establishment cell-selection timer (0 => release-to-IDLE)

eNodeB2.cellularNic.rrc.bearerManagement.t301

double

0.1s

RRC re-establishment (request -> complete) timer

eNodeB2.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)

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

eNodeB2.cellularNic.rrc.bearerManagement.pdcpRelayEntityModuleType

string

“simu5g.stack.pdcp.PdcpRelayEntity”

eNodeB2.cellularNic.rrc.bearerManagement.dualConnectivityEnabled

bool

false

Set by the NIC; two-leg (split-capable) bearers

eNodeB2.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)

eNodeB2.cellularNic.rrc.bearerManagement.lteRlcUmEntityModuleType

string

“simu5g.stack.rlc.LteRlcUmEntity”

eNodeB2.cellularNic.rrc.bearerManagement.lteRlcAmEntityModuleType

string

“simu5g.stack.rlc.LteRlcAmEntity”

eNodeB2.cellularNic.rrc.bearerManagement.nrRlcUmEntityModuleType

string

“simu5g.stack.rlc.NrRlcUmEntity”

eNodeB2.cellularNic.rrc.bearerManagement.nrRlcAmEntityModuleType

string

“simu5g.stack.rlc.NrRlcAmEntity”

eNodeB2.cellularNic.rrc.bearerManagement.registrationModule

string

“^.registration”

Module references for accessing other stack layers

eNodeB2.cellularNic.rrc.bearerManagement.drbTableModule

string

“^.drbTable”

eNodeB2.cellularNic.rrc.bearerManagement.ip2nicModule

string

“^.^.ip2nic”

eNodeB2.cellularNic.rrc.bearerManagement.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

Attachment-ledger push target (UE only)

eNodeB2.cellularNic.rrc.bearerManagement.pdcpMuxModule

string

“^.^.pdcpMux”

eNodeB2.cellularNic.rrc.bearerManagement.pdcpDcMuxModule

string

“^.^.pdcpDcMux”

eNodeB2.cellularNic.rrc.bearerManagement.d2dModeControllerModule

string

“^.d2dModeController”

eNodeB2.cellularNic.rrc.bearerManagement.rlcMuxModule

string

“^.^.rlcMux”

eNodeB2.cellularNic.rrc.bearerManagement.nrRlcMuxModule

string

“^.^.nrRlcMux”

eNodeB2.cellularNic.rrc.bearerManagement.macModule

string

“^.^.mac”

eNodeB2.cellularNic.rrc.bearerManagement.nrMacModule

string

“^.^.nrMac”

eNodeB2.cellularNic.rrc.bearerManagement.sdapModule

string

“^.^.sdap”

Configuration push target; unresolvable (no SDAP on the NIC) = no pushes

eNodeB2.cellularNic.rrc.bearerManagement.qosFlowClassifierModule

string

“^.^.qosFlowClassifier”

Uplink QFI rule push target; unresolvable (not a UE stack with SDAP) = no pushes

eNodeB2.cellularNic.rrc.connectionControl.binderModule

string

“binder”

eNodeB2.cellularNic.rrc.connectionControl.bearerConfiguratorModule

string

“bearerConfigurator”

eNodeB2.cellularNic.rrc.connectionControl.coreControlModule

string

“coreControl”

eNodeB2.cellularNic.rrc.connectionControl.bearerManagementModule

string

“^.bearerManagement”

eNodeB2.cellularNic.rrc.connectionControl.macModule

string

“^.^.mac”

eNodeB2.cellularNic.rrc.connectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

eNodeB2.cellularNic.rrc.connectionControl.gtpUserModule

string

“^.^.^.relay.gtpUser”

eNodeB2.cellularNic.rrc.connectionControl.gtpUserX2Module

string

“^.^.^.gtpUserX2”

eNodeB2.cellularNic.rrc.connectionControl.macNodeId

int

The base station’s node id; the NIC sets it from the node’s

eNodeB2.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)

eNodeB2.cellularNic.rrc.nrConnectionControl.dynamicCellAssociation

bool

false

eNodeB2.cellularNic.rrc.nrConnectionControl.enableHandover

bool

false

Allows handovers in the UE

eNodeB2.cellularNic.rrc.nrConnectionControl.isNr

bool

Whether this instance is associated with the NR or the LTE stack

eNodeB2.cellularNic.rrc.nrConnectionControl.macNodeId

int

MacNodeId of the stack leg this controller belongs to (set by the NIC)

eNodeB2.cellularNic.rrc.nrConnectionControl.sessionType

string

The type of the session the UE requests at connection setup (see LteUe), set by the NIC

eNodeB2.cellularNic.rrc.nrConnectionControl.handoverLatency

double

50ms

Handover duration

eNodeB2.cellularNic.rrc.nrConnectionControl.handoverDetachmentTime

double

handoverLatency > 0s ? handoverLatency/2 : 25ms

eNodeB2.cellularNic.rrc.nrConnectionControl.handoverAttachmentTime

double

handoverLatency > 0s ? handoverLatency-handoverDetachmentTime : handoverDetachmentTime

eNodeB2.cellularNic.rrc.nrConnectionControl.minRssiDefault

bool

true

Whether minRssi is taken from PhyPisaData instead of the minRssi parameter

eNodeB2.cellularNic.rrc.nrConnectionControl.minRssi

double

-99.0dB

Configurable minimum threshold RSSI for attaching to an eNB (meaningful only if minRssiDefault==false)

eNodeB2.cellularNic.rrc.nrConnectionControl.hysteresisFactor

double

10

eNodeB2.cellularNic.rrc.nrConnectionControl.binderModule

string

“binder”

eNodeB2.cellularNic.rrc.nrConnectionControl.macModule

string

“^.^.mac”

eNodeB2.cellularNic.rrc.nrConnectionControl.bearerManagementModule

string

“^.bearerManagement”

eNodeB2.cellularNic.rrc.nrConnectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

eNodeB2.cellularNic.rrc.nrConnectionControl.feedbackGeneratorModule

string

“^.^.dlFbGen”

TODO or “^.^.nrDlFbGen”

eNodeB2.cellularNic.rrc.nrConnectionControl.otherConnectionControlModule

string

“”

eNodeB2.cellularNic.rrc.nrConnectionControl.hasCollector

bool

false

True when node has a collector module (ueCollector/nrUeCollector) for this PHY module

eNodeB2.cellularNic.rrc.d2dModeSelection.modeSelectionPeriod

double

1s

eNodeB2.cellularNic.rrc.d2dModeSelection.binderModule

string

“binder”

eNodeB2.cellularNic.rrc.d2dModeSelection.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

eNodeB2.cellularNic.rrc.d2dModeSelection.macModule

string

“^.^.mac”

eNodeB2.cellularNic.rrc.d2dModeSelection.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point, which knows the UEs handing over

eNodeB2.cellularNic.rlcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

eNodeB2.cellularNic.phy.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

eNodeB2.cellularNic.phy.macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

eNodeB2.cellularNic.phy.ueTxPower

double

26dBm

eNodeB2.cellularNic.phy.eNodeBTxPower

double

46dBm

eNodeB2.cellularNic.phy.microTxPower

double

30dBm

eNodeB2.cellularNic.phy.txDirection

string

“OMNI”

eNodeB2.cellularNic.phy.txAngle

double

0deg

eNodeB2.cellularNic.phy.binderModule

string

“binder”

eNodeB2.cellularNic.phy.channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

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

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

eNodeB2.cellularNic.phy.targetBler

double

0.001

eNodeB2.cellularNic.packetFlowObserver.macModule

string

“^.mac”

eNodeB2.cellularNic.packetFlowObserver.pdcpModule

string

“^”

eNodeB2.cellularNic.packetFlowObserver.rlcModule

string

“^”

eNodeB2.cellularNic.packetFlowObserver.isNrObserver

bool

false

eNodeB2.cellularNic.packetFlowObserver.pfmType

string

“PacketFlowObserverEnb”

eNodeB2.cellularNic.pdcpDcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

eNodeB2.cellularNic.x2Manager.interfaceTableModule

string

eNodeB2.cellularNic.x2Manager.binderModule

string

“binder”

eNodeB2.cellularNic.compManager.compNodeType

string

“COMP_CLIENT”

eNodeB2.cellularNic.compManager.coordinatorId

int

ID of the coordinator node

eNodeB2.cellularNic.compManager.clientList

object

[]

Space-separated list of client node identifiers

eNodeB2.cellularNic.compManager.coordinationPeriod

double

0.001s

The time interval between two coordination events

eNodeB2.cellularNic.compManager.binderModule

string

“binder”

eNodeB2.cellularNic.handoverX2Forwarder.losslessHandover

bool

false

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

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

eNodeB2.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)

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.updateDisplayString

bool

true

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinX

double

-inf m

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinY

double

-inf m

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMinZ

double

-inf m

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxX

double

inf m

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxY

double

inf m

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.constraintAreaMaxZ

double

inf m

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialLatitude

double

nan deg

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialLongitude

double

nan deg

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialAltitude

double

0m

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialHeading

double

0deg

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialElevation

double

0deg

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initialBank

double

0deg

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.initFromDisplayString

bool

true

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.mobility ↗.updateFromDisplayString

bool

true

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

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.computeAvgInterference

bool

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.enablePeriodicCqiUpdate

bool

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.useProbabilisticCqi

bool

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.backgroundTrafficManagerModule

string

“^.^.manager”

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.startTimeDl

double

-1s

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.startTimeUl

double

-1s

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.headerLen

int

33B

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.txPower

double

26dBm

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.fbPeriod

int

6tti

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.periodDl

double

uniform(10ms,50ms)

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.periodUl

double

uniform(10ms,50ms)

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.packetSizeDl

int

intuniform(20B,100B)

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.packetSizeUl

int

intuniform(20B,100B)

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.rtxRateDl

double

0.1

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.rtxDelayDl

double

0.006s

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.rtxRateUl

double

0.1

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.rtxDelayUl

double

0.006s

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.cqiMeanDl

double

15

These values are only considered when periodicCqi == false && computeAvgInterference == false

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.cqiMeanUl

double

15

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.cqiStddevDl

double

0

eNodeB2.cellularNic.bgTrafficGenerator.bgUE.generator.cqiStddevUl

double

0

eNodeB2.cellularNic.bgTrafficGenerator.manager.binderModule

string

“binder”

eNodeB2.cellularNic.bgTrafficGenerator.manager.numBgUes

int

eNodeB2.cellularNic.bgTrafficGenerator.manager.macModule

string

“^.^.mac”

eNodeB2.cellularNic.bgTrafficGenerator.manager.phyModule

string

“^.^.phy”

eNodeB2.cellularNic.bgTrafficGenerator.manager.enablePeriodicCqiUpdate

bool

eNodeB2.cellularNic.bgTrafficGenerator.manager.computeAvgInterference

bool

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

eNodeB2.pppIf ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB2.pppIf ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB2.pppIf ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB2.pppIf ↗.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB2.pppIf ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB2.pppIf ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB2.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).

eNodeB2.pppIf ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB2.pppIf ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB2.pppIf ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB2.pppIf ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB2.pppIf ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB2.pppIf ↗.pcapRecorder ↗.helpers

string

“”

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

eNodeB2.pppIf ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

eNodeB2.pppIf ↗.queue ↗.packetCapacity

int

10000

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

eNodeB2.pppIf ↗.queue ↗.dataCapacity

int

-1b

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

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

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

eNodeB2.pppIf ↗.queue ↗.bufferModule

string

“”

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

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

eNodeB2.pppIf ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.pppIf ↗.ppp ↗.sendRawBytes

bool

false

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

eNodeB2.pppIf ↗.ppp ↗.mtu

int

4470B

eNodeB2.pppIf ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

eNodeB2.pppIf ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

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

eNodeB2.x2ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB2.x2ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB2.x2ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB2.x2ppp ↗.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB2.x2ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB2.x2ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB2.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).

eNodeB2.x2ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB2.x2ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB2.x2ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB2.x2ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB2.x2ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB2.x2ppp ↗.pcapRecorder ↗.helpers

string

“”

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

eNodeB2.x2ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

eNodeB2.x2ppp ↗.queue ↗.packetCapacity

int

10000

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

eNodeB2.x2ppp ↗.queue ↗.dataCapacity

int

-1b

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

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

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

eNodeB2.x2ppp ↗.queue ↗.bufferModule

string

“”

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

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

eNodeB2.x2ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.x2ppp ↗.ppp ↗.sendRawBytes

bool

false

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

eNodeB2.x2ppp ↗.ppp ↗.mtu

int

4470B

eNodeB2.x2ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

eNodeB2.x2ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

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

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.pcapFile

string

“”

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

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

eNodeB2.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).

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.helpers

string

“”

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

eNodeB2.pppMEHostIf ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

eNodeB2.pppMEHostIf ↗.queue ↗.packetCapacity

int

10000

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

eNodeB2.pppMEHostIf ↗.queue ↗.dataCapacity

int

-1b

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

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

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

eNodeB2.pppMEHostIf ↗.queue ↗.bufferModule

string

“”

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

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

eNodeB2.pppMEHostIf ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.pppMEHostIf ↗.ppp ↗.sendRawBytes

bool

false

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

eNodeB2.pppMEHostIf ↗.ppp ↗.mtu

int

4470B

eNodeB2.pppMEHostIf ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

eNodeB2.pppMEHostIf ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

eNodeB2.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv4 ↗.configurator ↗.routingTableModule

string

eNodeB2.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

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

eNodeB2.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

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

eNodeB2.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

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

eNodeB2.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

eNodeB2.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

eNodeB2.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

eNodeB2.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

eNodeB2.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

eNodeB2.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

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

eNodeB2.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

eNodeB2.ipv4 ↗.natTable ↗.config

xml

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

XML configuration parameters for network address translation

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

eNodeB2.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

eNodeB2.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

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

eNodeB2.ipv4 ↗.up ↗.serviceMapping

object

{}

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

eNodeB2.ipv4 ↗.up ↗.protocolMapping

object

{}

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

eNodeB2.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv4 ↗.igmp ↗.routingTableModule

string

eNodeB2.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

eNodeB2.ipv4 ↗.igmp ↗.enabled

bool

true

eNodeB2.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

eNodeB2.ipv4 ↗.igmp ↗.queryInterval

double

125s

eNodeB2.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

eNodeB2.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

eNodeB2.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

eNodeB2.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

eNodeB2.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

eNodeB2.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

eNodeB2.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

eNodeB2.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

eNodeB2.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv4 ↗.icmp ↗.routingTableModule

string

eNodeB2.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

eNodeB2.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

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

eNodeB2.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

eNodeB2.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

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

eNodeB2.ipv4 ↗.mp ↗.serviceMapping

object

{}

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

eNodeB2.ipv4 ↗.mp ↗.protocolMapping

object

{}

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

eNodeB2.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

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

eNodeB2.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv4 ↗.ip ↗.routingTableModule

string

eNodeB2.ipv4 ↗.ip ↗.arpModule

string

eNodeB2.ipv4 ↗.ip ↗.icmpModule

string

eNodeB2.ipv4 ↗.ip ↗.checksumMode

string

“declared”

eNodeB2.ipv4 ↗.ip ↗.timeToLive

int

32

eNodeB2.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

eNodeB2.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

eNodeB2.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

eNodeB2.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

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

eNodeB2.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

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

eNodeB2.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

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

eNodeB2.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

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

eNodeB2.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv4 ↗.arp ↗.routingTableModule

string

eNodeB2.ipv4 ↗.arp ↗.retryTimeout

double

1s

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

eNodeB2.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

eNodeB2.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

eNodeB2.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

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

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

eNodeB2.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

eNodeB2.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

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

eNodeB2.ipv4 ↗.ipsec ↗.interfaceTableModule

string

eNodeB2.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

eNodeB2.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

eNodeB2.ipv4 ↗.ipsec ↗.spdConfig

xml

eNodeB2.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

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

eNodeB2.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

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

eNodeB2.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

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

eNodeB2.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

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

eNodeB2.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

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

eNodeB2.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

eNodeB2.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

eNodeB2.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

eNodeB2.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

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

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

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

eNodeB2.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

eNodeB2.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

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

eNodeB2.ipv4 ↗.lp ↗.serviceMapping

object

{}

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

eNodeB2.ipv4 ↗.lp ↗.protocolMapping

object

{}

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

eNodeB2.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.configurator ↗.interfaceTableModule

string

eNodeB2.ipv6 ↗.configurator ↗.routingTableModule

string

eNodeB2.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

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

eNodeB2.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

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

eNodeB2.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

eNodeB2.ipv6 ↗.routingTable ↗.forwarding

bool

false

eNodeB2.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

eNodeB2.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

eNodeB2.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

eNodeB2.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

eNodeB2.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

eNodeB2.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

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

eNodeB2.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

eNodeB2.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

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

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

eNodeB2.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

eNodeB2.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

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

eNodeB2.ipv6 ↗.up ↗.serviceMapping

object

{}

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

eNodeB2.ipv6 ↗.up ↗.protocolMapping

object

{}

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

eNodeB2.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

eNodeB2.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

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

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

eNodeB2.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

eNodeB2.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

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

eNodeB2.ipv6 ↗.lp ↗.serviceMapping

object

{}

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

eNodeB2.ipv6 ↗.lp ↗.protocolMapping

object

{}

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

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

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

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

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

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

eNodeB2.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)

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

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

eNodeB2.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

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

eNodeB2.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

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

eNodeB2.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv6 ↗.ipv6 ↗.routingTableModule

string

eNodeB2.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

eNodeB2.ipv6 ↗.ipv6 ↗.icmpv6Module

string

eNodeB2.ipv6 ↗.ipv6 ↗.procDelay

double

0s

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

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

eNodeB2.ipv6 ↗.ipsec ↗.interfaceTableModule

string

eNodeB2.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

eNodeB2.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

eNodeB2.ipv6 ↗.ipsec ↗.spdConfig

xml

eNodeB2.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

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

eNodeB2.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

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

eNodeB2.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

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

eNodeB2.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

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

eNodeB2.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

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

eNodeB2.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

eNodeB2.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

eNodeB2.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

eNodeB2.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

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

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

eNodeB2.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

eNodeB2.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

eNodeB2.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

eNodeB2.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

eNodeB2.ipv6 ↗.mipv6 ↗.isMobileNode

bool

eNodeB2.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

eNodeB2.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

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

eNodeB2.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

eNodeB2.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

eNodeB2.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

eNodeB2.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

eNodeB2.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

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

eNodeB2.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)

eNodeB2.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

eNodeB2.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

eNodeB2.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

eNodeB2.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

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

eNodeB2.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

eNodeB2.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

eNodeB2.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

eNodeB2.ipv6 ↗.mld ↗.enabled

bool

true

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

eNodeB2.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

eNodeB2.ipv6 ↗.mld ↗.robustnessVariable

int

2

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

eNodeB2.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

eNodeB2.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

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

eNodeB2.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

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

eNodeB2.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

eNodeB2.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

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

eNodeB2.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

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

eNodeB2.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

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

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

eNodeB2.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

eNodeB2.udp ↗.checksumMode

string

“declared”

eNodeB2.udp ↗.defaultMulticastLoop

bool

true

eNodeB2.tcp ↗.displayStringTextFormat

string

“”

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

eNodeB2.tcp ↗.checksumMode

string

“declared”

eNodeB2.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)

eNodeB2.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

eNodeB2.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

eNodeB2.tcp ↗.limitedTransmitEnabled

bool

false

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

eNodeB2.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

eNodeB2.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)

eNodeB2.tcp ↗.windowScalingSupport

bool

false

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

eNodeB2.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)

eNodeB2.tcp ↗.timestampSupport

bool

false

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

eNodeB2.tcp ↗.mss

int

536

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

eNodeB2.tcp ↗.msl

int

120s

Maximum Segment Lifetime

eNodeB2.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

eNodeB2.tcp ↗.dupthresh

int

3

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

eNodeB2.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…

eNodeB2.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

eNodeB2.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

eNodeB2.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

eNodeB2.tcp ↗.dctcpGamma

double

0.0625

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

eNodeB2.tcp ↗.pmtudEnabled

bool

false

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

eNodeB2.tcp ↗.pmtudTimeout

double

600s

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

eNodeB2.x2App.client.displayStringTextFormat

string

“{socketState}”

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

eNodeB2.x2App.client.localAddress

string

“”

Comma-separated list of addresses

eNodeB2.x2App.client.localPort

int

0

Port number to listen on

eNodeB2.x2App.client.connectAddress

string

Server address (may be symbolic)

eNodeB2.x2App.client.connectPort

int

5000

Port number to connect to

eNodeB2.x2App.client.startTime

double

0s

Time the first session begins

eNodeB2.x2App.client.numRequestsPerSession

int

1

Number of requests sent per session

eNodeB2.x2App.client.numPacketsToReceive

int

0

eNodeB2.x2App.client.requestLength

int

1452

Length of a request (bytes)

eNodeB2.x2App.client.thinkTime

double

0s

Time gap between requests

eNodeB2.x2App.client.waitToClose

double

0s

Time to wait between the last message sent and abort

eNodeB2.x2App.client.reconnectInterval

double

0s

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

eNodeB2.x2App.client.inboundStreams

int

17

eNodeB2.x2App.client.outboundStreams

int

1

eNodeB2.x2App.client.echo

bool

false

Echoes received packages when true

eNodeB2.x2App.client.ordered

bool

true

eNodeB2.x2App.client.queueSize

int

0

eNodeB2.x2App.client.prMethod

int

0

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

eNodeB2.x2App.client.prValue

double

0

For PR-SCTP

eNodeB2.x2App.client.streamReset

bool

false

eNodeB2.x2App.client.streamRequestTime

double

0s

eNodeB2.x2App.client.streamResetType

int

5

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

eNodeB2.x2App.client.streamToReset

int

0

eNodeB2.x2App.client.stopTime

double

-1s

Time of finishing sending, negative values mean forever

eNodeB2.x2App.client.primaryTime

double

0s

eNodeB2.x2App.client.newPrimary

string

“”

eNodeB2.x2App.client.streamRequestLengths

string

“”

eNodeB2.x2App.client.streamRequestRatio

string

“”

eNodeB2.x2App.client.streamPriorities

string

“”

eNodeB2.x2App.client.finishEndsSimulation

bool

false

eNodeB2.x2App.client.binderModule

string

“binder”

eNodeB2.x2App.server.displayStringTextFormat

string

“”

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

eNodeB2.x2App.server.localAddress

string

“”

Comma-separated list of addresses

eNodeB2.x2App.server.localPort

int

0

Port number to listen on

eNodeB2.x2App.server.echo

bool

false

Echoes received packages when true

eNodeB2.x2App.server.echoDelay

double

0s

eNodeB2.x2App.server.delayFirstRead

double

0s

eNodeB2.x2App.server.readingInterval

double

0s

eNodeB2.x2App.server.messagesToPush

int

0

eNodeB2.x2App.server.numPacketsToSendPerClient

int

0

Number of requests sent per session

eNodeB2.x2App.server.numPacketsToReceivePerClient

int

1

eNodeB2.x2App.server.requestLength

int

1452

Length of a request (bytes)

eNodeB2.x2App.server.thinkTime

double

0s

Time gap between requests

eNodeB2.x2App.server.waitToClose

double

0s

Time to wait between last message sent and abort

eNodeB2.x2App.server.finishEndsSimulation

bool

false

eNodeB2.x2App.server.ordered

bool

true

eNodeB2.x2App.server.inboundStreams

int

17

eNodeB2.x2App.server.outboundStreams

int

1

eNodeB2.x2App.server.queueSize

int

0

eNodeB2.x2App.server.prMethod

int

0

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

eNodeB2.x2App.server.prValue

double

0

For PR-SCTP

eNodeB2.x2App.server.streamReset

bool

false

eNodeB2.x2App.server.streamRequestTime

double

0s

eNodeB2.x2App.server.streamToReset

int

0

eNodeB2.x2App.server.streamPriorities

string

“”

eNodeB2.x2App.server.binderModule

string

“binder”

eNodeB2.sctp ↗.displayStringTextFormat

string

“”

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

eNodeB2.sctp ↗.interfaceTableModule

string

eNodeB2.sctp ↗.routingTableModule

string

eNodeB2.sctp ↗.checksumMode

string

“declared”

eNodeB2.sctp ↗.numGapReports

int

3

eNodeB2.sctp ↗.rtoInitial

double

3s

eNodeB2.sctp ↗.rtoMin

double

1s

eNodeB2.sctp ↗.rtoMax

double

60s

eNodeB2.sctp ↗.rtoAlpha

double

0.125

eNodeB2.sctp ↗.rtoBeta

double

0.250

eNodeB2.sctp ↗.maxBurst

int

4

eNodeB2.sctp ↗.maxBurstVariant

string

“maxBurst”

eNodeB2.sctp ↗.initialWindow

int

0

eNodeB2.sctp ↗.assocMaxRetrans

int

10

eNodeB2.sctp ↗.pathMaxRetrans

int

5

eNodeB2.sctp ↗.maxInitRetrans

int

8

eNodeB2.sctp ↗.sackPeriod

double

200ms

eNodeB2.sctp ↗.sackFrequency

int

2

eNodeB2.sctp ↗.reactivatePrimaryPath

bool

false

eNodeB2.sctp ↗.sendQueueLimit

int

0

eNodeB2.sctp ↗.validCookieLifetime

double

10s

eNodeB2.sctp ↗.enableHeartbeats

bool

true

eNodeB2.sctp ↗.hbInterval

double

30s

eNodeB2.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

eNodeB2.sctp ↗.nagleEnabled

bool

true

eNodeB2.sctp ↗.naglePoint

int

1468

eNodeB2.sctp ↗.fragPoint

int

1452

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

eNodeB2.sctp ↗.fastRecoverySupported

bool

true

eNodeB2.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

eNodeB2.sctp ↗.ccModule

int

0

RFC4960=0

eNodeB2.sctp ↗.osbWithHeader

bool

false

eNodeB2.sctp ↗.RTXMethod

int

0

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

eNodeB2.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

eNodeB2.sctp ↗.arwnd

int

65535

eNodeB2.sctp ↗.swsLimit

int

3000

Limit for SWS

eNodeB2.sctp ↗.udpEncapsEnabled

bool

false

eNodeB2.sctp ↗.natFriendly

bool

false

eNodeB2.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

eNodeB2.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

eNodeB2.sctp ↗.tellArwnd

bool

false

For flow control

eNodeB2.sctp ↗.messageAcceptLimit

int

0

For flow control

eNodeB2.sctp ↗.fairStart

double

0s

eNodeB2.sctp ↗.fairStop

double

0s

eNodeB2.sctp ↗.streamsToPaths

string

“”

eNodeB2.sctp ↗.startEndToEndDelay

int

0

eNodeB2.sctp ↗.stopEndToEndDelay

int

10

eNodeB2.sctp ↗.throughputInterval

double

1

eNodeB2.sctp ↗.auth

bool

false

eNodeB2.sctp ↗.chunks

string

“”

eNodeB2.sctp ↗.padding

bool

false

eNodeB2.sctp ↗.addIP

bool

false

eNodeB2.sctp ↗.addTime

double

0s

eNodeB2.sctp ↗.addAddress

string

“”

eNodeB2.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

eNodeB2.sctp ↗.packetDrop

bool

false

eNodeB2.sctp ↗.sackNow

bool

false

eNodeB2.sctp ↗.highSpeedCC

bool

false

eNodeB2.sctp ↗.checkSackSeqNumber

bool

false

eNodeB2.sctp ↗.nrSack

bool

false

eNodeB2.sctp ↗.disableReneging

bool

false

eNodeB2.sctp ↗.gapReportLimit

int

100000000

eNodeB2.sctp ↗.gapListOptimizationVariant

string

“none”

eNodeB2.sctp ↗.smartOverfullSACKHandling

bool

false

eNodeB2.sctp ↗.allowQoSTracking

bool

false

eNodeB2.sctp ↗.qosTrackingInterval

double

1.0s

eNodeB2.sctp ↗.cmtSendAllVariant

string

“normal”

eNodeB2.sctp ↗.cmtRetransmissionVariant

string

“normal”

eNodeB2.sctp ↗.cmtCUCVariant

string

“normal”

eNodeB2.sctp ↗.cmtBufferSplitVariant

string

“none”

eNodeB2.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

eNodeB2.sctp ↗.cmtUseSFR

bool

true

eNodeB2.sctp ↗.cmtUseDAC

bool

true

eNodeB2.sctp ↗.cmtUseFRC

bool

true

eNodeB2.sctp ↗.cmtSmartT3Reset

bool

true

eNodeB2.sctp ↗.cmtSmartFastRTX

bool

true

eNodeB2.sctp ↗.cmtSmartReneging

bool

false

eNodeB2.sctp ↗.cmtSlowPathRTTUpdate

bool

false

eNodeB2.sctp ↗.cmtChunkReschedulingVariant

string

“none”

eNodeB2.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

eNodeB2.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

eNodeB2.sctp ↗.movedChunkFastRTXFactor

double

2.0

eNodeB2.sctp ↗.cmtSackPath

string

“standard”

eNodeB2.sctp ↗.strictCwndBooking

bool

false

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

eNodeB2.sctp ↗.cmtCCPathGroups

string

“”

eNodeB2.sctp ↗.rpPathBlocking

bool

false

eNodeB2.sctp ↗.rpScaleBlockingTimeout

bool

false

eNodeB2.sctp ↗.rpMinCwnd

int

1

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

eNodeB2.at ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.at ↗.forwardServiceRegistration

bool

true

eNodeB2.at ↗.forwardProtocolRegistration

bool

true

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

eNodeB2.at ↗.serviceMapping

object

{}

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

eNodeB2.at ↗.protocolMapping

object

{}

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

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

eNodeB2.tn ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.tn ↗.forwardServiceRegistration

bool

true

eNodeB2.tn ↗.forwardProtocolRegistration

bool

true

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

eNodeB2.tn ↗.serviceMapping

object

{}

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

eNodeB2.tn ↗.protocolMapping

object

{}

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

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

eNodeB2.nl ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

eNodeB2.nl ↗.forwardServiceRegistration

bool

true

eNodeB2.nl ↗.forwardProtocolRegistration

bool

true

eNodeB2.nl ↗.serviceMapping

object

{}

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

eNodeB2.nl ↗.protocolMapping

object

{}

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

eNodeB2.relay.trafficFlowFilter.binderModule

string

“binder”

eNodeB2.relay.trafficFlowFilter.fastForwarding

bool

true

eNodeB2.relay.gtpUser.binderModule

string

“binder”

eNodeB2.relay.gtpUser.localPort

int

31

eNodeB2.relay.gtpUser.tunnelPeerPort

int

31

eNodeB2.gtpUserX2.binderModule

string

“binder”

eNodeB2.gtpUserX2.localPort

int

32

eNodeB2.gtpUserX2.tunnelPeerPort

int

32

car.status ↗.displayStringTextFormat

string

“{stateStr}”

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

car.status ↗.initialStatus

string

“UP”

Initial status of the network node

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

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

car.mobility ↗.coordinateSystemModule

string

“”

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

car.mobility ↗.updateDisplayString

bool

true

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

car.mobility ↗.constraintAreaMinX

double

-inf m

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

car.mobility ↗.constraintAreaMinY

double

-inf m

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

car.mobility ↗.constraintAreaMinZ

double

-inf m

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

car.mobility ↗.constraintAreaMaxX

double

inf m

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

car.mobility ↗.constraintAreaMaxY

double

inf m

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

car.mobility ↗.constraintAreaMaxZ

double

inf m

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

car.mobility ↗.initialX

double

uniform(this.constraintAreaMinX, this.constraintAreaMaxX)

car.mobility ↗.initialY

double

uniform(this.constraintAreaMinY, this.constraintAreaMaxY)

car.mobility ↗.initialZ

double

nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ))

car.mobility ↗.initialLatitude

double

nan deg

car.mobility ↗.initialLongitude

double

nan deg

car.mobility ↗.initialAltitude

double

0m

car.mobility ↗.initialHeading

double

0deg

car.mobility ↗.initialElevation

double

0deg

car.mobility ↗.initialBank

double

0deg

car.mobility ↗.initFromDisplayString

bool

true

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

car.mobility ↗.updateFromDisplayString

bool

true

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

car.environment ↗.displayStringTextFormat

string

“”

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

car.environment ↗.initStage

int

0

Initialization stage for the setup command

car.environment ↗.globalNamespace

bool

false

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

car.environment ↗.namespace

string

“”

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

car.environment ↗.setupCommand

string

“”

A host OS system command

car.environment ↗.teardownCommand

string

“”

A host OS system command

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

car.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.pcapRecorder ↗.pcapFile

string

“”

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

car.pcapRecorder ↗.fileFormat

string

“pcapng”

car.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.pcapRecorder ↗.moduleNamePatterns

string

“wlan[*] eth[*] ppp[*]”

Space-separated list of sibling module names to listen on

car.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

car.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.pcapRecorder ↗.helpers

string

“”

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

car.pcapRecorder ↗.alwaysFlush

bool

false

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

car.interfaceTable ↗.displayStringTextFormat

string

“{numInterfaces} interfaces”

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

car.interfaceTable ↗.displayAddresses

bool

false

Whether to display IP addresses on links

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

car.cb ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.cb ↗.forwardServiceRegistration

bool

true

car.cb ↗.forwardProtocolRegistration

bool

true

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

car.cb ↗.serviceMapping

object

{}

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

car.cb ↗.protocolMapping

object

{}

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

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

car.bl ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.bl ↗.forwardServiceRegistration

bool

true

car.bl ↗.forwardProtocolRegistration

bool

true

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

car.bl ↗.serviceMapping

object

{}

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

car.bl ↗.protocolMapping

object

{}

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

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

car.ethernet ↗.registerProtocol

bool

false

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

car.ethernet ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ethernet ↗.fcsMode

string

“declared”

car.ethernet ↗.stopOperationExtraTime

double

-1s

Extra time after the lifecycle stop operation has finished

car.ethernet ↗.stopOperationTimeout

double

2s

Timeout value for the lifecycle stop operation

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

car.li ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.li ↗.forwardServiceRegistration

bool

true

car.li ↗.forwardProtocolRegistration

bool

true

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

car.li ↗.serviceMapping

object

{}

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

car.li ↗.protocolMapping

object

{}

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

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

car.lo ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.lo ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.lo ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.lo ↗.pcapRecorder ↗.pcapFile

string

“”

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

car.lo ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

car.lo ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.lo ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.lo ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.lo ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.lo ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

car.lo ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.lo ↗.pcapRecorder ↗.helpers

string

“”

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

car.lo ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

car.lo ↗.lo ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.lo ↗.lo ↗.mtu

int

4470B

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

car.wlan ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.wlan ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.wlan ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.wlan ↗.pcapRecorder ↗.pcapFile

string

“”

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

car.wlan ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

car.wlan ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.wlan ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.wlan ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.wlan ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.wlan ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

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

car.wlan ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.wlan ↗.pcapRecorder ↗.helpers

string

“”

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

car.wlan ↗.pcapRecorder ↗.alwaysFlush

bool

false

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

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

car.wlan ↗.agent ↗.displayStringTextFormat

string

“”

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

car.wlan ↗.agent ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.wlan ↗.agent ↗.mibModule

string

car.wlan ↗.agent ↗.activeScan

bool

true

Selects between active and passive scanning

car.wlan ↗.agent ↗.channelsToScan

string

“”

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

car.wlan ↗.agent ↗.probeDelay

double

100ms

Delay before sending a probe request during active scanning

car.wlan ↗.agent ↗.minChannelTime

double

150ms

Min interval to spend on a channel during active scanning

car.wlan ↗.agent ↗.maxChannelTime

double

300ms

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

car.wlan ↗.agent ↗.authenticationTimeout

double

5s

Timeout for the authentication procedure

car.wlan ↗.agent ↗.associationTimeout

double

5s

Timeout for the association procedure

car.wlan ↗.agent ↗.startingTime

double

-1s

Agent starting time.

car.wlan ↗.agent ↗.defaultSsid

string

“”

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

car.wlan ↗.mgmt ↗.displayStringTextFormat

string

“”

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

car.wlan ↗.mgmt ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.wlan ↗.mgmt ↗.numChannels

int

1

Number of channels to scan

car.wlan ↗.mgmt ↗.mibModule

string

car.wlan ↗.mgmt ↗.macModule

string

The path to the MAC module

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

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

int

100

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

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

int

-1b

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

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

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

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

string

“”

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

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

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

string

“^.pendingQueue”

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

string

“^.^.originatorMacDataService”

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

string

“^.^.ackHandler”

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

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

bool

true

Assume that the channel was busy before the simulation started

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

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

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

int

1500B

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

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

car.wlan ↗.mac ↗.dcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

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

car.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.shortRetryLimit

int

7

car.wlan ↗.mac ↗.dcf ↗.recoveryProcedure ↗.longRetryLimit

int

4

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

car.wlan ↗.mac ↗.dcf ↗.originatorProtectionMechanism ↗.rateSelectionModule

string

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

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

car.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

car.wlan ↗.mac ↗.dcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

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

car.wlan ↗.mac ↗.dcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

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

car.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rateSelectionModule

string

car.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

car.wlan ↗.mac ↗.dcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

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

car.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rxModule

string

car.wlan ↗.mac ↗.dcf ↗.ctsPolicy ↗.rateSelectionModule

string

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

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

int

100

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

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

int

-1b

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

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

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

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

string

“”

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

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

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

string

“^.pendingQueue”

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

string

“^.^.^.originatorMacDataService”

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

string

“^.ackHandler”

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

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

bool

true

Assume that the channel was busy before the simulation started

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

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

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

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

double

-1s

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

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

int

7

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

int

4

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

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

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

int

7

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

int

4

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

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

car.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)

car.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).

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

int

4065

-1 means infinity

car.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).

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

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

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

int

1500B

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

car.wlan ↗.mac ↗.hcf ↗.singleProtectionMechanism ↗.rateSelectionModule

string

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

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.multicastFrameBitrate

double

-1bps

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseAckFrameBitrate

double

-1bps

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseBlockAckFrameBitrate

double

-1bps

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.responseCtsFrameBitrate

double

-1bps

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBitrate

double

-1bps

Fastest

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameBandwidth

double

nan Hz

Unspecified by default

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.dataFrameNumSpatialStreams

int

-1

Unspecified by default

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.mgmtFrameBitrate

double

-1bps

Fastest

car.wlan ↗.mac ↗.hcf ↗.rateSelection ↗.controlFrameBitrate

double

-1bps

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

car.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.rateSelectionModule

string

car.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckReqThreshold

int

5

car.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.maxBlockAckPolicyFrameLength

int

1000B

car.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.blockAckTimeout

double

-1s

car.wlan ↗.mac ↗.hcf ↗.originatorAckPolicy ↗.ackTimeout

double

-1s

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

car.wlan ↗.mac ↗.hcf ↗.recipientAckPolicy ↗.rateSelectionModule

string

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

car.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rateSelectionModule

string

car.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.ctsTimeout

double

-1s

car.wlan ↗.mac ↗.hcf ↗.rtsPolicy ↗.rtsThreshold

int

2346B

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

car.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rxModule

string

car.wlan ↗.mac ↗.hcf ↗.ctsPolicy ↗.rateSelectionModule

string

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

car.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

car.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

car.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

car.wlan ↗.mac ↗.hcf ↗.originatorBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

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

car.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.delayedAckPolicySupported

bool

false

car.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.aMsduSupported

bool

true

car.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.maximumAllowedBufferSize

int

64

car.wlan ↗.mac ↗.hcf ↗.recipientBlockAckAgreementPolicy ↗.blockAckTimeoutValue

double

0s

0 means that it depends on the originator

car.wlan ↗.mac ↗.ds ↗.displayStringTextFormat

string

“”

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

car.wlan ↗.mac ↗.ds ↗.mibModule

string

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

car.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

car.wlan ↗.mac ↗.tx ↗.rxModule

string

car.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

car.ppp ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.ppp ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.ppp ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.ppp ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

car.ppp ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

car.ppp ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.ppp ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.ppp ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.ppp ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.ppp ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

car.ppp ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.ppp ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

car.ppp ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

car.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

car.ppp ↗.queue ↗.packetCapacity

int

10000

Maximum number of packets in the queue, no limit by default

car.ppp ↗.queue ↗.dataCapacity

int

-1b

Maximum total length of packets in the queue, no limit by default

car.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

car.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

car.ppp ↗.queue ↗.bufferModule

string

“”

Relative module path to the IPacketBuffer module used by this queue, implicit buffer by default

car.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

car.ppp ↗.ppp ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ppp ↗.ppp ↗.sendRawBytes

bool

false

When true packets are serialized into a sequence of bytes before sending out

car.ppp ↗.ppp ↗.mtu

int

4470B

car.ppp ↗.ppp ↗.stopOperationExtraTime

double

-1s

Extra time after lifecycle stop operation finished

car.ppp ↗.ppp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

car.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

car.eth ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.eth ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.eth ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.eth ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

car.eth ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

car.eth ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.eth ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.eth ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.eth ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.eth ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

car.eth ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.eth ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

car.eth ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

car.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

car.tun ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.tun ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.tun ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.tun ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

car.tun ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

car.tun ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.tun ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.tun ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.tun ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.tun ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

car.tun ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.tun ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

car.tun ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

car.tun ↗.tun ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.tun ↗.tun ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.tun ↗.tun ↗.mtu

int

1500B

car.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

car.virt ↗.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.virt ↗.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.virt ↗.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.virt ↗.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

car.virt ↗.pcapRecorder ↗.fileFormat

string

“pcapng”

car.virt ↗.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.virt ↗.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.virt ↗.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.virt ↗.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.virt ↗.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

car.virt ↗.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.virt ↗.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

car.virt ↗.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

car.virt ↗.tunnel ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.virt ↗.tunnel ↗.interfaceTableModule

string

car.virt ↗.tunnel ↗.realInterface

string

car.virt ↗.tunnel ↗.protocol

string

vlanId != -1 ? “ieee8021qctag” : “”

car.virt ↗.tunnel ↗.address

string

“copy”

car.virt ↗.tunnel ↗.vlanId

int

-1

car.virt ↗.tunnel ↗.steal

bool

vlanId != -1

car.ipv4 ↗.configurator ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv4 ↗.configurator ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv4 ↗.configurator ↗.routingTableModule

string

car.ipv4 ↗.configurator ↗.networkConfiguratorModule

string

“configurator”

The absolute path to the Ipv4NetworkConfigurator; use “” if there is no configurator

car.ipv4 ↗.configurator ↗.configureRoutingTable

bool

true

Add routing entries to the routing table (uses the configurator module)

car.ipv4 ↗.routingTable ↗.displayStringTextFormat

string

“{routingTableStatusText}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv4 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv4 ↗.routingTable ↗.routerId

string

“auto”

For routers, the router id using IPv4 address dotted

car.ipv4 ↗.routingTable ↗.netmaskRoutes

string

“*”

Maintain netmask routes for interfaces

car.ipv4 ↗.routingTable ↗.forwarding

bool

true

Turns IP forwarding on/off

car.ipv4 ↗.routingTable ↗.multicastForwarding

bool

false

Turns multicast forwarding on/off

car.ipv4 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

car.ipv4 ↗.routingTable ↗.routingFile

string

“”

Routing table file name

car.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

car.ipv4 ↗.natTable ↗.networkProtocolModule

string

“^.ip”

car.ipv4 ↗.natTable ↗.config

xml

xml(“<config></config>”)

XML configuration parameters for network address translation

car.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

car.ipv4 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.ipv4 ↗.up ↗.forwardServiceRegistration

bool

true

car.ipv4 ↗.up ↗.forwardProtocolRegistration

bool

true

car.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

car.ipv4 ↗.up ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.ipv4 ↗.up ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.ipv4 ↗.igmp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv4 ↗.igmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv4 ↗.igmp ↗.routingTableModule

string

car.ipv4 ↗.igmp ↗.checksumMode

string

“declared”

car.ipv4 ↗.igmp ↗.enabled

bool

true

car.ipv4 ↗.igmp ↗.robustnessVariable

int

2

IGMP is robust to (robustnessVariable-1) packet loss

car.ipv4 ↗.igmp ↗.queryInterval

double

125s

car.ipv4 ↗.igmp ↗.queryResponseInterval

double

10s

car.ipv4 ↗.igmp ↗.groupMembershipInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

car.ipv4 ↗.igmp ↗.otherQuerierPresentInterval

double

(robustnessVariable * queryInterval) + (queryResponseInterval / 2)

car.ipv4 ↗.igmp ↗.startupQueryInterval

double

queryInterval / 4

car.ipv4 ↗.igmp ↗.startupQueryCount

int

robustnessVariable

car.ipv4 ↗.igmp ↗.lastMemberQueryInterval

double

1s

car.ipv4 ↗.igmp ↗.lastMemberQueryCount

int

robustnessVariable

car.ipv4 ↗.igmp ↗.unsolicitedReportInterval

double

10s

car.ipv4 ↗.icmp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv4 ↗.icmp ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv4 ↗.icmp ↗.routingTableModule

string

car.ipv4 ↗.icmp ↗.checksumMode

string

“declared”

car.ipv4 ↗.icmp ↗.quoteLength

int

8B

Number of bytes from original packet to quote in ICMP reply

car.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

car.ipv4 ↗.mp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.ipv4 ↗.mp ↗.forwardServiceRegistration

bool

true

car.ipv4 ↗.mp ↗.forwardProtocolRegistration

bool

true

car.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

car.ipv4 ↗.mp ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.ipv4 ↗.mp ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.ipv4 ↗.ip ↗.displayStringTextFormat

string

“{ipv4StatusText}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv4 ↗.ip ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv4 ↗.ip ↗.routingTableModule

string

car.ipv4 ↗.ip ↗.arpModule

string

car.ipv4 ↗.ip ↗.icmpModule

string

car.ipv4 ↗.ip ↗.checksumMode

string

“declared”

car.ipv4 ↗.ip ↗.timeToLive

int

32

car.ipv4 ↗.ip ↗.multicastTimeToLive

int

32

car.ipv4 ↗.ip ↗.fragmentTimeout

double

60s

car.ipv4 ↗.ip ↗.limitedBroadcast

bool

false

Send out limited broadcast packets coming from the higher layer

car.ipv4 ↗.ip ↗.directBroadcastInterfaces

string

“”

List of interfaces where direct broadcast is enabled (by default direct broadcast is disabled on all interfaces)

car.ipv4 ↗.ip ↗.enableLocalOutMulticastRouting

bool

false

Enable using the multicast routing table for determining outgoing interfaces for local out packets

car.ipv4 ↗.ip ↗.enableTimestampOption

bool

false

When enabled, IP inserts a timestamp option into the IP header

car.ipv4 ↗.ip ↗.maxLifetime

double

-1s

Packets older than the limit are discarded

car.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

car.ipv4 ↗.arp ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv4 ↗.arp ↗.routingTableModule

string

car.ipv4 ↗.arp ↗.retryTimeout

double

1s

Number of seconds ARP waits between retries to resolve an IPv4 address

car.ipv4 ↗.arp ↗.retryCount

int

3

Number of times ARP will attempt to resolve an IPv4 address

car.ipv4 ↗.arp ↗.cacheTimeout

double

120s

Number of seconds unused entries in the cache will time out

car.ipv4 ↗.arp ↗.proxyArpInterfaces

string

“*”

List of interfaces that proxy ARP is enabled on (all interfaces by default)

car.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

car.ipv4 ↗.ipsec ↗.networkProtocolModule

string

“^.ip”

car.ipv4 ↗.ipsec ↗.networkProtocol

string

“ipv4”

address family this instance protects (set to “ipv6” in Ipv6NetworkLayer)

car.ipv4 ↗.ipsec ↗.interfaceTableModule

string

car.ipv4 ↗.ipsec ↗.spdModule

string

“^.spd”

car.ipv4 ↗.ipsec ↗.sadModule

string

“^.sad”

car.ipv4 ↗.ipsec ↗.spdConfig

xml

car.ipv4 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

car.ipv4 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

car.ipv4 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

car.ipv4 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

car.ipv4 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

car.ipv4 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

car.ipv4 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

car.ipv4 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

car.ipv4 ↗.ipsec ↗.espProtectInDelay

double

0.0s

car.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

car.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

car.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

car.ipv4 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.ipv4 ↗.lp ↗.forwardServiceRegistration

bool

true

car.ipv4 ↗.lp ↗.forwardProtocolRegistration

bool

true

car.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

car.ipv4 ↗.lp ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.ipv4 ↗.lp ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.ipv6 ↗.configurator ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.configurator ↗.interfaceTableModule

string

car.ipv6 ↗.configurator ↗.routingTableModule

string

car.ipv6 ↗.configurator ↗.networkConfiguratorModule

string

“”

The absolute path to the Ipv6NetworkConfigurator; use “” if there is no configurator

car.ipv6 ↗.configurator ↗.configureRoutingTable

bool

true

car.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

car.ipv6 ↗.routingTable ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv6 ↗.routingTable ↗.routes

xml

xml(“<routingTable/>”)

car.ipv6 ↗.routingTable ↗.forwarding

bool

false

car.ipv6 ↗.routingTable ↗.isRouter

bool

this.forwarding

car.ipv6 ↗.routingTable ↗.multicastForwarding

bool

false

car.ipv6 ↗.routingTable ↗.useAdminDist

bool

false

Use Cisco-like administrative distances

car.ipv6 ↗.routingTable ↗.advManagedFlag

bool

false

“Managed address configuration” (M) flag in RAs

car.ipv6 ↗.routingTable ↗.advOtherConfigFlag

bool

false

“Other configuration” (O) flag in RAs

car.ipv6 ↗.routingTable ↗.advLinkMtu

int

1280

MTU option in RAs (1280 = IPv6 minimum MTU, 0 = don’t include)

car.ipv6 ↗.routingTable ↗.advCurHopLimit

int

30

Cur Hop Limit field in RAs (0 = unspecified)

car.ipv6 ↗.routingTable ↗.advDefaultLifetime

double

-1s

Router Lifetime in RAs (-1 = auto: 3*maxRtrAdvInterval)

car.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

car.ipv6 ↗.up ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.ipv6 ↗.up ↗.forwardServiceRegistration

bool

true

car.ipv6 ↗.up ↗.forwardProtocolRegistration

bool

true

car.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

car.ipv6 ↗.up ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.ipv6 ↗.up ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.ipv6 ↗.icmpv6 ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.icmpv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv6 ↗.icmpv6 ↗.checksumMode

string

“declared”

car.ipv6 ↗.icmpv6 ↗.mldModule

string

“”

Path to the MLD module, or “” if MLD is not enabled; MLD messages are dropped when empty

car.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

car.ipv6 ↗.lp ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.ipv6 ↗.lp ↗.forwardServiceRegistration

bool

true

car.ipv6 ↗.lp ↗.forwardProtocolRegistration

bool

true

car.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

car.ipv6 ↗.lp ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.ipv6 ↗.lp ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.ipv6 ↗.neighbourDiscovery ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.neighbourDiscovery ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv6 ↗.neighbourDiscovery ↗.checksumMode

string

“declared”

car.ipv6 ↗.neighbourDiscovery ↗.icmpv6Module

string

car.ipv6 ↗.neighbourDiscovery ↗.mipv6Module

string

car.ipv6 ↗.neighbourDiscovery ↗.routingTableModule

string

car.ipv6 ↗.neighbourDiscovery ↗.minIntervalBetweenRAs

double

200s

RFC 4861: MinRtrAdvInterval (0.33 * MaxRtrAdvInterval)

car.ipv6 ↗.neighbourDiscovery ↗.maxIntervalBetweenRAs

double

600s

RFC 4861: MaxRtrAdvInterval

car.ipv6 ↗.neighbourDiscovery ↗.advReachableTime

double

3600s

advertised reachable time in RAs; hosts use it as base for NUD

car.ipv6 ↗.neighbourDiscovery ↗.dupAddrDetectTransmits

int

1

RFC 4862 Section 5.1: number of NS sent for DAD (0 = disable DAD)

car.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

car.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)

car.ipv6 ↗.neighbourDiscovery ↗.retransTimer

double

1s

RFC 4861 Section 10: delay between retransmitted NS messages

car.ipv6 ↗.neighbourDiscovery ↗.baseReachableTime

double

30s

RFC 4861 Section 10: base value for computing random ReachableTime

car.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

car.ipv6 ↗.neighbourDiscovery ↗.hostBootupTime

double

uniform(0.4s, 1s)

random startup delay before a host assigns its link-local address

car.ipv6 ↗.ipv6 ↗.displayStringTextFormat

string

“{ipv6StatusText}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.ipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv6 ↗.ipv6 ↗.routingTableModule

string

car.ipv6 ↗.ipv6 ↗.ipv6NeighbourDiscoveryModule

string

car.ipv6 ↗.ipv6 ↗.icmpv6Module

string

car.ipv6 ↗.ipv6 ↗.procDelay

double

0s

car.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.

car.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

car.ipv6 ↗.ipsec ↗.interfaceTableModule

string

car.ipv6 ↗.ipsec ↗.spdModule

string

“^.spd”

car.ipv6 ↗.ipsec ↗.sadModule

string

“^.sad”

car.ipv6 ↗.ipsec ↗.spdConfig

xml

car.ipv6 ↗.ipsec ↗.defaultProtection

string

“”

If not “”: value to use where <Protection> element is absent from the configuration

car.ipv6 ↗.ipsec ↗.defaultEspMode

string

“”

If not “”: value to use where <EspMode> element is absent from the configuration

car.ipv6 ↗.ipsec ↗.defaultEncryptionAlg

string

“”

If not “”: value to use where <EncryptionAlg> element is absent from the configuration

car.ipv6 ↗.ipsec ↗.defaultAuthenticationAlg

string

“”

If not “”: value to use where <defaultAuthenticationAlg> element is absent from the configuration

car.ipv6 ↗.ipsec ↗.defaultMaxTfcPadLength

int

0

Value to use where <MaxTfcPadLength> element is absent from the configuration

car.ipv6 ↗.ipsec ↗.ahProtectOutDelay

double

0.0s

car.ipv6 ↗.ipsec ↗.ahProtectInDelay

double

0.0s

car.ipv6 ↗.ipsec ↗.espProtectOutDelay

double

0.0s

car.ipv6 ↗.ipsec ↗.espProtectInDelay

double

0.0s

car.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

car.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

car.ipv6 ↗.mipv6 ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.mipv6 ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.ipv6 ↗.mipv6 ↗.ipv6NeighbourDiscoveryModule

string

car.ipv6 ↗.mipv6 ↗.bindingUpdateListModule

string

car.ipv6 ↗.mipv6 ↗.bindingCacheModule

string

car.ipv6 ↗.mipv6 ↗.isHomeAgent

bool

car.ipv6 ↗.mipv6 ↗.isMobileNode

bool

car.ipv6 ↗.mipv6 ↗.maxHaBindingLifeTime

double

3600s

max binding lifetime for HA registration

car.ipv6 ↗.mipv6 ↗.maxRrBindingLifeTime

double

420s

max binding lifetime for CN (route optimization)

car.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

car.ipv6 ↗.buList ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.bindingCache ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.pmipv6 ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.pmipv6 ↗.interfaceTableModule

string

path to the InterfaceTable module

car.ipv6 ↗.pmipv6 ↗.ipv6NeighbourDiscoveryModule

string

path to the Ipv6NeighbourDiscovery module

car.ipv6 ↗.pmipv6 ↗.isLocalMobilityAnchor

bool

false

(the IPv6 routing table is resolved automatically)

car.ipv6 ↗.pmipv6 ↗.isMobileAccessGateway

bool

false

car.ipv6 ↗.pmipv6 ↗.localMobilityAnchorAddress

string

“”

MAG: the address of the LMA to register mobile nodes with

car.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)

car.ipv6 ↗.pmipv6 ↗.bindingLifetime

double

3600s

lifetime requested in Proxy Binding Updates

car.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvValidLifetime

double

3600s

MAG: valid lifetime of the advertised home network prefix

car.ipv6 ↗.pmipv6 ↗.homeNetworkPrefixAdvPreferredLifetime

double

1800s

MAG: preferred lifetime of the advertised home network prefix

car.ipv6 ↗.mld ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.ipv6 ↗.mld ↗.interfaceTableModule

string

path to the InterfaceTable module

car.ipv6 ↗.mld ↗.routingTableModule

string

path to the Ipv6RoutingTable module

car.ipv6 ↗.mld ↗.checksumMode

string

“declared”

how the ICMPv6 checksum is handled

car.ipv6 ↗.mld ↗.enabled

bool

true

when false, MLD is inert on this node (see above)

car.ipv6 ↗.mld ↗.unsolicitedReportInterval

double

10s

host: delay before the repeated Report after a join

car.ipv6 ↗.mld ↗.robustnessVariable

int

2

loss tolerance; only supplies the defaults of the three params marked (RV) below

car.ipv6 ↗.mld ↗.queryInterval

double

125s

querier: interval between periodic General Queries

car.ipv6 ↗.mld ↗.queryResponseInterval

double

10s

querier: max delay a host may wait before answering a General Query

car.ipv6 ↗.mld ↗.multicastListenerInterval

double

(robustnessVariable * queryInterval) + queryResponseInterval

querier: how long a group stays “has listeners” without a new Report (RV)

car.ipv6 ↗.mld ↗.startupQueryInterval

double

queryInterval / 4

querier: interval between the initial General Queries at startup

car.ipv6 ↗.mld ↗.startupQueryCount

int

robustnessVariable

querier: number of General Queries sent at startup (RV)

car.ipv6 ↗.mld ↗.lastListenerQueryInterval

double

1s

querier: interval between the group-specific Queries sent after a Done

car.ipv6 ↗.mld ↗.lastListenerQueryCount

int

robustnessVariable

querier: number of group-specific Queries sent after a Done (RV)

car.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

car.nl ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.nl ↗.forwardServiceRegistration

bool

true

car.nl ↗.forwardProtocolRegistration

bool

true

car.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

car.nl ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.nl ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.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

car.udp ↗.interfaceTableModule

string

The path to the InterfaceTable module

car.udp ↗.checksumMode

string

“declared”

car.udp ↗.defaultMulticastLoop

bool

true

car.tcp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.tcp ↗.checksumMode

string

“declared”

car.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)

car.tcp ↗.delayedAcksEnabled

bool

false

Delayed ACK algorithm (RFC 1122) enabled/disabled

car.tcp ↗.nagleEnabled

bool

true

Nagle’s algorithm (RFC 896) enabled/disabled

car.tcp ↗.limitedTransmitEnabled

bool

false

Limited Transmit algorithm (RFC 3042) enabled/disabled (can be used for TcpReno/TcpTahoe/TcpNewReno/TcpNoCongestionControl)

car.tcp ↗.increasedIWEnabled

bool

false

Increased Initial Window (RFC 3390) enabled/disabled

car.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)

car.tcp ↗.windowScalingSupport

bool

false

Window Scale (RFC 1323) support (header option) (WS will be enabled for a connection if both endpoints support it)

car.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)

car.tcp ↗.timestampSupport

bool

false

Timestamps (RFC 1323) support (header option) (TS will be enabled for a connection if both endpoints support it)

car.tcp ↗.mss

int

536

Maximum Segment Size (header option). Default 536 per RFC 1122.

car.tcp ↗.msl

int

120s

Maximum Segment Lifetime

car.tcp ↗.tcpAlgorithmClass

string

“TcpReno”

car.tcp ↗.dupthresh

int

3

Used for TcpTahoe, TcpReno, and SACK (RFC 3517) DO NOT change unless you really know what you are doing

car.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…

car.tcp ↗.stopOperationExtraTime

double

0s

Extra time after lifecycle stop operation finished

car.tcp ↗.stopOperationTimeout

double

2s

Timeout value for lifecycle stop operation

car.tcp ↗.ecnWillingness

bool

false

True if willing to use ECN

car.tcp ↗.dctcpGamma

double

0.0625

A fixed estimation gain for calculating dctcp_alpha (RFC 8257 4.2)

car.tcp ↗.pmtudEnabled

bool

false

Path MTU Discovery (RFC 1191, RFC 1981) enabled/disabled

car.tcp ↗.pmtudTimeout

double

600s

Time after which the original MSS is restored to probe for increased path MTU (RFC 1191, Section 6.3)

car.sctp ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.sctp ↗.interfaceTableModule

string

car.sctp ↗.routingTableModule

string

car.sctp ↗.checksumMode

string

“declared”

car.sctp ↗.numGapReports

int

3

car.sctp ↗.rtoInitial

double

3s

car.sctp ↗.rtoMin

double

1s

car.sctp ↗.rtoMax

double

60s

car.sctp ↗.rtoAlpha

double

0.125

car.sctp ↗.rtoBeta

double

0.250

car.sctp ↗.maxBurst

int

4

car.sctp ↗.maxBurstVariant

string

“maxBurst”

car.sctp ↗.initialWindow

int

0

car.sctp ↗.assocMaxRetrans

int

10

car.sctp ↗.pathMaxRetrans

int

5

car.sctp ↗.maxInitRetrans

int

8

car.sctp ↗.sackPeriod

double

200ms

car.sctp ↗.sackFrequency

int

2

car.sctp ↗.reactivatePrimaryPath

bool

false

car.sctp ↗.sendQueueLimit

int

0

car.sctp ↗.validCookieLifetime

double

10s

car.sctp ↗.enableHeartbeats

bool

true

car.sctp ↗.hbInterval

double

30s

car.sctp ↗.sendHeartbeatsOnActivePaths

bool

false

car.sctp ↗.nagleEnabled

bool

true

car.sctp ↗.naglePoint

int

1468

car.sctp ↗.fragPoint

int

1452

Size of a message that has to be fragmented, i.e. maximum size of a fragment

car.sctp ↗.fastRecoverySupported

bool

true

car.sctp ↗.sctpAlgorithmClass

string

“SctpAlg”

car.sctp ↗.ccModule

int

0

RFC4960=0

car.sctp ↗.osbWithHeader

bool

false

car.sctp ↗.RTXMethod

int

0

0=Once after 3 Sacks; 1=once per RTT; 2=Switch off Fast Retransmit; 3=Always after 3 Sacks

car.sctp ↗.ssModule

int

0

ROUND_ROBIN=0

car.sctp ↗.arwnd

int

65535

car.sctp ↗.swsLimit

int

3000

Limit for SWS

car.sctp ↗.udpEncapsEnabled

bool

false

car.sctp ↗.natFriendly

bool

false

car.sctp ↗.bytesToAddPerRcvdChunk

int

0

For flow control

car.sctp ↗.bytesToAddPerPeerChunk

int

0

For flow control

car.sctp ↗.tellArwnd

bool

false

For flow control

car.sctp ↗.messageAcceptLimit

int

0

For flow control

car.sctp ↗.fairStart

double

0s

car.sctp ↗.fairStop

double

0s

car.sctp ↗.streamsToPaths

string

“”

car.sctp ↗.startEndToEndDelay

int

0

car.sctp ↗.stopEndToEndDelay

int

10

car.sctp ↗.throughputInterval

double

1

car.sctp ↗.auth

bool

false

car.sctp ↗.chunks

string

“”

car.sctp ↗.padding

bool

false

car.sctp ↗.addIP

bool

false

car.sctp ↗.addTime

double

0s

car.sctp ↗.addAddress

string

“”

car.sctp ↗.addIpType

string

“0”

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

car.sctp ↗.packetDrop

bool

false

car.sctp ↗.sackNow

bool

false

car.sctp ↗.highSpeedCC

bool

false

car.sctp ↗.checkSackSeqNumber

bool

false

car.sctp ↗.nrSack

bool

false

car.sctp ↗.disableReneging

bool

false

car.sctp ↗.gapReportLimit

int

100000000

car.sctp ↗.gapListOptimizationVariant

string

“none”

car.sctp ↗.smartOverfullSACKHandling

bool

false

car.sctp ↗.allowQoSTracking

bool

false

car.sctp ↗.qosTrackingInterval

double

1.0s

car.sctp ↗.cmtSendAllVariant

string

“normal”

car.sctp ↗.cmtRetransmissionVariant

string

“normal”

car.sctp ↗.cmtCUCVariant

string

“normal”

car.sctp ↗.cmtBufferSplitVariant

string

“none”

car.sctp ↗.cmtBufferSplittingUsesOSB

bool

false

car.sctp ↗.cmtUseSFR

bool

true

car.sctp ↗.cmtUseDAC

bool

true

car.sctp ↗.cmtUseFRC

bool

true

car.sctp ↗.cmtSmartT3Reset

bool

true

car.sctp ↗.cmtSmartFastRTX

bool

true

car.sctp ↗.cmtSmartReneging

bool

false

car.sctp ↗.cmtSlowPathRTTUpdate

bool

false

car.sctp ↗.cmtChunkReschedulingVariant

string

“none”

car.sctp ↗.cmtChunkReschedulingThreshold

double

0.5

car.sctp ↗.cmtMovedChunksReduceCwnd

bool

true

car.sctp ↗.movedChunkFastRTXFactor

double

2.0

car.sctp ↗.cmtSackPath

string

“standard”

car.sctp ↗.strictCwndBooking

bool

false

car.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

car.sctp ↗.cmtCCPathGroups

string

“”

car.sctp ↗.rpPathBlocking

bool

false

car.sctp ↗.rpScaleBlockingTimeout

bool

false

car.sctp ↗.rpMinCwnd

int

1

car.quic ↗.displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

car.quic ↗.routingTableModule

string

Set by StandardHost.

car.quic ↗.sendZeroRttTokenAsServer

bool

false

car.quic ↗.congestionControl

string

“NewReno”

Sets the congestion control algorithm (NewReno or No).

car.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.

car.quic ↗.sendQueueLimit

int

64MB

Sets the limit of the send queue in bytes.

car.quic ↗.sendQueueLowWaterRatio

double

.4

Defines the send queue low water mark relative to the limit.

car.quic ↗.initialMaxData

int

15MB

Connection level flow control credit. Used as own and peer’s value.

car.quic ↗.initialMaxStreamData

int

6MB

Stream level flow control credit for any stream (unidirectional, bidirectional local and remote). Used as own and peer’s value.

car.quic ↗.maxDataFrameThreshold

double

0.5*initialMaxData

Defines when MaxDataFrame in ConnectionFlowControl will be send.

car.quic ↗.maxStreamDataFrameThreshold

double

0.5*initialMaxStreamData

Defines when MaxStreamDataFrame in StreamFlowControl will be send.

car.quic ↗.roundConsumedDataValue

bool

false

If true, FlowControlResponder rounds consumedData in streamRcvBuffer to the next packetSize.

car.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.

car.quic ↗.bundleAckForNonAckElicitingPackets

bool

false

If true, bundles ack for non-ack-eliciting packets in an outgoing packet.

car.quic ↗.numReceivedAckElicitingsBeforeAck

int

2

Number of ack eliciting packets a receiver waits for, before it sends an ACK, immediately.

car.quic ↗.useIBit

bool

false

If true, an ACK frame is sent immediately upon an ack-eliciting packet with the I-Bit set.

car.quic ↗.useDplpmtud

bool

false

If true, uses DPLPMTUD (RFC8899) to determine the PMTU.

car.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.

car.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).

car.quic ↗.dplpmtudMaxProbes

int

3

Specifies the number of probe packet sent for one candidate before given up.

car.quic ↗.dplpmtudUsePtb

bool

true

If true, uses ICMP Packet Too Big (PTB) messages for DPLPMTUD.

car.quic ↗.dplpmtudCandidateSequence

string

“OptBinary”

Specifies the sequence of candidates used for the search algorithm of DPLPMTUD (Up, Down, OptUp, Binary, OptBinary, Jump).

car.quic ↗.skipPacketNumberForDplpmtudProbePackets

bool

false

Specifies whether to skip a packet number for a DPLPMTUD probe packet in order to avoid ack delay.

car.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.

car.quic ↗.sendDataDuringInitalDplpmtudBase

bool

true

If false, waits for DPLPMTUD switching initially to SEARCH before start sending application data.

car.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.

car.quic ↗.pmtuValidatorLostPacketsThreshold

int

2

Specifies the number of lost data packets before assuming a decreased PMTU.

car.quic ↗.pmtuValidatorTimeThreshold

double

-1s

Specifies the time threshold between two lost packets. If negative, pmtuValidatorSrttFactorThreshold is used instead.

car.quic ↗.pmtuValidatorSrttFactorThreshold

int

1

If pmtuValidatorTimeThreshold is negative, this number multiplied by SRTT is used instead.

car.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, …

car.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.

car.quic ↗.reducePacketPtoFactorThreshold

int

3

If reducePacketTimeThreshold is negative, this number multiplied by PTO is used instead.

car.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

car.tn ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.tn ↗.forwardServiceRegistration

bool

true

car.tn ↗.forwardProtocolRegistration

bool

true

car.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

car.tn ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.tn ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.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

car.at ↗.interfaceTableModule

string

Module path to the InterfaceTable ↗ module

car.at ↗.forwardServiceRegistration

bool

true

car.at ↗.forwardProtocolRegistration

bool

true

car.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

car.at ↗.serviceMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ethernetmac”: “bridging”}), overrides automatically learned dispatching; * overrides all learned services, ? overrides default

car.at ↗.protocolMapping

object

{}

Maps protocols to connected submodule names (e.g. {“ipv4”: “bridging”}), overrides automatically learned dispatching; * overrides all learned protocols, ? overrides default

car.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

car.cellularNic.pcapRecorder ↗.verbose

bool

true

Whether to log packets on the module output

car.cellularNic.pcapRecorder ↗.recordEmptyPackets

bool

true

Specifies if zero length packets are recorded or not

car.cellularNic.pcapRecorder ↗.enableConvertingPackets

bool

true

Specifies if converting packets to link type is allowed or not

car.cellularNic.pcapRecorder ↗.pcapFile

string

“”

The PCAP file to be written, suggested value: pcapFile = “${resultdir}/${configname}-#${runnumber}” + fullpath() + “.pcap”

car.cellularNic.pcapRecorder ↗.fileFormat

string

“pcapng”

car.cellularNic.pcapRecorder ↗.snaplen

int

65535

Maximum number of bytes to record per packet

car.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).

car.cellularNic.pcapRecorder ↗.dumpBadFrames

bool

true

Enable dump of frames with hasBitError

car.cellularNic.pcapRecorder ↗.sendingSignalNames

string

“transmissionEnded”

Space-separated list of outbound packet signals to subscribe to

car.cellularNic.pcapRecorder ↗.receivingSignalNames

string

“receptionEnded”

Space-separated list of inbound packet signals to subscribe to

car.cellularNic.pcapRecorder ↗.dumpProtocols

string

“ethernetmac ppp ieee80211mac”

Space-separated list of protocol names as defined in the Protocol class

car.cellularNic.pcapRecorder ↗.packetFilter

object

“*”

Which packets are considered, matches all packets by default

car.cellularNic.pcapRecorder ↗.helpers

string

“”

Usable PcapRecorder::IHelper helpers for accept packettype and store/convert packet as specified linktype

car.cellularNic.pcapRecorder ↗.alwaysFlush

bool

false

Flush the pcapFile after each write to ensure that all packets are captured in case of a crash

car.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

car.cellularNic.ip2nic.binderModule

string

“binder”

car.cellularNic.ip2nic.connectionControlModule

string

“^.rrc.connectionControl”

The node’s control-plane entry point, asked for a bearer on a lookup miss

car.cellularNic.ip2nic.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb, or in the ini for a DC master eNB)

car.cellularNic.ip2nic.hasSdap

bool

false

When true, SDAP handles DRB/RLC assignment; Ip2Nic skips traffic classification

car.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

car.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)

car.cellularNic.ip2nic.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

car.cellularNic.rrc.registration.interfaceTableModule

string

car.cellularNic.rrc.registration.interfaceName

string

“cellular”

car.cellularNic.rrc.registration.routingTableModule

string

car.cellularNic.rrc.registration.binderModule

string

“binder”

car.cellularNic.rrc.registration.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point (see Rrc), told about a multicast group join

car.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

car.cellularNic.rrc.bearerManagement.binderModule

string

“binder”

To reach a peer’s BearerManagement on RLF

car.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

car.cellularNic.rrc.bearerManagement.t311

double

0s

RRC re-establishment cell-selection timer (0 => release-to-IDLE)

car.cellularNic.rrc.bearerManagement.t301

double

0.1s

RRC re-establishment (request -> complete) timer

car.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)

car.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.

car.cellularNic.rrc.bearerManagement.pdcpRelayEntityModuleType

string

“simu5g.stack.pdcp.PdcpRelayEntity”

car.cellularNic.rrc.bearerManagement.dualConnectivityEnabled

bool

false

Set by the NIC; two-leg (split-capable) bearers

car.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)

car.cellularNic.rrc.bearerManagement.lteRlcUmEntityModuleType

string

“simu5g.stack.rlc.LteRlcUmEntity”

car.cellularNic.rrc.bearerManagement.lteRlcAmEntityModuleType

string

“simu5g.stack.rlc.LteRlcAmEntity”

car.cellularNic.rrc.bearerManagement.nrRlcUmEntityModuleType

string

“simu5g.stack.rlc.NrRlcUmEntity”

car.cellularNic.rrc.bearerManagement.nrRlcAmEntityModuleType

string

“simu5g.stack.rlc.NrRlcAmEntity”

car.cellularNic.rrc.bearerManagement.registrationModule

string

“^.registration”

Module references for accessing other stack layers

car.cellularNic.rrc.bearerManagement.drbTableModule

string

“^.drbTable”

car.cellularNic.rrc.bearerManagement.ip2nicModule

string

“^.^.ip2nic”

car.cellularNic.rrc.bearerManagement.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

Attachment-ledger push target (UE only)

car.cellularNic.rrc.bearerManagement.pdcpMuxModule

string

“^.^.pdcpMux”

car.cellularNic.rrc.bearerManagement.pdcpDcMuxModule

string

“^.^.pdcpDcMux”

car.cellularNic.rrc.bearerManagement.d2dModeControllerModule

string

“^.d2dModeController”

car.cellularNic.rrc.bearerManagement.rlcMuxModule

string

“^.^.rlcMux”

car.cellularNic.rrc.bearerManagement.nrRlcMuxModule

string

“^.^.nrRlcMux”

car.cellularNic.rrc.bearerManagement.macModule

string

“^.^.mac”

car.cellularNic.rrc.bearerManagement.nrMacModule

string

“^.^.nrMac”

car.cellularNic.rrc.bearerManagement.sdapModule

string

“^.^.sdap”

Configuration push target; unresolvable (no SDAP on the NIC) = no pushes

car.cellularNic.rrc.bearerManagement.qosFlowClassifierModule

string

“^.^.qosFlowClassifier”

Uplink QFI rule push target; unresolvable (not a UE stack with SDAP) = no pushes

car.cellularNic.rrc.connectionControl.binderModule

string

“binder”

car.cellularNic.rrc.connectionControl.bearerConfiguratorModule

string

“bearerConfigurator”

car.cellularNic.rrc.connectionControl.coreControlModule

string

“coreControl”

car.cellularNic.rrc.connectionControl.bearerManagementModule

string

“^.bearerManagement”

car.cellularNic.rrc.connectionControl.macModule

string

“^.^.mac”

car.cellularNic.rrc.connectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

car.cellularNic.rrc.connectionControl.gtpUserModule

string

“^.^.^.relay.gtpUser”

car.cellularNic.rrc.connectionControl.gtpUserX2Module

string

“^.^.^.gtpUserX2”

car.cellularNic.rrc.connectionControl.macNodeId

int

The base station’s node id; the NIC sets it from the node’s

car.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)

car.cellularNic.rrc.nrConnectionControl.dynamicCellAssociation

bool

false

car.cellularNic.rrc.nrConnectionControl.enableHandover

bool

false

Allows handovers in the UE

car.cellularNic.rrc.nrConnectionControl.isNr

bool

Whether this instance is associated with the NR or the LTE stack

car.cellularNic.rrc.nrConnectionControl.macNodeId

int

MacNodeId of the stack leg this controller belongs to (set by the NIC)

car.cellularNic.rrc.nrConnectionControl.sessionType

string

The type of the session the UE requests at connection setup (see LteUe), set by the NIC

car.cellularNic.rrc.nrConnectionControl.handoverLatency

double

50ms

Handover duration

car.cellularNic.rrc.nrConnectionControl.handoverDetachmentTime

double

handoverLatency > 0s ? handoverLatency/2 : 25ms

car.cellularNic.rrc.nrConnectionControl.handoverAttachmentTime

double

handoverLatency > 0s ? handoverLatency-handoverDetachmentTime : handoverDetachmentTime

car.cellularNic.rrc.nrConnectionControl.minRssiDefault

bool

true

Whether minRssi is taken from PhyPisaData instead of the minRssi parameter

car.cellularNic.rrc.nrConnectionControl.minRssi

double

-99.0dB

Configurable minimum threshold RSSI for attaching to an eNB (meaningful only if minRssiDefault==false)

car.cellularNic.rrc.nrConnectionControl.hysteresisFactor

double

10

car.cellularNic.rrc.nrConnectionControl.binderModule

string

“binder”

car.cellularNic.rrc.nrConnectionControl.macModule

string

“^.^.mac”

car.cellularNic.rrc.nrConnectionControl.bearerManagementModule

string

“^.bearerManagement”

car.cellularNic.rrc.nrConnectionControl.handoverPacketHolderModule

string

“^.^.handoverPacketHolder”

car.cellularNic.rrc.nrConnectionControl.feedbackGeneratorModule

string

“^.^.dlFbGen”

TODO or “^.^.nrDlFbGen”

car.cellularNic.rrc.nrConnectionControl.otherConnectionControlModule

string

“”

car.cellularNic.rrc.nrConnectionControl.hasCollector

bool

false

True when node has a collector module (ueCollector/nrUeCollector) for this PHY module

car.cellularNic.rrc.d2dModeSelection.modeSelectionPeriod

double

1s

car.cellularNic.rrc.d2dModeSelection.binderModule

string

“binder”

car.cellularNic.rrc.d2dModeSelection.d2dBinderModule

string

“d2dBinder”

The network’s D2dBinder, which holds the D2D state

car.cellularNic.rrc.d2dModeSelection.macModule

string

“^.^.mac”

car.cellularNic.rrc.d2dModeSelection.connectionControlModule

string

“^.connectionControl”

The node’s control-plane entry point, which knows the UEs handing over

car.cellularNic.rlcMux.bearerManagementModule

string

“^.rrc.bearerManagement”

car.cellularNic.phy.isNr

bool

false

True for the NR leg (set by NrNicUe/NrNicEnb on their PHY submodule)

car.cellularNic.phy.macNodeId

int

MacNodeId of the stack leg this PHY belongs to (set by the NIC)

car.cellularNic.phy.ueTxPower

double

26dBm

car.cellularNic.phy.eNodeBTxPower

double

46dBm

car.cellularNic.phy.microTxPower

double

30dBm

car.cellularNic.phy.txDirection

string

“OMNI”

car.cellularNic.phy.txAngle

double

0deg

car.cellularNic.phy.binderModule

string

“binder”

car.cellularNic.phy.channelModelModule

string

“^.channelModel[0]”

Set to “^.nrChannelModel[0]” on an NR leg, see NrNicUe

car.cellularNic.phy.connectionControlModule

string

“^.rrc.connectionControl”

car.cellularNic.packetFlowObserver.macModule

string

“^.mac”

car.cellularNic.packetFlowObserver.pdcpModule

string

“^”

car.cellularNic.packetFlowObserver.rlcModule

string

“^”

car.cellularNic.packetFlowObserver.isNrObserver

bool

false

car.cellularNic.packetFlowObserver.pfmType

string

“PacketFlowObserverUe”

car.cellularNic.dlFbGen.isNr

bool

false

True for the NR leg (set by NrNicUe on the nrDlFbGen submodule)

car.cellularNic.dlFbGen.macNodeId

int

MacNodeId of the stack leg this generator belongs to (set by the NIC)

car.cellularNic.dlFbGen.feedbackType

string

“ALLBANDS”

Can be ALLBANDS, PREFERRED, WIDEBAND

car.cellularNic.dlFbGen.rbAllocationType

string

“localized”

Resource allocation type (“distributed” or “localized”)

car.cellularNic.dlFbGen.fbPeriod

int

6tti

Period for Periodic feedback in TTI

car.cellularNic.dlFbGen.fbDelay

int

1tti

Time interval between sensing and transmission in TTI

car.cellularNic.dlFbGen.usePeriodic

bool

true

Whether periodic feedback is used in addition to aperiodic feedback

car.cellularNic.dlFbGen.initialTxMode

string

“SINGLE_ANTENNA_PORT0”

Initial txMode (see LteCommon.h)

car.cellularNic.dlFbGen.binderModule

string

“binder”

car.cellularNic.dlFbGen.phyModule

string

“^.phy”

car.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

car.macTable ↗.agingTime

double

120s

car.macTable ↗.forwardingTable

object

[]

car.macTable ↗.forwardingTableFile

string

“”

car.macTable ↗.interfaceTableModule

string

car.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

car.unstructuredApp.source ↗.packetNameFormat

string

“%a-%c”

See directives in module documentation

car.unstructuredApp.source ↗.packetRepresentation

string

“byteCount”

Determines the chunk of the packet data

car.unstructuredApp.source ↗.packetProtocol

string

“unknown”

car.unstructuredApp.source ↗.packetLength

int

car.unstructuredApp.source ↗.packetData

int

-1

car.unstructuredApp.source ↗.attachCreationTimeTag

bool

true

car.unstructuredApp.source ↗.attachIdentityTag

bool

true

car.unstructuredApp.source ↗.attachDirectionTag

bool

true

car.unstructuredApp.source ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

car.unstructuredApp.source ↗.initialProductionOffset

double

-1s

Initial duration before which packets are not produced. When negative, then produce packet in initialize()

car.unstructuredApp.source ↗.productionInterval

double

Elapsed time between subsequent packets pushed to the connected packet consumer

car.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

car.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

car.unstructuredApp.sink ↗.clockModule

string

“”

Relative path of a module that implements IClock; optional

car.unstructuredApp.sink ↗.initialConsumptionOffset

double

0s

Initial duration before which packets are not consumed

car.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

car.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

car.unstructuredApp.io.interfaceTableModule

string

Relative module path of the interface table

car.unstructuredApp.io.interface

string

“cellular”

The name of the cellular NIC’s interface

Source code

//
// Two ~eNodeB cells on a shared EPC ~PgwStandard, joined by an X2 link, with a
// router and a server behind the core. The cars are ~LteCar nodes created at run
// time by the VeinsInetManager from a SUMO road traffic simulation, so the car[]
// vector is empty in the topology itself.
//
network Highway
{
    parameters:
        double playgroundSizeX @unit(m); // X size of the area the nodes are in (in meters)
        double playgroundSizeY @unit(m); // Y size of the area the nodes are in (in meters)
        double playgroundSizeZ @unit(m); // Z size of the area the nodes are in (in meters)
        @display("bgb=732,483");

    submodules:

        routingRecorder: RoutingTableRecorder {
            @display("p=50,75;is=s");
        }
        configurator: Ipv4NetworkConfigurator {
            @display("p=50,125;is=s");
        }

        //# Veins manager module
        veinsManager: VeinsInetManager {
            @display("p=50,325;is=s");
        }

        //# LTE modules
        channelControl: LteChannelControl {
            @display("p=50,25;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=660,136;is=n;i=device/server");
        }
        router: Router {
            @display("p=561,135;i=device/smallrouter");
        }
        pgw: PgwStandard {
            @display("p=462,136;is=l");
        }
        eNodeB1: eNodeB {
            @display("p=156,136;is=vl");
        }
        eNodeB2: eNodeB {
            @display("p=391,313;is=vl");
        }
        //# submodule vector to store all cars - will be filled dynamically during simulations
        car[0]: LteCar;

    connections allowunconnected:
        server.pppg++ <--> Eth10G <--> router.pppg++;
        router.pppg++ <--> Eth10G <--> pgw.dnPppg;
        pgw.pppg++ <--> Eth10G <--> eNodeB1.ppp;
        pgw.pppg++ <--> Eth10G <--> eNodeB2.ppp;

        //# X2 connections
        eNodeB1.x2++ <--> Eth10G <--> eNodeB2.x2++;
}

File: simulations/lte/cars/Highway.ned