Network ConfiguratorE

Package: inet.tutorials.configurator
File: tutorials/configurator/ConfiguratorE.ned

(no description)

AODVRouter AODVRouter AODVRouter AODVRouter AODVRouter AODVRouter AODVRouter IPv4NetworkConfigurator Ieee80211ScalarRadioMedium IntegratedCanvasVisualizer

Usage diagram:

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

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Properties:

Name Value Description
isNetwork
display bgb=939.89996,581.1

Unassigned submodule parameters:

Name Type Default value Description
host1.status.initialStatus string "UP"

TODO @signal, @statistic

host1.routingTable.forwarding bool
host1.routingTable.multicastForwarding bool
host1.interfaceTable.displayAddresses bool false

whether to display IP addresses on links

host1.pcapRecorder.verbose bool false

whether to log packets on the module output

host1.pcapRecorder.pcapFile string ""

the PCAP file to be written

host1.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

host1.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

host1.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*] ext[*]"

space-separated list of sibling module names to listen on

host1.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

host1.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

host1.pcapRecorder.alwaysFlush bool false

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

host1.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

host1.lo0.lo.mtu int 4470B
host1.aodv.routingTableModule string "^.routingTable"
host1.aodv.interfaceTableModule string "^.interfaceTable"
host1.aodv.networkProtocolModule string "^.networkLayer.ip"
host1.aodv.askGratuitousRREP bool false

see RFC 3561: 6.6.3

host1.aodv.useHelloMessages bool false

see RFC 3561: 6.9

host1.aodv.useLocalRepair bool false

see RFC 3561: 6.12 *not implemented yet*

host1.aodv.udpPort int 654
host1.aodv.maxPeriodicJitter double helloInterval / 4

it MUST NOT be negative; it MUST NOT be greater than MESSAGE_INTERVAL/2; it SHOULD NOT be greater than MESSAGE_INTERVAL/4.

host1.aodv.periodicJitter double uniform(0s, maxPeriodicJitter)

jitter for externally triggered message generation and message forwarding

host1.aodv.maxJitter double 5ms

RFC 5148: need more revise: As well as the decision as to whether to use jitter being dependent on the medium access control and lower layers, the selection of the MAXJITTER parameter SHOULD be appropriate to those mechanisms.

host1.aodv.jitter double uniform(0ms, maxJitter)

jitter for broadcasts

host1.aodv.helloInterval double 1s

every helloInterval seconds a node broadcasts Hello messages (if it is necessary)

host1.aodv.allowedHelloLoss int 2

allowedHelloLoss * helloInterval is the lifetime value for Hello messages

host1.aodv.activeRouteTimeout double 3s

the timeout value for cached routes If Hello messages are used, then the ACTIVE_ROUTE_TIMEOUT parameter value MUST be more than the value (ALLOWED_HELLO_LOSS * HELLO_INTERVAL).

host1.aodv.netDiameter int 35

the maximum possible number of hops between two nodes in the network

host1.aodv.nodeTraversalTime double 0.04s

an estimation of the average one-hop traversal time

host1.aodv.rerrRatelimit int 10

maximum number of RERR messages that the AODV may originate in 1s.

host1.aodv.rreqRetries int 2

specifies the number of times AODV will repeat an expanded ring search for a destination

host1.aodv.rreqRatelimit int 10

maximum number of RREQ messages that the AODV may originate in 1s.

host1.aodv.timeoutBuffer int 2

plus time to wait for a delayed RREP (due to congestion) (to omit this buffer set it to 0)

host1.aodv.ttlStart int 2

specifies the TTL value when initiating a route request

host1.aodv.ttlIncrement int 2

specifies the value by which the TTL will be incremented each time a RREQ is retransmitted

host1.aodv.ttlThreshold int 7

the maximum value of TTL over which NET_DIAMETER value will be used to broadcast any RREQ

host1.aodv.localAddTTL int 2

it is used by the formula which calculates the initial TTL of the RREQ for a local repair

host1.aodv.myRouteTimeout double 2 * activeRouteTimeout

the value of the lifetime field that a destination node places in RREPs

host1.aodv.deletePeriod double 5 * max(activeRouteTimeout, helloInterval)

the time after which an expired route is deleted

host1.aodv.blacklistTimeout double rreqRetries * netTraversalTime

the time after which a blacklisted node is removed from the blacklist

host1.aodv.netTraversalTime double 2 * nodeTraversalTime * netDiameter

an estimation of the traversal time for the complete network

host1.aodv.nextHopWait double nodeTraversalTime + 0.01s

timeout for a RREP-ACK

host1.aodv.pathDiscoveryTime double 2 * netTraversalTime

buffer timeout for each broadcasted RREQ message

host2.status.initialStatus string "UP"

TODO @signal, @statistic

host2.routingTable.forwarding bool
host2.routingTable.multicastForwarding bool
host2.interfaceTable.displayAddresses bool false

whether to display IP addresses on links

host2.pcapRecorder.verbose bool false

whether to log packets on the module output

host2.pcapRecorder.pcapFile string ""

the PCAP file to be written

host2.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

host2.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

host2.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*] ext[*]"

space-separated list of sibling module names to listen on

host2.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

host2.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

host2.pcapRecorder.alwaysFlush bool false

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

host2.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

host2.lo0.lo.mtu int 4470B
host2.aodv.routingTableModule string "^.routingTable"
host2.aodv.interfaceTableModule string "^.interfaceTable"
host2.aodv.networkProtocolModule string "^.networkLayer.ip"
host2.aodv.askGratuitousRREP bool false

see RFC 3561: 6.6.3

host2.aodv.useHelloMessages bool false

see RFC 3561: 6.9

host2.aodv.useLocalRepair bool false

see RFC 3561: 6.12 *not implemented yet*

host2.aodv.udpPort int 654
host2.aodv.maxPeriodicJitter double helloInterval / 4

it MUST NOT be negative; it MUST NOT be greater than MESSAGE_INTERVAL/2; it SHOULD NOT be greater than MESSAGE_INTERVAL/4.

host2.aodv.periodicJitter double uniform(0s, maxPeriodicJitter)

jitter for externally triggered message generation and message forwarding

host2.aodv.maxJitter double 5ms

RFC 5148: need more revise: As well as the decision as to whether to use jitter being dependent on the medium access control and lower layers, the selection of the MAXJITTER parameter SHOULD be appropriate to those mechanisms.

host2.aodv.jitter double uniform(0ms, maxJitter)

jitter for broadcasts

host2.aodv.helloInterval double 1s

every helloInterval seconds a node broadcasts Hello messages (if it is necessary)

host2.aodv.allowedHelloLoss int 2

allowedHelloLoss * helloInterval is the lifetime value for Hello messages

host2.aodv.activeRouteTimeout double 3s

the timeout value for cached routes If Hello messages are used, then the ACTIVE_ROUTE_TIMEOUT parameter value MUST be more than the value (ALLOWED_HELLO_LOSS * HELLO_INTERVAL).

host2.aodv.netDiameter int 35

the maximum possible number of hops between two nodes in the network

host2.aodv.nodeTraversalTime double 0.04s

an estimation of the average one-hop traversal time

host2.aodv.rerrRatelimit int 10

maximum number of RERR messages that the AODV may originate in 1s.

host2.aodv.rreqRetries int 2

specifies the number of times AODV will repeat an expanded ring search for a destination

host2.aodv.rreqRatelimit int 10

maximum number of RREQ messages that the AODV may originate in 1s.

host2.aodv.timeoutBuffer int 2

plus time to wait for a delayed RREP (due to congestion) (to omit this buffer set it to 0)

host2.aodv.ttlStart int 2

specifies the TTL value when initiating a route request

host2.aodv.ttlIncrement int 2

specifies the value by which the TTL will be incremented each time a RREQ is retransmitted

host2.aodv.ttlThreshold int 7

the maximum value of TTL over which NET_DIAMETER value will be used to broadcast any RREQ

host2.aodv.localAddTTL int 2

it is used by the formula which calculates the initial TTL of the RREQ for a local repair

host2.aodv.myRouteTimeout double 2 * activeRouteTimeout

the value of the lifetime field that a destination node places in RREPs

host2.aodv.deletePeriod double 5 * max(activeRouteTimeout, helloInterval)

the time after which an expired route is deleted

host2.aodv.blacklistTimeout double rreqRetries * netTraversalTime

the time after which a blacklisted node is removed from the blacklist

host2.aodv.netTraversalTime double 2 * nodeTraversalTime * netDiameter

an estimation of the traversal time for the complete network

host2.aodv.nextHopWait double nodeTraversalTime + 0.01s

timeout for a RREP-ACK

host2.aodv.pathDiscoveryTime double 2 * netTraversalTime

buffer timeout for each broadcasted RREQ message

host3.status.initialStatus string "UP"

TODO @signal, @statistic

host3.routingTable.forwarding bool
host3.routingTable.multicastForwarding bool
host3.interfaceTable.displayAddresses bool false

whether to display IP addresses on links

host3.pcapRecorder.verbose bool false

whether to log packets on the module output

host3.pcapRecorder.pcapFile string ""

the PCAP file to be written

host3.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

host3.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

host3.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*] ext[*]"

space-separated list of sibling module names to listen on

host3.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

host3.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

host3.pcapRecorder.alwaysFlush bool false

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

host3.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

host3.lo0.lo.mtu int 4470B
host3.aodv.routingTableModule string "^.routingTable"
host3.aodv.interfaceTableModule string "^.interfaceTable"
host3.aodv.networkProtocolModule string "^.networkLayer.ip"
host3.aodv.askGratuitousRREP bool false

see RFC 3561: 6.6.3

host3.aodv.useHelloMessages bool false

see RFC 3561: 6.9

host3.aodv.useLocalRepair bool false

see RFC 3561: 6.12 *not implemented yet*

host3.aodv.udpPort int 654
host3.aodv.maxPeriodicJitter double helloInterval / 4

it MUST NOT be negative; it MUST NOT be greater than MESSAGE_INTERVAL/2; it SHOULD NOT be greater than MESSAGE_INTERVAL/4.

host3.aodv.periodicJitter double uniform(0s, maxPeriodicJitter)

jitter for externally triggered message generation and message forwarding

host3.aodv.maxJitter double 5ms

RFC 5148: need more revise: As well as the decision as to whether to use jitter being dependent on the medium access control and lower layers, the selection of the MAXJITTER parameter SHOULD be appropriate to those mechanisms.

host3.aodv.jitter double uniform(0ms, maxJitter)

jitter for broadcasts

host3.aodv.helloInterval double 1s

every helloInterval seconds a node broadcasts Hello messages (if it is necessary)

host3.aodv.allowedHelloLoss int 2

allowedHelloLoss * helloInterval is the lifetime value for Hello messages

host3.aodv.activeRouteTimeout double 3s

the timeout value for cached routes If Hello messages are used, then the ACTIVE_ROUTE_TIMEOUT parameter value MUST be more than the value (ALLOWED_HELLO_LOSS * HELLO_INTERVAL).

host3.aodv.netDiameter int 35

the maximum possible number of hops between two nodes in the network

host3.aodv.nodeTraversalTime double 0.04s

an estimation of the average one-hop traversal time

host3.aodv.rerrRatelimit int 10

maximum number of RERR messages that the AODV may originate in 1s.

host3.aodv.rreqRetries int 2

specifies the number of times AODV will repeat an expanded ring search for a destination

host3.aodv.rreqRatelimit int 10

maximum number of RREQ messages that the AODV may originate in 1s.

host3.aodv.timeoutBuffer int 2

plus time to wait for a delayed RREP (due to congestion) (to omit this buffer set it to 0)

host3.aodv.ttlStart int 2

specifies the TTL value when initiating a route request

host3.aodv.ttlIncrement int 2

specifies the value by which the TTL will be incremented each time a RREQ is retransmitted

host3.aodv.ttlThreshold int 7

the maximum value of TTL over which NET_DIAMETER value will be used to broadcast any RREQ

host3.aodv.localAddTTL int 2

it is used by the formula which calculates the initial TTL of the RREQ for a local repair

host3.aodv.myRouteTimeout double 2 * activeRouteTimeout

the value of the lifetime field that a destination node places in RREPs

host3.aodv.deletePeriod double 5 * max(activeRouteTimeout, helloInterval)

the time after which an expired route is deleted

host3.aodv.blacklistTimeout double rreqRetries * netTraversalTime

the time after which a blacklisted node is removed from the blacklist

host3.aodv.netTraversalTime double 2 * nodeTraversalTime * netDiameter

an estimation of the traversal time for the complete network

host3.aodv.nextHopWait double nodeTraversalTime + 0.01s

timeout for a RREP-ACK

host3.aodv.pathDiscoveryTime double 2 * netTraversalTime

buffer timeout for each broadcasted RREQ message

host4.status.initialStatus string "UP"

TODO @signal, @statistic

host4.routingTable.forwarding bool
host4.routingTable.multicastForwarding bool
host4.interfaceTable.displayAddresses bool false

whether to display IP addresses on links

host4.pcapRecorder.verbose bool false

whether to log packets on the module output

host4.pcapRecorder.pcapFile string ""

the PCAP file to be written

host4.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

host4.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

host4.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*] ext[*]"

space-separated list of sibling module names to listen on

host4.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

host4.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

host4.pcapRecorder.alwaysFlush bool false

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

host4.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

host4.lo0.lo.mtu int 4470B
host4.aodv.routingTableModule string "^.routingTable"
host4.aodv.interfaceTableModule string "^.interfaceTable"
host4.aodv.networkProtocolModule string "^.networkLayer.ip"
host4.aodv.askGratuitousRREP bool false

see RFC 3561: 6.6.3

host4.aodv.useHelloMessages bool false

see RFC 3561: 6.9

host4.aodv.useLocalRepair bool false

see RFC 3561: 6.12 *not implemented yet*

host4.aodv.udpPort int 654
host4.aodv.maxPeriodicJitter double helloInterval / 4

it MUST NOT be negative; it MUST NOT be greater than MESSAGE_INTERVAL/2; it SHOULD NOT be greater than MESSAGE_INTERVAL/4.

host4.aodv.periodicJitter double uniform(0s, maxPeriodicJitter)

jitter for externally triggered message generation and message forwarding

host4.aodv.maxJitter double 5ms

RFC 5148: need more revise: As well as the decision as to whether to use jitter being dependent on the medium access control and lower layers, the selection of the MAXJITTER parameter SHOULD be appropriate to those mechanisms.

host4.aodv.jitter double uniform(0ms, maxJitter)

jitter for broadcasts

host4.aodv.helloInterval double 1s

every helloInterval seconds a node broadcasts Hello messages (if it is necessary)

host4.aodv.allowedHelloLoss int 2

allowedHelloLoss * helloInterval is the lifetime value for Hello messages

host4.aodv.activeRouteTimeout double 3s

the timeout value for cached routes If Hello messages are used, then the ACTIVE_ROUTE_TIMEOUT parameter value MUST be more than the value (ALLOWED_HELLO_LOSS * HELLO_INTERVAL).

host4.aodv.netDiameter int 35

the maximum possible number of hops between two nodes in the network

host4.aodv.nodeTraversalTime double 0.04s

an estimation of the average one-hop traversal time

host4.aodv.rerrRatelimit int 10

maximum number of RERR messages that the AODV may originate in 1s.

host4.aodv.rreqRetries int 2

specifies the number of times AODV will repeat an expanded ring search for a destination

host4.aodv.rreqRatelimit int 10

maximum number of RREQ messages that the AODV may originate in 1s.

host4.aodv.timeoutBuffer int 2

plus time to wait for a delayed RREP (due to congestion) (to omit this buffer set it to 0)

host4.aodv.ttlStart int 2

specifies the TTL value when initiating a route request

host4.aodv.ttlIncrement int 2

specifies the value by which the TTL will be incremented each time a RREQ is retransmitted

host4.aodv.ttlThreshold int 7

the maximum value of TTL over which NET_DIAMETER value will be used to broadcast any RREQ

host4.aodv.localAddTTL int 2

it is used by the formula which calculates the initial TTL of the RREQ for a local repair

host4.aodv.myRouteTimeout double 2 * activeRouteTimeout

the value of the lifetime field that a destination node places in RREPs

host4.aodv.deletePeriod double 5 * max(activeRouteTimeout, helloInterval)

the time after which an expired route is deleted

host4.aodv.blacklistTimeout double rreqRetries * netTraversalTime

the time after which a blacklisted node is removed from the blacklist

host4.aodv.netTraversalTime double 2 * nodeTraversalTime * netDiameter

an estimation of the traversal time for the complete network

host4.aodv.nextHopWait double nodeTraversalTime + 0.01s

timeout for a RREP-ACK

host4.aodv.pathDiscoveryTime double 2 * netTraversalTime

buffer timeout for each broadcasted RREQ message

host5.status.initialStatus string "UP"

TODO @signal, @statistic

host5.routingTable.forwarding bool
host5.routingTable.multicastForwarding bool
host5.interfaceTable.displayAddresses bool false

whether to display IP addresses on links

host5.pcapRecorder.verbose bool false

whether to log packets on the module output

host5.pcapRecorder.pcapFile string ""

the PCAP file to be written

host5.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

host5.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

host5.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*] ext[*]"

space-separated list of sibling module names to listen on

host5.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

host5.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

host5.pcapRecorder.alwaysFlush bool false

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

host5.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

host5.lo0.lo.mtu int 4470B
host5.aodv.routingTableModule string "^.routingTable"
host5.aodv.interfaceTableModule string "^.interfaceTable"
host5.aodv.networkProtocolModule string "^.networkLayer.ip"
host5.aodv.askGratuitousRREP bool false

see RFC 3561: 6.6.3

host5.aodv.useHelloMessages bool false

see RFC 3561: 6.9

host5.aodv.useLocalRepair bool false

see RFC 3561: 6.12 *not implemented yet*

host5.aodv.udpPort int 654
host5.aodv.maxPeriodicJitter double helloInterval / 4

it MUST NOT be negative; it MUST NOT be greater than MESSAGE_INTERVAL/2; it SHOULD NOT be greater than MESSAGE_INTERVAL/4.

host5.aodv.periodicJitter double uniform(0s, maxPeriodicJitter)

jitter for externally triggered message generation and message forwarding

host5.aodv.maxJitter double 5ms

RFC 5148: need more revise: As well as the decision as to whether to use jitter being dependent on the medium access control and lower layers, the selection of the MAXJITTER parameter SHOULD be appropriate to those mechanisms.

host5.aodv.jitter double uniform(0ms, maxJitter)

jitter for broadcasts

host5.aodv.helloInterval double 1s

every helloInterval seconds a node broadcasts Hello messages (if it is necessary)

host5.aodv.allowedHelloLoss int 2

allowedHelloLoss * helloInterval is the lifetime value for Hello messages

host5.aodv.activeRouteTimeout double 3s

the timeout value for cached routes If Hello messages are used, then the ACTIVE_ROUTE_TIMEOUT parameter value MUST be more than the value (ALLOWED_HELLO_LOSS * HELLO_INTERVAL).

host5.aodv.netDiameter int 35

the maximum possible number of hops between two nodes in the network

host5.aodv.nodeTraversalTime double 0.04s

an estimation of the average one-hop traversal time

host5.aodv.rerrRatelimit int 10

maximum number of RERR messages that the AODV may originate in 1s.

host5.aodv.rreqRetries int 2

specifies the number of times AODV will repeat an expanded ring search for a destination

host5.aodv.rreqRatelimit int 10

maximum number of RREQ messages that the AODV may originate in 1s.

host5.aodv.timeoutBuffer int 2

plus time to wait for a delayed RREP (due to congestion) (to omit this buffer set it to 0)

host5.aodv.ttlStart int 2

specifies the TTL value when initiating a route request

host5.aodv.ttlIncrement int 2

specifies the value by which the TTL will be incremented each time a RREQ is retransmitted

host5.aodv.ttlThreshold int 7

the maximum value of TTL over which NET_DIAMETER value will be used to broadcast any RREQ

host5.aodv.localAddTTL int 2

it is used by the formula which calculates the initial TTL of the RREQ for a local repair

host5.aodv.myRouteTimeout double 2 * activeRouteTimeout

the value of the lifetime field that a destination node places in RREPs

host5.aodv.deletePeriod double 5 * max(activeRouteTimeout, helloInterval)

the time after which an expired route is deleted

host5.aodv.blacklistTimeout double rreqRetries * netTraversalTime

the time after which a blacklisted node is removed from the blacklist

host5.aodv.netTraversalTime double 2 * nodeTraversalTime * netDiameter

an estimation of the traversal time for the complete network

host5.aodv.nextHopWait double nodeTraversalTime + 0.01s

timeout for a RREP-ACK

host5.aodv.pathDiscoveryTime double 2 * netTraversalTime

buffer timeout for each broadcasted RREQ message

host6.status.initialStatus string "UP"

TODO @signal, @statistic

host6.routingTable.forwarding bool
host6.routingTable.multicastForwarding bool
host6.interfaceTable.displayAddresses bool false

whether to display IP addresses on links

host6.pcapRecorder.verbose bool false

whether to log packets on the module output

host6.pcapRecorder.pcapFile string ""

the PCAP file to be written

host6.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

host6.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

host6.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*] ext[*]"

space-separated list of sibling module names to listen on

host6.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

host6.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

host6.pcapRecorder.alwaysFlush bool false

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

host6.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

host6.lo0.lo.mtu int 4470B
host6.aodv.routingTableModule string "^.routingTable"
host6.aodv.interfaceTableModule string "^.interfaceTable"
host6.aodv.networkProtocolModule string "^.networkLayer.ip"
host6.aodv.askGratuitousRREP bool false

see RFC 3561: 6.6.3

host6.aodv.useHelloMessages bool false

see RFC 3561: 6.9

host6.aodv.useLocalRepair bool false

see RFC 3561: 6.12 *not implemented yet*

host6.aodv.udpPort int 654
host6.aodv.maxPeriodicJitter double helloInterval / 4

it MUST NOT be negative; it MUST NOT be greater than MESSAGE_INTERVAL/2; it SHOULD NOT be greater than MESSAGE_INTERVAL/4.

host6.aodv.periodicJitter double uniform(0s, maxPeriodicJitter)

jitter for externally triggered message generation and message forwarding

host6.aodv.maxJitter double 5ms

RFC 5148: need more revise: As well as the decision as to whether to use jitter being dependent on the medium access control and lower layers, the selection of the MAXJITTER parameter SHOULD be appropriate to those mechanisms.

host6.aodv.jitter double uniform(0ms, maxJitter)

jitter for broadcasts

host6.aodv.helloInterval double 1s

every helloInterval seconds a node broadcasts Hello messages (if it is necessary)

host6.aodv.allowedHelloLoss int 2

allowedHelloLoss * helloInterval is the lifetime value for Hello messages

host6.aodv.activeRouteTimeout double 3s

the timeout value for cached routes If Hello messages are used, then the ACTIVE_ROUTE_TIMEOUT parameter value MUST be more than the value (ALLOWED_HELLO_LOSS * HELLO_INTERVAL).

host6.aodv.netDiameter int 35

the maximum possible number of hops between two nodes in the network

host6.aodv.nodeTraversalTime double 0.04s

an estimation of the average one-hop traversal time

host6.aodv.rerrRatelimit int 10

maximum number of RERR messages that the AODV may originate in 1s.

host6.aodv.rreqRetries int 2

specifies the number of times AODV will repeat an expanded ring search for a destination

host6.aodv.rreqRatelimit int 10

maximum number of RREQ messages that the AODV may originate in 1s.

host6.aodv.timeoutBuffer int 2

plus time to wait for a delayed RREP (due to congestion) (to omit this buffer set it to 0)

host6.aodv.ttlStart int 2

specifies the TTL value when initiating a route request

host6.aodv.ttlIncrement int 2

specifies the value by which the TTL will be incremented each time a RREQ is retransmitted

host6.aodv.ttlThreshold int 7

the maximum value of TTL over which NET_DIAMETER value will be used to broadcast any RREQ

host6.aodv.localAddTTL int 2

it is used by the formula which calculates the initial TTL of the RREQ for a local repair

host6.aodv.myRouteTimeout double 2 * activeRouteTimeout

the value of the lifetime field that a destination node places in RREPs

host6.aodv.deletePeriod double 5 * max(activeRouteTimeout, helloInterval)

the time after which an expired route is deleted

host6.aodv.blacklistTimeout double rreqRetries * netTraversalTime

the time after which a blacklisted node is removed from the blacklist

host6.aodv.netTraversalTime double 2 * nodeTraversalTime * netDiameter

an estimation of the traversal time for the complete network

host6.aodv.nextHopWait double nodeTraversalTime + 0.01s

timeout for a RREP-ACK

host6.aodv.pathDiscoveryTime double 2 * netTraversalTime

buffer timeout for each broadcasted RREQ message

host7.status.initialStatus string "UP"

TODO @signal, @statistic

host7.routingTable.forwarding bool
host7.routingTable.multicastForwarding bool
host7.interfaceTable.displayAddresses bool false

whether to display IP addresses on links

host7.pcapRecorder.verbose bool false

whether to log packets on the module output

host7.pcapRecorder.pcapFile string ""

the PCAP file to be written

host7.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

host7.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

host7.pcapRecorder.moduleNamePatterns string "wlan[*] eth[*] ppp[*] ext[*]"

space-separated list of sibling module names to listen on

host7.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

host7.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

host7.pcapRecorder.alwaysFlush bool false

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

host7.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

host7.lo0.lo.mtu int 4470B
host7.aodv.routingTableModule string "^.routingTable"
host7.aodv.interfaceTableModule string "^.interfaceTable"
host7.aodv.networkProtocolModule string "^.networkLayer.ip"
host7.aodv.askGratuitousRREP bool false

see RFC 3561: 6.6.3

host7.aodv.useHelloMessages bool false

see RFC 3561: 6.9

host7.aodv.useLocalRepair bool false

see RFC 3561: 6.12 *not implemented yet*

host7.aodv.udpPort int 654
host7.aodv.maxPeriodicJitter double helloInterval / 4

it MUST NOT be negative; it MUST NOT be greater than MESSAGE_INTERVAL/2; it SHOULD NOT be greater than MESSAGE_INTERVAL/4.

host7.aodv.periodicJitter double uniform(0s, maxPeriodicJitter)

jitter for externally triggered message generation and message forwarding

host7.aodv.maxJitter double 5ms

RFC 5148: need more revise: As well as the decision as to whether to use jitter being dependent on the medium access control and lower layers, the selection of the MAXJITTER parameter SHOULD be appropriate to those mechanisms.

host7.aodv.jitter double uniform(0ms, maxJitter)

jitter for broadcasts

host7.aodv.helloInterval double 1s

every helloInterval seconds a node broadcasts Hello messages (if it is necessary)

host7.aodv.allowedHelloLoss int 2

allowedHelloLoss * helloInterval is the lifetime value for Hello messages

host7.aodv.activeRouteTimeout double 3s

the timeout value for cached routes If Hello messages are used, then the ACTIVE_ROUTE_TIMEOUT parameter value MUST be more than the value (ALLOWED_HELLO_LOSS * HELLO_INTERVAL).

host7.aodv.netDiameter int 35

the maximum possible number of hops between two nodes in the network

host7.aodv.nodeTraversalTime double 0.04s

an estimation of the average one-hop traversal time

host7.aodv.rerrRatelimit int 10

maximum number of RERR messages that the AODV may originate in 1s.

host7.aodv.rreqRetries int 2

specifies the number of times AODV will repeat an expanded ring search for a destination

host7.aodv.rreqRatelimit int 10

maximum number of RREQ messages that the AODV may originate in 1s.

host7.aodv.timeoutBuffer int 2

plus time to wait for a delayed RREP (due to congestion) (to omit this buffer set it to 0)

host7.aodv.ttlStart int 2

specifies the TTL value when initiating a route request

host7.aodv.ttlIncrement int 2

specifies the value by which the TTL will be incremented each time a RREQ is retransmitted

host7.aodv.ttlThreshold int 7

the maximum value of TTL over which NET_DIAMETER value will be used to broadcast any RREQ

host7.aodv.localAddTTL int 2

it is used by the formula which calculates the initial TTL of the RREQ for a local repair

host7.aodv.myRouteTimeout double 2 * activeRouteTimeout

the value of the lifetime field that a destination node places in RREPs

host7.aodv.deletePeriod double 5 * max(activeRouteTimeout, helloInterval)

the time after which an expired route is deleted

host7.aodv.blacklistTimeout double rreqRetries * netTraversalTime

the time after which a blacklisted node is removed from the blacklist

host7.aodv.netTraversalTime double 2 * nodeTraversalTime * netDiameter

an estimation of the traversal time for the complete network

host7.aodv.nextHopWait double nodeTraversalTime + 0.01s

timeout for a RREP-ACK

host7.aodv.pathDiscoveryTime double 2 * netTraversalTime

buffer timeout for each broadcasted RREQ message

configurator.minLinkWeight double 1E-3
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.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.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.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)

radioMedium.neighborCache.refillPeriod double

Source code:

network ConfiguratorE
{
    @display("bgb=939.89996,581.1");
    submodules:
        host1: AODVRouter {
            @display("p=239.148,74.897995");
        }
        host2: AODVRouter {
            @display("p=483,221");
        }
        host3: AODVRouter {
            @display("p=513.774,345.582");
        }
        host4: AODVRouter {
            @display("p=304.848,182.646;b=7,5");
        }
        host5: AODVRouter {
            @display("p=650.43,436.248");
        }
        host6: AODVRouter {
            @display("p=361.35,294.336");
        }
        host7: AODVRouter {
            @display("p=778,462");
        }
        configurator: IPv4NetworkConfigurator {
            @display("p=50,50");
        }
        radioMedium: Ieee80211ScalarRadioMedium {
            @display("p=50,100");
        }
        visualizer: IntegratedCanvasVisualizer {
            @display("p=50,150");
        }
}