MultiCell_X2Mesh

Package: simu5g.simulations.lte.networks

MultiCell_X2Mesh

network

Three eNodeB cells in a full X2 mesh. Each reaches the EPC PgwStandard through a router of its own, and the server sits directly on the PgwStandard's data-network gate. numUe1, numUe2 and numUe3 LteUe terminals attach per cell, and numExtCells ExtCell cells can be added as interferers.

channelControl : LteChannelControl

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Source:
server: StandardHost {
    @display("p=173,48;is=n;i=device/server");
} pgw : PgwStandard

Implements a simplified EPC PDN Gateway (P-GW) of a 4G LTE network.

Source:
pgw: PgwStandard {
    @display("p=172,287;is=l");
} router1 : Router
[from inet] ↗

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

Source:
router1: Router {
    @display("p=256,286;i=device/smallrouter");
} router2 : Router
[from inet] ↗

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

Source:
router2: Router {
    @display("p=295,135;i=device/smallrouter");
} router3 : Router
[from inet] ↗

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

Source:
router3: Router {
    @display("p=295,453;i=device/smallrouter");
} eNodeB1 : eNodeB

Models an evolved Node B (eNB) of a 4G LTE network.

Source:
eNodeB1: eNodeB {
    @display("p=356,287;is=vl");
} eNodeB2 : eNodeB

Models an evolved Node B (eNB) of a 4G LTE network.

Source:
eNodeB2: eNodeB {
    @display("p=578,136;is=vl");
} eNodeB3 : eNodeB

Models an evolved Node B (eNB) of a 4G LTE network.

Source:
eNodeB3: eNodeB {
    @display("p=578,454;is=vl");
} ue1[numUe1] : LteUe

Models a User Equipment (UE) in a 4G LTE network.

Source:
ue1[numUe1]: LteUe {
    @display("p=421,293");
} ue2[numUe2] : LteUe

Models a User Equipment (UE) in a 4G LTE network.

Source:
ue2[numUe2]: LteUe {
    @display("p=526,235");
} ue3[numUe3] : LteUe

Models a User Equipment (UE) in a 4G LTE network.

Source:
ue3[numUe3]: LteUe {
    @display("p=551,371");
} extCell[numExtCells] : ExtCell

The ExtCell module represents a fictitious cell that is used to model interference from neighboring...

Source:
extCell[numExtCells]: ExtCell {
    @display("p=100,480;is=vl");
}

Usage diagram

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

Parameters

Name Type Default value Description
numUe1 int 0
numUe2 int 0
numUe3 int 0
numExtCells int 0

Properties

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

Unassigned submodule parameters

Name Type Default value Description
channelControl.pMax double 20mW

Maximum sending power used for this network (in mW)

channelControl.sat double -110dBm

Signal attenuation threshold (in dBm)

channelControl.alpha double 2

Path loss coefficient

channelControl.carrierFrequency double 2.4GHz

Base carrier frequency of all the channels (in Hz)

channelControl.numChannels int 1

Number of radio channels (frequencies)

routingRecorder.displayStringTextFormat string ""

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

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

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

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

XML configuration parameters for IP address assignment and adding manual routes

configurator.assignAddresses bool true

Assign IP addresses to all interfaces in the network

configurator.assignUniqueAddresses bool true

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

configurator.assignDisjunctSubnetAddresses bool true

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

configurator.addStaticRoutes bool true

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

configurator.addDefaultRoutes bool true

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

configurator.addSubnetRoutes bool true

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

configurator.addDirectRoutes bool true

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

configurator.addRemoteRoutes bool true

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

configurator.optimizeRoutes bool true

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

configurator.addManualRoutes bool true

Add manual routes from the XML configuration; independent of addStaticRoutes

configurator.updateRoutes bool false

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

configurator.dumpTopology bool false

Print extracted network topology to the module output

configurator.dumpLinks bool false

Print recognized network links to the module output

configurator.dumpAddresses bool false

Print assigned IP addresses for all interfaces to the module output

configurator.dumpRoutes bool false

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

configurator.dumpConfig string ""

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

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

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

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

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

bearerConfigurator.dlQfiRules object [{dscpAsQfi: true}]

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

bearerConfigurator.ulQfiRules object []

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

bearerConfigurator.amPerThreshold double 1e-4

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

bearerConfigurator.lcgPriorityBounds object [25, 50, 75]

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

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

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

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

Carrier Frequency (GHz)

carrierAggregation.componentCarrier.numBands int 6

Number of bands for this channel

carrierAggregation.componentCarrier.numerologyIndex int 0

Numerology index

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

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

server.status.initialStatus string "UP"

TODO @signal, @statistic

server.environment.displayStringTextFormat string ""

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

server.environment.initStage int 0

Initialization stage for the setup command

server.environment.globalNamespace bool false

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

server.environment.namespace string ""

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

server.environment.setupCommand string ""

A host OS system command

server.environment.teardownCommand string ""

A host OS system command

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

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

server.pcapRecorder.verbose bool true

Whether to log packets on the module output

server.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

server.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

server.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

server.pcapRecorder.timePrecision int 6

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

server.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

server.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

server.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

server.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

server.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

server.pcapRecorder.helpers string ""

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

server.pcapRecorder.alwaysFlush bool false

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

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

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

server.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

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

server.cb.interfaceTableModule string

Module path to the InterfaceTable module

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

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

server.cb.serviceMapping object {}

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

server.cb.protocolMapping object {}

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

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

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

server.bl.interfaceTableModule string

Module path to the InterfaceTable module

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

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

server.bl.serviceMapping object {}

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

server.bl.protocolMapping object {}

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

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

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

server.li.interfaceTableModule string

Module path to the InterfaceTable module

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

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

server.li.serviceMapping object {}

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

server.li.protocolMapping object {}

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

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

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

server.nl.interfaceTableModule string

Module path to the InterfaceTable module

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

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

server.nl.serviceMapping object {}

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

server.nl.protocolMapping object {}

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

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

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

server.tn.interfaceTableModule string

Module path to the InterfaceTable module

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

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

server.tn.serviceMapping object {}

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

server.tn.protocolMapping object {}

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

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

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

server.at.interfaceTableModule string

Module path to the InterfaceTable module

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

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

server.at.serviceMapping object {}

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

server.at.protocolMapping object {}

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

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"

TODO @signal, @statistic

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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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.eth.bitrate double
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.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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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"
router1.status.displayStringTextFormat string "{stateStr}"

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

router1.status.initialStatus string "UP"

TODO @signal, @statistic

router1.environment.displayStringTextFormat string ""

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

router1.environment.initStage int 0

Initialization stage for the setup command

router1.environment.globalNamespace bool false

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

router1.environment.namespace string ""

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

router1.environment.setupCommand string ""

A host OS system command

router1.environment.teardownCommand string ""

A host OS system command

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

router1.pcapRecorder.verbose bool true

Whether to log packets on the module output

router1.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

router1.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

router1.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

router1.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

router1.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

router1.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

router1.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

router1.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

router1.pcapRecorder.helpers string ""

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

router1.pcapRecorder.alwaysFlush bool false

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

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

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

router1.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

router1.cb.interfaceTableModule string

Module path to the InterfaceTable module

router1.cb.forwardServiceRegistration bool true
router1.cb.forwardProtocolRegistration bool true
router1.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

router1.cb.serviceMapping object {}

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

router1.cb.protocolMapping object {}

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

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

router1.bl.interfaceTableModule string

Module path to the InterfaceTable module

router1.bl.forwardServiceRegistration bool true
router1.bl.forwardProtocolRegistration bool true
router1.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

router1.bl.serviceMapping object {}

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

router1.bl.protocolMapping object {}

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

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

router1.li.interfaceTableModule string

Module path to the InterfaceTable module

router1.li.forwardServiceRegistration bool true
router1.li.forwardProtocolRegistration bool true
router1.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

router1.li.serviceMapping object {}

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

router1.li.protocolMapping object {}

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

router1.eth.bitrate double
router1.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

router1.nl.interfaceTableModule string

Module path to the InterfaceTable module

router1.nl.forwardServiceRegistration bool true
router1.nl.forwardProtocolRegistration bool true
router1.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

router1.nl.serviceMapping object {}

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

router1.nl.protocolMapping object {}

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

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

router1.tn.interfaceTableModule string

Module path to the InterfaceTable module

router1.tn.forwardServiceRegistration bool true
router1.tn.forwardProtocolRegistration bool true
router1.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

router1.tn.serviceMapping object {}

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

router1.tn.protocolMapping object {}

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

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

router1.at.interfaceTableModule string

Module path to the InterfaceTable module

router1.at.forwardServiceRegistration bool true
router1.at.forwardProtocolRegistration bool true
router1.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

router1.at.serviceMapping object {}

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

router1.at.protocolMapping object {}

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

router1.bgp.interfaceTableModule string

The path to the InterfaceTable module

router1.bgp.routingTableModule string
router1.bgp.addressFamily string

address family this BGP instance operates on

router1.bgp.routerId string

the 4-octet BGP Identifier (required for IPv6)

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

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

router2.status.initialStatus string "UP"

TODO @signal, @statistic

router2.environment.displayStringTextFormat string ""

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

router2.environment.initStage int 0

Initialization stage for the setup command

router2.environment.globalNamespace bool false

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

router2.environment.namespace string ""

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

router2.environment.setupCommand string ""

A host OS system command

router2.environment.teardownCommand string ""

A host OS system command

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

router2.pcapRecorder.verbose bool true

Whether to log packets on the module output

router2.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

router2.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

router2.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

router2.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

router2.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

router2.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

router2.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

router2.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

router2.pcapRecorder.helpers string ""

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

router2.pcapRecorder.alwaysFlush bool false

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

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

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

router2.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

router2.cb.interfaceTableModule string

Module path to the InterfaceTable module

router2.cb.forwardServiceRegistration bool true
router2.cb.forwardProtocolRegistration bool true
router2.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

router2.cb.serviceMapping object {}

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

router2.cb.protocolMapping object {}

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

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

router2.bl.interfaceTableModule string

Module path to the InterfaceTable module

router2.bl.forwardServiceRegistration bool true
router2.bl.forwardProtocolRegistration bool true
router2.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

router2.bl.serviceMapping object {}

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

router2.bl.protocolMapping object {}

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

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

router2.li.interfaceTableModule string

Module path to the InterfaceTable module

router2.li.forwardServiceRegistration bool true
router2.li.forwardProtocolRegistration bool true
router2.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

router2.li.serviceMapping object {}

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

router2.li.protocolMapping object {}

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

router2.eth.bitrate double
router2.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

router2.nl.interfaceTableModule string

Module path to the InterfaceTable module

router2.nl.forwardServiceRegistration bool true
router2.nl.forwardProtocolRegistration bool true
router2.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

router2.nl.serviceMapping object {}

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

router2.nl.protocolMapping object {}

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

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

router2.tn.interfaceTableModule string

Module path to the InterfaceTable module

router2.tn.forwardServiceRegistration bool true
router2.tn.forwardProtocolRegistration bool true
router2.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

router2.tn.serviceMapping object {}

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

router2.tn.protocolMapping object {}

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

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

router2.at.interfaceTableModule string

Module path to the InterfaceTable module

router2.at.forwardServiceRegistration bool true
router2.at.forwardProtocolRegistration bool true
router2.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

router2.at.serviceMapping object {}

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

router2.at.protocolMapping object {}

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

router2.bgp.interfaceTableModule string

The path to the InterfaceTable module

router2.bgp.routingTableModule string
router2.bgp.addressFamily string

address family this BGP instance operates on

router2.bgp.routerId string

the 4-octet BGP Identifier (required for IPv6)

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

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

router3.status.initialStatus string "UP"

TODO @signal, @statistic

router3.environment.displayStringTextFormat string ""

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

router3.environment.initStage int 0

Initialization stage for the setup command

router3.environment.globalNamespace bool false

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

router3.environment.namespace string ""

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

router3.environment.setupCommand string ""

A host OS system command

router3.environment.teardownCommand string ""

A host OS system command

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

router3.pcapRecorder.verbose bool true

Whether to log packets on the module output

router3.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

router3.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

router3.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

router3.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

router3.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

router3.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

router3.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

router3.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

router3.pcapRecorder.helpers string ""

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

router3.pcapRecorder.alwaysFlush bool false

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

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

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

router3.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

router3.cb.interfaceTableModule string

Module path to the InterfaceTable module

router3.cb.forwardServiceRegistration bool true
router3.cb.forwardProtocolRegistration bool true
router3.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

router3.cb.serviceMapping object {}

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

router3.cb.protocolMapping object {}

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

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

router3.bl.interfaceTableModule string

Module path to the InterfaceTable module

router3.bl.forwardServiceRegistration bool true
router3.bl.forwardProtocolRegistration bool true
router3.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

router3.bl.serviceMapping object {}

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

router3.bl.protocolMapping object {}

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

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

router3.li.interfaceTableModule string

Module path to the InterfaceTable module

router3.li.forwardServiceRegistration bool true
router3.li.forwardProtocolRegistration bool true
router3.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

router3.li.serviceMapping object {}

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

router3.li.protocolMapping object {}

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

router3.eth.bitrate double
router3.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

router3.nl.interfaceTableModule string

Module path to the InterfaceTable module

router3.nl.forwardServiceRegistration bool true
router3.nl.forwardProtocolRegistration bool true
router3.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

router3.nl.serviceMapping object {}

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

router3.nl.protocolMapping object {}

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

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

router3.tn.interfaceTableModule string

Module path to the InterfaceTable module

router3.tn.forwardServiceRegistration bool true
router3.tn.forwardProtocolRegistration bool true
router3.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

router3.tn.serviceMapping object {}

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

router3.tn.protocolMapping object {}

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

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

router3.at.interfaceTableModule string

Module path to the InterfaceTable module

router3.at.forwardServiceRegistration bool true
router3.at.forwardProtocolRegistration bool true
router3.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

router3.at.serviceMapping object {}

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

router3.at.protocolMapping object {}

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

router3.bgp.interfaceTableModule string

The path to the InterfaceTable module

router3.bgp.routingTableModule string
router3.bgp.addressFamily string

address family this BGP instance operates on

router3.bgp.routerId string

the 4-octet BGP Identifier (required for IPv6)

router3.bgp.ospfRoutingModule string parent.hasOspf ? "^.ospf" : ""
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.collector.collectorType string

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

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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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.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
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
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.collector.collectorType string

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

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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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 currently available: "inet::AckingMacToEthernetPcapRecorderHelper"

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.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.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
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
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
eNodeB3.interfaceTable.displayStringTextFormat string "{numInterfaces} interfaces"

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

eNodeB3.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

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

eNodeB3.mobility.coordinateSystemModule string ""

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

eNodeB3.mobility.updateDisplayString bool true

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

eNodeB3.mobility.constraintAreaMinX double -inf m

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

eNodeB3.mobility.constraintAreaMinY double -inf m

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

eNodeB3.mobility.constraintAreaMinZ double -inf m

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

eNodeB3.mobility.constraintAreaMaxX double inf m

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

eNodeB3.mobility.constraintAreaMaxY double inf m

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

eNodeB3.mobility.constraintAreaMaxZ double inf m

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

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

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

eNodeB3.mobility.updateFromDisplayString bool true

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

eNodeB3.cellInfo.constraintAreaMinX double -1m/0

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

eNodeB3.cellInfo.constraintAreaMinY double -1m/0

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

eNodeB3.cellInfo.constraintAreaMaxX double 1m/0

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

eNodeB3.cellInfo.constraintAreaMaxY double 1m/0

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

eNodeB3.cellInfo.beaconInterval double 1s

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

eNodeB3.cellInfo.microCell bool false

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

eNodeB3.cellInfo.rbyDl int 12

Number of sub-carriers per RB in DL

eNodeB3.cellInfo.rbyUl int 12

Number of sub-carriers per RB in UL

eNodeB3.cellInfo.rbxDl int 7

Number of OFDM symbols per slot in DL

eNodeB3.cellInfo.rbxUl int 7

Number of OFDM symbols per slot in UL

eNodeB3.cellInfo.rbPilotDl int 3

Number of pilot Resource Elements per RB in DL

eNodeB3.cellInfo.rbPilotUl int 0

Number of pilot Resource Elements per RB in UL

eNodeB3.cellInfo.signalDl int 1

Number of signaling symbols for each Resource Block in DL

eNodeB3.cellInfo.signalUl int 1

Number of signaling symbols for each Resource Block in UL

eNodeB3.cellInfo.numPreferredBands int 1

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

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

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

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

eNodeB3.pppIf.pcapRecorder.verbose bool true

Whether to log packets on the module output

eNodeB3.pppIf.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

eNodeB3.pppIf.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

eNodeB3.pppIf.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

eNodeB3.pppIf.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

eNodeB3.pppIf.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

eNodeB3.pppIf.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

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

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

eNodeB3.pppIf.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

eNodeB3.pppIf.pcapRecorder.helpers string ""

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

eNodeB3.pppIf.pcapRecorder.alwaysFlush bool false

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

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

eNodeB3.pppIf.ppp.interfaceTableModule string

The path to the InterfaceTable module

eNodeB3.pppIf.ppp.sendRawBytes bool false

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

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

Extra time after lifecycle stop operation finished

eNodeB3.pppIf.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

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

eNodeB3.x2ppp.pcapRecorder.verbose bool true

Whether to log packets on the module output

eNodeB3.x2ppp.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

eNodeB3.x2ppp.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

eNodeB3.x2ppp.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

eNodeB3.x2ppp.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

eNodeB3.x2ppp.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

eNodeB3.x2ppp.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

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

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

eNodeB3.x2ppp.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

eNodeB3.x2ppp.pcapRecorder.helpers string ""

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

eNodeB3.x2ppp.pcapRecorder.alwaysFlush bool false

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

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

eNodeB3.x2ppp.ppp.interfaceTableModule string

The path to the InterfaceTable module

eNodeB3.x2ppp.ppp.sendRawBytes bool false

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

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

Extra time after lifecycle stop operation finished

eNodeB3.x2ppp.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

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

eNodeB3.pppMEHostIf.pcapRecorder.verbose bool true

Whether to log packets on the module output

eNodeB3.pppMEHostIf.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

eNodeB3.pppMEHostIf.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

eNodeB3.pppMEHostIf.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

eNodeB3.pppMEHostIf.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

eNodeB3.pppMEHostIf.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

eNodeB3.pppMEHostIf.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

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

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

eNodeB3.pppMEHostIf.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

eNodeB3.pppMEHostIf.pcapRecorder.helpers string ""

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

eNodeB3.pppMEHostIf.pcapRecorder.alwaysFlush bool false

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

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

eNodeB3.pppMEHostIf.ppp.interfaceTableModule string

The path to the InterfaceTable module

eNodeB3.pppMEHostIf.ppp.sendRawBytes bool false

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

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

Extra time after lifecycle stop operation finished

eNodeB3.pppMEHostIf.ppp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

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

eNodeB3.udp.interfaceTableModule string

The path to the InterfaceTable module

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

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

eNodeB3.tcp.checksumMode string "declared"
eNodeB3.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)

eNodeB3.tcp.delayedAcksEnabled bool false

Delayed ACK algorithm (RFC 1122) enabled/disabled

eNodeB3.tcp.nagleEnabled bool true

Nagle's algorithm (RFC 896) enabled/disabled

eNodeB3.tcp.limitedTransmitEnabled bool false

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

eNodeB3.tcp.increasedIWEnabled bool false

Increased Initial Window (RFC 3390) enabled/disabled

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

eNodeB3.tcp.windowScalingSupport bool false

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

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

eNodeB3.tcp.timestampSupport bool false

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

eNodeB3.tcp.mss int 536

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

eNodeB3.tcp.msl int 120s

Maximum Segment Lifetime

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

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

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

eNodeB3.tcp.stopOperationExtraTime double 0s

Extra time after lifecycle stop operation finished

eNodeB3.tcp.stopOperationTimeout double 2s

Timeout value for lifecycle stop operation

eNodeB3.tcp.ecnWillingness bool false

True if willing to use ECN

eNodeB3.tcp.dctcpGamma double 0.0625

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

eNodeB3.tcp.pmtudEnabled bool false

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

eNodeB3.tcp.pmtudTimeout double 600s

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

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

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

eNodeB3.x2App.client.localAddress string ""

Comma-separated list of addresses

eNodeB3.x2App.client.localPort int 0

Port number to listen on

eNodeB3.x2App.client.connectAddress string

Server address (may be symbolic)

eNodeB3.x2App.client.connectPort int 5000

Port number to connect to

eNodeB3.x2App.client.startTime double 0s

Time the first session begins

eNodeB3.x2App.client.numRequestsPerSession int 1

Number of requests sent per session

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

Length of a request (bytes)

eNodeB3.x2App.client.thinkTime double 0s

Time gap between requests

eNodeB3.x2App.client.waitToClose double 0s

Time to wait between the last message sent and abort

eNodeB3.x2App.client.reconnectInterval double 0s

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

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

Echoes received packages when true

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

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

eNodeB3.x2App.client.prValue double 0

For PR-SCTP

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

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

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

Time of finishing sending, negative values mean forever

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

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

eNodeB3.x2App.server.localAddress string ""

Comma-separated list of addresses

eNodeB3.x2App.server.localPort int 0

Port number to listen on

eNodeB3.x2App.server.echo bool false

Echoes received packages when true

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

Number of requests sent per session

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

Length of a request (bytes)

eNodeB3.x2App.server.thinkTime double 0s

Time gap between requests

eNodeB3.x2App.server.waitToClose double 0s

Time to wait between last message sent and abort

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

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

eNodeB3.x2App.server.prValue double 0

For PR-SCTP

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

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

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

RFC4960=0

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

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

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

Limit for SWS

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

For flow control

eNodeB3.sctp.bytesToAddPerPeerChunk int 0

For flow control

eNodeB3.sctp.tellArwnd bool false

For flow control

eNodeB3.sctp.messageAcceptLimit int 0

For flow control

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

SET_PRIMARY_ADDRESS=49156,ADD_IP_ADDRESS=49153,DELETE_IP_ADDRESS=49154

eNodeB3.sctp.packetDrop bool false
eNodeB3.sctp.sackNow bool false
eNodeB3.sctp.highSpeedCC bool false
eNodeB3.sctp.checkSackSeqNumber bool false
eNodeB3.sctp.nrSack bool false
eNodeB3.sctp.disableReneging bool false
eNodeB3.sctp.gapReportLimit int 100000000
eNodeB3.sctp.gapListOptimizationVariant string "none"
eNodeB3.sctp.smartOverfullSACKHandling bool false
eNodeB3.sctp.allowQoSTracking bool false
eNodeB3.sctp.qosTrackingInterval double 1.0s
eNodeB3.sctp.cmtSendAllVariant string "normal"
eNodeB3.sctp.cmtRetransmissionVariant string "normal"
eNodeB3.sctp.cmtCUCVariant string "normal"
eNodeB3.sctp.cmtBufferSplitVariant string "none"
eNodeB3.sctp.cmtBufferSplittingUsesOSB bool false
eNodeB3.sctp.cmtUseSFR bool true
eNodeB3.sctp.cmtUseDAC bool true
eNodeB3.sctp.cmtUseFRC bool true
eNodeB3.sctp.cmtSmartT3Reset bool true
eNodeB3.sctp.cmtSmartFastRTX bool true
eNodeB3.sctp.cmtSmartReneging bool false
eNodeB3.sctp.cmtSlowPathRTTUpdate bool false
eNodeB3.sctp.cmtChunkReschedulingVariant string "none"
eNodeB3.sctp.cmtChunkReschedulingThreshold double 0.5
eNodeB3.sctp.cmtMovedChunksReduceCwnd bool true
eNodeB3.sctp.movedChunkFastRTXFactor double 2.0
eNodeB3.sctp.cmtSackPath string "standard"
eNodeB3.sctp.strictCwndBooking bool false
eNodeB3.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

eNodeB3.sctp.cmtCCPathGroups string ""
eNodeB3.sctp.rpPathBlocking bool false
eNodeB3.sctp.rpScaleBlockingTimeout bool false
eNodeB3.sctp.rpMinCwnd int 1
eNodeB3.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

eNodeB3.at.interfaceTableModule string

Module path to the InterfaceTable module

eNodeB3.at.forwardServiceRegistration bool true
eNodeB3.at.forwardProtocolRegistration bool true
eNodeB3.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

eNodeB3.at.serviceMapping object {}

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

eNodeB3.at.protocolMapping object {}

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

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

eNodeB3.tn.interfaceTableModule string

Module path to the InterfaceTable module

eNodeB3.tn.forwardServiceRegistration bool true
eNodeB3.tn.forwardProtocolRegistration bool true
eNodeB3.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

eNodeB3.tn.serviceMapping object {}

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

eNodeB3.tn.protocolMapping object {}

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

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

eNodeB3.nl.interfaceTableModule string

Module path to the InterfaceTable module

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

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

eNodeB3.nl.protocolMapping object {}

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

eNodeB3.relay.trafficFlowFilter.binderModule string "binder"
eNodeB3.relay.trafficFlowFilter.fastForwarding bool true
eNodeB3.relay.gtpUser.binderModule string "binder"
eNodeB3.relay.gtpUser.localPort int 31
eNodeB3.relay.gtpUser.tunnelPeerPort int 31
eNodeB3.gtpUserX2.binderModule string "binder"
eNodeB3.gtpUserX2.localPort int 32
eNodeB3.gtpUserX2.tunnelPeerPort int 32
ue1.status.displayStringTextFormat string "{stateStr}"

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

ue1.status.initialStatus string "UP"

TODO @signal, @statistic

ue1.environment.displayStringTextFormat string ""

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

ue1.environment.initStage int 0

Initialization stage for the setup command

ue1.environment.globalNamespace bool false

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

ue1.environment.namespace string ""

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

ue1.environment.setupCommand string ""

A host OS system command

ue1.environment.teardownCommand string ""

A host OS system command

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

ue1.pcapRecorder.verbose bool true

Whether to log packets on the module output

ue1.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

ue1.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

ue1.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

ue1.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

ue1.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

ue1.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

ue1.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

ue1.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

ue1.pcapRecorder.helpers string ""

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

ue1.pcapRecorder.alwaysFlush bool false

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

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

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

ue1.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

ue1.cb.interfaceTableModule string

Module path to the InterfaceTable module

ue1.cb.forwardServiceRegistration bool true
ue1.cb.forwardProtocolRegistration bool true
ue1.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

ue1.cb.serviceMapping object {}

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

ue1.cb.protocolMapping object {}

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

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

ue1.bl.interfaceTableModule string

Module path to the InterfaceTable module

ue1.bl.forwardServiceRegistration bool true
ue1.bl.forwardProtocolRegistration bool true
ue1.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

ue1.bl.serviceMapping object {}

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

ue1.bl.protocolMapping object {}

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

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

ue1.li.interfaceTableModule string

Module path to the InterfaceTable module

ue1.li.forwardServiceRegistration bool true
ue1.li.forwardProtocolRegistration bool true
ue1.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

ue1.li.serviceMapping object {}

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

ue1.li.protocolMapping object {}

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

ue1.eth.bitrate double
ue1.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

ue1.nl.interfaceTableModule string

Module path to the InterfaceTable module

ue1.nl.forwardServiceRegistration bool true
ue1.nl.forwardProtocolRegistration bool true
ue1.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

ue1.nl.serviceMapping object {}

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

ue1.nl.protocolMapping object {}

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

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

ue1.tn.interfaceTableModule string

Module path to the InterfaceTable module

ue1.tn.forwardServiceRegistration bool true
ue1.tn.forwardProtocolRegistration bool true
ue1.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

ue1.tn.serviceMapping object {}

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

ue1.tn.protocolMapping object {}

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

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

ue1.at.interfaceTableModule string

Module path to the InterfaceTable module

ue1.at.forwardServiceRegistration bool true
ue1.at.forwardProtocolRegistration bool true
ue1.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

ue1.at.serviceMapping object {}

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

ue1.at.protocolMapping object {}

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

ue1.macTable.agingTime double
ue1.macTable.forwardingTableFile string
ue2.status.displayStringTextFormat string "{stateStr}"

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

ue2.status.initialStatus string "UP"

TODO @signal, @statistic

ue2.environment.displayStringTextFormat string ""

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

ue2.environment.initStage int 0

Initialization stage for the setup command

ue2.environment.globalNamespace bool false

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

ue2.environment.namespace string ""

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

ue2.environment.setupCommand string ""

A host OS system command

ue2.environment.teardownCommand string ""

A host OS system command

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

ue2.pcapRecorder.verbose bool true

Whether to log packets on the module output

ue2.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

ue2.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

ue2.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

ue2.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

ue2.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

ue2.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

ue2.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

ue2.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

ue2.pcapRecorder.helpers string ""

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

ue2.pcapRecorder.alwaysFlush bool false

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

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

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

ue2.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

ue2.cb.interfaceTableModule string

Module path to the InterfaceTable module

ue2.cb.forwardServiceRegistration bool true
ue2.cb.forwardProtocolRegistration bool true
ue2.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

ue2.cb.serviceMapping object {}

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

ue2.cb.protocolMapping object {}

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

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

ue2.bl.interfaceTableModule string

Module path to the InterfaceTable module

ue2.bl.forwardServiceRegistration bool true
ue2.bl.forwardProtocolRegistration bool true
ue2.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

ue2.bl.serviceMapping object {}

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

ue2.bl.protocolMapping object {}

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

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

ue2.li.interfaceTableModule string

Module path to the InterfaceTable module

ue2.li.forwardServiceRegistration bool true
ue2.li.forwardProtocolRegistration bool true
ue2.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

ue2.li.serviceMapping object {}

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

ue2.li.protocolMapping object {}

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

ue2.eth.bitrate double
ue2.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

ue2.nl.interfaceTableModule string

Module path to the InterfaceTable module

ue2.nl.forwardServiceRegistration bool true
ue2.nl.forwardProtocolRegistration bool true
ue2.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

ue2.nl.serviceMapping object {}

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

ue2.nl.protocolMapping object {}

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

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

ue2.tn.interfaceTableModule string

Module path to the InterfaceTable module

ue2.tn.forwardServiceRegistration bool true
ue2.tn.forwardProtocolRegistration bool true
ue2.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

ue2.tn.serviceMapping object {}

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

ue2.tn.protocolMapping object {}

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

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

ue2.at.interfaceTableModule string

Module path to the InterfaceTable module

ue2.at.forwardServiceRegistration bool true
ue2.at.forwardProtocolRegistration bool true
ue2.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

ue2.at.serviceMapping object {}

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

ue2.at.protocolMapping object {}

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

ue2.macTable.agingTime double
ue2.macTable.forwardingTableFile string
ue3.status.displayStringTextFormat string "{stateStr}"

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

ue3.status.initialStatus string "UP"

TODO @signal, @statistic

ue3.environment.displayStringTextFormat string ""

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

ue3.environment.initStage int 0

Initialization stage for the setup command

ue3.environment.globalNamespace bool false

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

ue3.environment.namespace string ""

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

ue3.environment.setupCommand string ""

A host OS system command

ue3.environment.teardownCommand string ""

A host OS system command

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

ue3.pcapRecorder.verbose bool true

Whether to log packets on the module output

ue3.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

ue3.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

ue3.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

ue3.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

ue3.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

ue3.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

ue3.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

ue3.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

ue3.pcapRecorder.helpers string ""

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

ue3.pcapRecorder.alwaysFlush bool false

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

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

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

ue3.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

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

ue3.cb.interfaceTableModule string

Module path to the InterfaceTable module

ue3.cb.forwardServiceRegistration bool true
ue3.cb.forwardProtocolRegistration bool true
ue3.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

ue3.cb.serviceMapping object {}

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

ue3.cb.protocolMapping object {}

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

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

ue3.bl.interfaceTableModule string

Module path to the InterfaceTable module

ue3.bl.forwardServiceRegistration bool true
ue3.bl.forwardProtocolRegistration bool true
ue3.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

ue3.bl.serviceMapping object {}

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

ue3.bl.protocolMapping object {}

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

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

ue3.li.interfaceTableModule string

Module path to the InterfaceTable module

ue3.li.forwardServiceRegistration bool true
ue3.li.forwardProtocolRegistration bool true
ue3.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

ue3.li.serviceMapping object {}

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

ue3.li.protocolMapping object {}

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

ue3.eth.bitrate double
ue3.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

ue3.nl.interfaceTableModule string

Module path to the InterfaceTable module

ue3.nl.forwardServiceRegistration bool true
ue3.nl.forwardProtocolRegistration bool true
ue3.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

ue3.nl.serviceMapping object {}

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

ue3.nl.protocolMapping object {}

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

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

ue3.tn.interfaceTableModule string

Module path to the InterfaceTable module

ue3.tn.forwardServiceRegistration bool true
ue3.tn.forwardProtocolRegistration bool true
ue3.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

ue3.tn.serviceMapping object {}

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

ue3.tn.protocolMapping object {}

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

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

ue3.at.interfaceTableModule string

Module path to the InterfaceTable module

ue3.at.forwardServiceRegistration bool true
ue3.at.forwardProtocolRegistration bool true
ue3.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

ue3.at.serviceMapping object {}

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

ue3.at.protocolMapping object {}

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

ue3.macTable.agingTime double
ue3.macTable.forwardingTableFile string
extCell.binderModule string "binder"
extCell.positionX double 0m

Coordinates

extCell.positionY double 0m
extCell.positionZ double 0m
extCell.txPower double 46dBm

Transmission power

extCell.txDirection string "OMNI"

Transmission direction

extCell.txAngle double 0deg

Transmission angle

extCell.carrierFrequency double 2GHz

Operating carrier

extCell.numBands int 6

Carrier bandwidth

extCell.bandAllocationType string "FULL_ALLOC"

Allocation management

extCell.bandUtilization double 0.5
extCell.startingOffset int 0

Source code

//
// Three ~eNodeB cells in a full X2 mesh. Each reaches the EPC ~PgwStandard
// through a router of its own, and the server sits directly on the
// ~PgwStandard's data-network gate. numUe1, numUe2 and numUe3 ~LteUe terminals
// attach per cell, and numExtCells ~ExtCell cells can be added as interferers.
//
network MultiCell_X2Mesh
{
    parameters:
        int numUe1 = default(0);
        int numUe2 = default(0);
        int numUe3 = default(0);
        int numExtCells = default(0);
        @display("i=block/network2;bgb=701,558;bgi=background/budapest");
    submodules:
        channelControl: LteChannelControl {
            @display("p=50,25;is=s");
        }
        routingRecorder: RoutingTableRecorder {
            @display("p=50,75;is=s");
        }
        configurator: Ipv4NetworkConfigurator {
            @display("p=50,125;is=s");
        }
        binder: Binder {
            @display("p=50,175;is=s");
        }
        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=173,48;is=n;i=device/server");
        }
        pgw: PgwStandard {
            @display("p=172,287;is=l");
        }
        router1: Router {
            @display("p=256,286;i=device/smallrouter");
        }
        router2: Router {
            @display("p=295,135;i=device/smallrouter");
        }
        router3: Router {
            @display("p=295,453;i=device/smallrouter");
        }
        eNodeB1: eNodeB {
            @display("p=356,287;is=vl");
        }
        eNodeB2: eNodeB {
            @display("p=578,136;is=vl");
        }
        eNodeB3: eNodeB {
            @display("p=578,454;is=vl");
        }
        ue1[numUe1]: LteUe {
            @display("p=421,293");
        }
        ue2[numUe2]: LteUe {
            @display("p=526,235");
        }
        ue3[numUe3]: LteUe {
            @display("p=551,371");
        }
        extCell[numExtCells]: ExtCell {
            @display("p=100,480;is=vl");
        }
    connections:

        server.pppg++ <--> Eth10G <--> pgw.dnPppg;
        pgw.pppg++ <--> Eth10G <--> router1.pppg++;
        pgw.pppg++ <--> Eth10G <--> router2.pppg++;
        pgw.pppg++ <--> Eth10G <--> router3.pppg++;
        router1.pppg++ <--> Eth10G <--> eNodeB1.ppp;
        router2.pppg++ <--> Eth10G <--> eNodeB2.ppp;
        router3.pppg++ <--> Eth10G <--> eNodeB3.ppp;

        //# X2 connections
        eNodeB1.x2++ <--> Eth10G <--> eNodeB2.x2++;
        eNodeB1.x2++ <--> Eth10G <--> eNodeB3.x2++;
        eNodeB2.x2++ <--> Eth10G <--> eNodeB3.x2++;
}
File: simulations/lte/networks/MultiCell_X2Mesh.ned