OneNetArea

Package: inet.examples.ospfv2.areas

OneNetArea

compound module

(no description)

H3 : StandardHost

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

Source:
H3: StandardHost {
    parameters:
        @display("p=550,110;i=device/laptop");
    gates:
        ethg[1];
} N3 : EthernetSwitch

EthernetSwitch models a Layer 2 Ethernet switch with support for various IEEE 802.1 protocols and...

Source:
N3: EthernetSwitch {
    parameters:
        @display("p=400,110");
    gates:
        ethg[2];
} R5 : OspfRouter

A router that uses the Open Shortest Path First version 2 (OSPFv2) routing protocol.

Source:
R5: OspfRouter {
    parameters:
        @display("p=250,110");
    gates:
        ethg[2];
} R4 : OspfRouter

A router that uses the Open Shortest Path First version 2 (OSPFv2) routing protocol.

Source:
R4: OspfRouter {
    parameters:
        @display("p=100,110");
    gates:
        ethg[2];
}

Usage diagram

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

Used in

Name Type Description
OSPF_AreaTest network (no description)

Properties

Name Value Description
display p=10,10;b=404,108

Gates

Name Direction Size Description
ethg [ ] inout

Unassigned submodule parameters

Name Type Default value Description
H3.status.displayStringTextFormat string ""

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

H3.status.initialStatus string "UP"

TODO @signal, @statistic

H3.environment.displayStringTextFormat string ""

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

H3.environment.initStage int 0

Initialization stage for the setup command

H3.environment.globalNamespace bool false

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

H3.environment.namespace string ""

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

H3.environment.setupCommand string ""

A host OS system command

H3.environment.teardownCommand string ""

A host OS system command

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

H3.pcapRecorder.verbose bool true

Whether to log packets on the module output

H3.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

H3.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

H3.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

H3.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

H3.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

H3.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

H3.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

H3.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

H3.pcapRecorder.helpers string ""

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

H3.pcapRecorder.alwaysFlush bool false

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

H3.interfaceTable.displayStringTextFormat string ""

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

H3.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

H3.cb.displayStringTextFormat string "processed %p pk (%l)"

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

H3.cb.interfaceTableModule string

Module path to the ~InterfaceTable module

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

H3.cb.serviceMapping object {}

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

H3.cb.protocolMapping object {}

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

H3.bl.displayStringTextFormat string "processed %p pk (%l)"

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

H3.bl.interfaceTableModule string

Module path to the ~InterfaceTable module

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

H3.bl.serviceMapping object {}

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

H3.bl.protocolMapping object {}

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

H3.li.displayStringTextFormat string "processed %p pk (%l)"

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

H3.li.interfaceTableModule string

Module path to the ~InterfaceTable module

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

H3.li.serviceMapping object {}

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

H3.li.protocolMapping object {}

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

H3.eth.bitrate double
H3.nl.displayStringTextFormat string "processed %p pk (%l)"

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

H3.nl.interfaceTableModule string

Module path to the ~InterfaceTable module

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

H3.nl.serviceMapping object {}

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

H3.nl.protocolMapping object {}

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

H3.tn.displayStringTextFormat string "processed %p pk (%l)"

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

H3.tn.interfaceTableModule string

Module path to the ~InterfaceTable module

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

H3.tn.serviceMapping object {}

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

H3.tn.protocolMapping object {}

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

H3.at.displayStringTextFormat string "processed %p pk (%l)"

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

H3.at.interfaceTableModule string

Module path to the ~InterfaceTable module

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

H3.at.serviceMapping object {}

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

H3.at.protocolMapping object {}

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

N3.macTable.agingTime double
N3.macTable.forwardingTableFile string
N3.interfaceTable.displayStringTextFormat string ""

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

N3.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

N3.status.displayStringTextFormat string ""

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

N3.status.initialStatus string "UP"

TODO @signal, @statistic

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

N3.pcapRecorder.verbose bool true

Whether to log packets on the module output

N3.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

N3.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

N3.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

N3.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

N3.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

N3.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

N3.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

N3.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

N3.pcapRecorder.helpers string ""

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

N3.pcapRecorder.alwaysFlush bool false

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

N3.mrp.ccmInterval double
N3.mrp.mrpRole string
N3.mrp.timingProfile int
N3.mrp.uuid0 int
N3.mrp.uuid1 int
N3.mrp.ringPort1 int
N3.mrp.ringPort2 int
N3.mrp.interconnectionLinkCheckAware bool
N3.mrp.interconnectionRingCheckAware bool
N3.mrp.nonblockingMrcSupported bool
N3.mrp.reactOnLinkChange bool
N3.mrp.visualize bool
N3.stp.helloTime double
N3.stp.forwardDelay double
N3.stp.maxAge double
N3.stp.bridgePriority int
N3.stp.visualize bool
N3.gptp.gptpNodeType string "BRIDGE_NODE"
N3.sc.displayStringTextFormat string "processed %p pk (%l)"

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

N3.sc.interfaceTableModule string

Module path to the ~InterfaceTable module

N3.sc.forwardServiceRegistration bool true
N3.sc.forwardProtocolRegistration bool true
N3.sc.interfaceMapping object {}

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

N3.sc.serviceMapping object {}

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

N3.sc.protocolMapping object {}

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

N3.cb.displayStringTextFormat string "processed %p pk (%l)"

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

N3.cb.interfaceTableModule string

Module path to the ~InterfaceTable module

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

N3.cb.serviceMapping object {}

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

N3.cb.protocolMapping object {}

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

N3.bl.displayStringTextFormat string "processed %p pk (%l)"

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

N3.bl.interfaceTableModule string

Module path to the ~InterfaceTable module

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

N3.bl.serviceMapping object {}

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

N3.bl.protocolMapping object {}

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

N3.li.displayStringTextFormat string "processed %p pk (%l)"

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

N3.li.interfaceTableModule string

Module path to the ~InterfaceTable module

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

N3.li.serviceMapping object {}

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

N3.li.protocolMapping object {}

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

N3.eth.bitrate double
R5.status.displayStringTextFormat string ""

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

R5.status.initialStatus string "UP"

TODO @signal, @statistic

R5.environment.displayStringTextFormat string ""

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

R5.environment.initStage int 0

Initialization stage for the setup command

R5.environment.globalNamespace bool false

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

R5.environment.namespace string ""

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

R5.environment.setupCommand string ""

A host OS system command

R5.environment.teardownCommand string ""

A host OS system command

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

R5.pcapRecorder.verbose bool true

Whether to log packets on the module output

R5.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

R5.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

R5.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

R5.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

R5.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

R5.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

R5.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

R5.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

R5.pcapRecorder.helpers string ""

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

R5.pcapRecorder.alwaysFlush bool false

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

R5.interfaceTable.displayStringTextFormat string ""

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

R5.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

R5.cb.displayStringTextFormat string "processed %p pk (%l)"

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

R5.cb.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R5.cb.serviceMapping object {}

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

R5.cb.protocolMapping object {}

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

R5.bl.displayStringTextFormat string "processed %p pk (%l)"

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

R5.bl.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R5.bl.serviceMapping object {}

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

R5.bl.protocolMapping object {}

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

R5.li.displayStringTextFormat string "processed %p pk (%l)"

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

R5.li.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R5.li.serviceMapping object {}

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

R5.li.protocolMapping object {}

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

R5.eth.bitrate double
R5.nl.displayStringTextFormat string "processed %p pk (%l)"

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

R5.nl.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R5.nl.serviceMapping object {}

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

R5.nl.protocolMapping object {}

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

R5.tn.displayStringTextFormat string "processed %p pk (%l)"

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

R5.tn.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R5.tn.serviceMapping object {}

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

R5.tn.protocolMapping object {}

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

R5.at.displayStringTextFormat string "processed %p pk (%l)"

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

R5.at.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R5.at.serviceMapping object {}

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

R5.at.protocolMapping object {}

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

R5.bgp.interfaceTableModule string

The path to the InterfaceTable module

R5.bgp.routingTableModule string
R5.bgp.ospfRoutingModule string parent.hasOspf ? "^.ospf" : ""
R4.status.displayStringTextFormat string ""

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

R4.status.initialStatus string "UP"

TODO @signal, @statistic

R4.environment.displayStringTextFormat string ""

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

R4.environment.initStage int 0

Initialization stage for the setup command

R4.environment.globalNamespace bool false

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

R4.environment.namespace string ""

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

R4.environment.setupCommand string ""

A host OS system command

R4.environment.teardownCommand string ""

A host OS system command

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

R4.pcapRecorder.verbose bool true

Whether to log packets on the module output

R4.pcapRecorder.recordEmptyPackets bool true

Specifies if zero length packets are recorded or not

R4.pcapRecorder.enableConvertingPackets bool true

Specifies if converting packets to link type is allowed or not

R4.pcapRecorder.pcapFile string ""

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

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

Maximum number of bytes to record per packet

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

R4.pcapRecorder.dumpBadFrames bool true

Enable dump of frames with hasBitError

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

Space-separated list of sibling module names to listen on

R4.pcapRecorder.sendingSignalNames string "transmissionEnded"

Space-separated list of outbound packet signals to subscribe to

R4.pcapRecorder.receivingSignalNames string "receptionEnded"

Space-separated list of inbound packet signals to subscribe to

R4.pcapRecorder.dumpProtocols string "ethernetmac ppp ieee80211mac"

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

R4.pcapRecorder.packetFilter object "*"

Which packets are considered, matches all packets by default

R4.pcapRecorder.helpers string ""

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

R4.pcapRecorder.alwaysFlush bool false

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

R4.interfaceTable.displayStringTextFormat string ""

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

R4.interfaceTable.displayAddresses bool false

Whether to display IP addresses on links

R4.cb.displayStringTextFormat string "processed %p pk (%l)"

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

R4.cb.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R4.cb.serviceMapping object {}

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

R4.cb.protocolMapping object {}

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

R4.bl.displayStringTextFormat string "processed %p pk (%l)"

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

R4.bl.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R4.bl.serviceMapping object {}

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

R4.bl.protocolMapping object {}

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

R4.li.displayStringTextFormat string "processed %p pk (%l)"

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

R4.li.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R4.li.serviceMapping object {}

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

R4.li.protocolMapping object {}

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

R4.eth.bitrate double
R4.nl.displayStringTextFormat string "processed %p pk (%l)"

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

R4.nl.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R4.nl.serviceMapping object {}

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

R4.nl.protocolMapping object {}

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

R4.tn.displayStringTextFormat string "processed %p pk (%l)"

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

R4.tn.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R4.tn.serviceMapping object {}

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

R4.tn.protocolMapping object {}

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

R4.at.displayStringTextFormat string "processed %p pk (%l)"

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

R4.at.interfaceTableModule string

Module path to the ~InterfaceTable module

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

R4.at.serviceMapping object {}

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

R4.at.protocolMapping object {}

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

R4.bgp.interfaceTableModule string

The path to the InterfaceTable module

R4.bgp.routingTableModule string
R4.bgp.ospfRoutingModule string parent.hasOspf ? "^.ospf" : ""

Source code

module OneNetArea
{
    parameters:
        @display("p=10,10;b=404,108");
    gates:
        inout ethg[];
    types:
        channel C extends DatarateChannel
        {
            delay = 0.1us;
            datarate = 100Mbps;
        }
    submodules:
        H3: StandardHost {
            parameters:
                @display("p=550,110;i=device/laptop");
            gates:
                ethg[1];
        }
        N3: EthernetSwitch {
            parameters:
                @display("p=400,110");
            gates:
                ethg[2];
        }
        R5: OspfRouter {
            parameters:
                @display("p=250,110");
            gates:
                ethg[2];
        }
        R4: OspfRouter {
            parameters:
                @display("p=100,110");
            gates:
                ethg[2];
        }
    connections:
        R4.ethg[0] <--> C <--> R5.ethg[1];
        R5.ethg[0] <--> C <--> N3.ethg[1];
        N3.ethg[0] <--> C <--> H3.ethg[0];

        // towards other areas
        ethg[0] <--> R4.ethg[1];
}

File: examples/ospfv2/areas/Area2.ned