Network Traceroute

Package: inet.examples.emulation.traceroute
File: examples/emulation/traceroute/Traceroute.ned

(no description)

StandardHost StandardHost StandardHost StandardHost StandardHost StandardHost StandardHost StandardHost EtherSwitch EtherSwitch EtherSwitch EtherSwitch Router Router Router Router Router Router ExtRouter

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram. Click here to see the full picture.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram. Click here to see the full picture.

Parameters:

Name Type Default value Description
testTimeout double 0s
testing bool false

Properties:

Name Value Description
isNetwork

Unassigned submodule parameters:

Name Type Default value Description
cli1.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli1.sctp.rtoInitial double 3s
cli1.sctp.rtoMin double 1s
cli1.sctp.rtoMax double 60s
cli1.sctp.rtoAlpha double 0.125
cli1.sctp.rtoBeta double 0.250
cli1.sctp.maxBurst int 4
cli1.sctp.assocMaxRetrans int 10
cli1.sctp.pathMaxRetrans int 5
cli1.sctp.maxInitRetrans int 8
cli1.sctp.sackPeriod double 200ms
cli1.sctp.sackFrequency int 2
cli1.sctp.reactivatePrimaryPath bool false
cli1.sctp.sendQueueLimit int 0
cli1.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli1.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli1.sctp.hbInterval double 30s
cli1.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli1.sctp.naglePoint int 1468
cli1.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli1.sctp.sctpAlgorithmClass string "SCTPAlg"
cli1.sctp.ccModule int 0

RFC4960=0

cli1.sctp.ssModule int 0

ROUND_ROBIN=0

cli1.sctp.arwnd int 65535
cli1.sctp.swsLimit int 3000

Limit for SWS

cli1.sctp.udpEncapsEnabled bool false
cli1.pingApp.destAddr string ""

destination IP or IPv6 address

cli1.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli1.pingApp.packetSize double 56B

of ping payload, in bytes

cli1.pingApp.interval double 1s

time to wait between pings (can be random)

cli1.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli1.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli1.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli1.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli1.pingApp.printPing bool true

dump on stdout

cli1.networkLayer.ip.procDelay double 0s
cli1.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli1.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli1.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli1.ppp.ppp.mtu int 4470
cli1.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli1.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli1.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli1.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli1.eth.mac.mtu int 1500
cli1.ext.filterString string
cli1.ext.device string
cli1.ext.mtu int 1500
cli1.tcpdump.dumpFile string ""
cli1.tcpdump.threadEnable bool false
cli1.tcpdump.snaplen int 65535
cli1.tcpdump.verbosity int 0
cli2.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli2.sctp.rtoInitial double 3s
cli2.sctp.rtoMin double 1s
cli2.sctp.rtoMax double 60s
cli2.sctp.rtoAlpha double 0.125
cli2.sctp.rtoBeta double 0.250
cli2.sctp.maxBurst int 4
cli2.sctp.assocMaxRetrans int 10
cli2.sctp.pathMaxRetrans int 5
cli2.sctp.maxInitRetrans int 8
cli2.sctp.sackPeriod double 200ms
cli2.sctp.sackFrequency int 2
cli2.sctp.reactivatePrimaryPath bool false
cli2.sctp.sendQueueLimit int 0
cli2.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli2.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli2.sctp.hbInterval double 30s
cli2.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli2.sctp.naglePoint int 1468
cli2.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli2.sctp.sctpAlgorithmClass string "SCTPAlg"
cli2.sctp.ccModule int 0

RFC4960=0

cli2.sctp.ssModule int 0

ROUND_ROBIN=0

cli2.sctp.arwnd int 65535
cli2.sctp.swsLimit int 3000

Limit for SWS

cli2.sctp.udpEncapsEnabled bool false
cli2.pingApp.destAddr string ""

destination IP or IPv6 address

cli2.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli2.pingApp.packetSize double 56B

of ping payload, in bytes

cli2.pingApp.interval double 1s

time to wait between pings (can be random)

cli2.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli2.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli2.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli2.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli2.pingApp.printPing bool true

dump on stdout

cli2.networkLayer.ip.procDelay double 0s
cli2.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli2.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli2.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli2.ppp.ppp.mtu int 4470
cli2.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli2.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli2.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli2.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli2.eth.mac.mtu int 1500
cli2.ext.filterString string
cli2.ext.device string
cli2.ext.mtu int 1500
cli2.tcpdump.dumpFile string ""
cli2.tcpdump.threadEnable bool false
cli2.tcpdump.snaplen int 65535
cli2.tcpdump.verbosity int 0
cli3.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli3.sctp.rtoInitial double 3s
cli3.sctp.rtoMin double 1s
cli3.sctp.rtoMax double 60s
cli3.sctp.rtoAlpha double 0.125
cli3.sctp.rtoBeta double 0.250
cli3.sctp.maxBurst int 4
cli3.sctp.assocMaxRetrans int 10
cli3.sctp.pathMaxRetrans int 5
cli3.sctp.maxInitRetrans int 8
cli3.sctp.sackPeriod double 200ms
cli3.sctp.sackFrequency int 2
cli3.sctp.reactivatePrimaryPath bool false
cli3.sctp.sendQueueLimit int 0
cli3.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli3.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli3.sctp.hbInterval double 30s
cli3.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli3.sctp.naglePoint int 1468
cli3.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli3.sctp.sctpAlgorithmClass string "SCTPAlg"
cli3.sctp.ccModule int 0

RFC4960=0

cli3.sctp.ssModule int 0

ROUND_ROBIN=0

cli3.sctp.arwnd int 65535
cli3.sctp.swsLimit int 3000

Limit for SWS

cli3.sctp.udpEncapsEnabled bool false
cli3.pingApp.destAddr string ""

destination IP or IPv6 address

cli3.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli3.pingApp.packetSize double 56B

of ping payload, in bytes

cli3.pingApp.interval double 1s

time to wait between pings (can be random)

cli3.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli3.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli3.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli3.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli3.pingApp.printPing bool true

dump on stdout

cli3.networkLayer.ip.procDelay double 0s
cli3.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli3.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli3.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli3.ppp.ppp.mtu int 4470
cli3.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli3.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli3.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli3.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli3.eth.mac.mtu int 1500
cli3.ext.filterString string
cli3.ext.device string
cli3.ext.mtu int 1500
cli3.tcpdump.dumpFile string ""
cli3.tcpdump.threadEnable bool false
cli3.tcpdump.snaplen int 65535
cli3.tcpdump.verbosity int 0
cli4.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli4.sctp.rtoInitial double 3s
cli4.sctp.rtoMin double 1s
cli4.sctp.rtoMax double 60s
cli4.sctp.rtoAlpha double 0.125
cli4.sctp.rtoBeta double 0.250
cli4.sctp.maxBurst int 4
cli4.sctp.assocMaxRetrans int 10
cli4.sctp.pathMaxRetrans int 5
cli4.sctp.maxInitRetrans int 8
cli4.sctp.sackPeriod double 200ms
cli4.sctp.sackFrequency int 2
cli4.sctp.reactivatePrimaryPath bool false
cli4.sctp.sendQueueLimit int 0
cli4.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli4.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli4.sctp.hbInterval double 30s
cli4.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli4.sctp.naglePoint int 1468
cli4.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli4.sctp.sctpAlgorithmClass string "SCTPAlg"
cli4.sctp.ccModule int 0

RFC4960=0

cli4.sctp.ssModule int 0

ROUND_ROBIN=0

cli4.sctp.arwnd int 65535
cli4.sctp.swsLimit int 3000

Limit for SWS

cli4.sctp.udpEncapsEnabled bool false
cli4.pingApp.destAddr string ""

destination IP or IPv6 address

cli4.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli4.pingApp.packetSize double 56B

of ping payload, in bytes

cli4.pingApp.interval double 1s

time to wait between pings (can be random)

cli4.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli4.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli4.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli4.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli4.pingApp.printPing bool true

dump on stdout

cli4.networkLayer.ip.procDelay double 0s
cli4.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli4.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli4.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli4.ppp.ppp.mtu int 4470
cli4.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli4.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli4.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli4.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli4.eth.mac.mtu int 1500
cli4.ext.filterString string
cli4.ext.device string
cli4.ext.mtu int 1500
cli4.tcpdump.dumpFile string ""
cli4.tcpdump.threadEnable bool false
cli4.tcpdump.snaplen int 65535
cli4.tcpdump.verbosity int 0
cli5.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli5.sctp.rtoInitial double 3s
cli5.sctp.rtoMin double 1s
cli5.sctp.rtoMax double 60s
cli5.sctp.rtoAlpha double 0.125
cli5.sctp.rtoBeta double 0.250
cli5.sctp.maxBurst int 4
cli5.sctp.assocMaxRetrans int 10
cli5.sctp.pathMaxRetrans int 5
cli5.sctp.maxInitRetrans int 8
cli5.sctp.sackPeriod double 200ms
cli5.sctp.sackFrequency int 2
cli5.sctp.reactivatePrimaryPath bool false
cli5.sctp.sendQueueLimit int 0
cli5.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli5.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli5.sctp.hbInterval double 30s
cli5.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli5.sctp.naglePoint int 1468
cli5.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli5.sctp.sctpAlgorithmClass string "SCTPAlg"
cli5.sctp.ccModule int 0

RFC4960=0

cli5.sctp.ssModule int 0

ROUND_ROBIN=0

cli5.sctp.arwnd int 65535
cli5.sctp.swsLimit int 3000

Limit for SWS

cli5.sctp.udpEncapsEnabled bool false
cli5.pingApp.destAddr string ""

destination IP or IPv6 address

cli5.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli5.pingApp.packetSize double 56B

of ping payload, in bytes

cli5.pingApp.interval double 1s

time to wait between pings (can be random)

cli5.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli5.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli5.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli5.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli5.pingApp.printPing bool true

dump on stdout

cli5.networkLayer.ip.procDelay double 0s
cli5.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli5.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli5.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli5.ppp.ppp.mtu int 4470
cli5.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli5.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli5.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli5.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli5.eth.mac.mtu int 1500
cli5.ext.filterString string
cli5.ext.device string
cli5.ext.mtu int 1500
cli5.tcpdump.dumpFile string ""
cli5.tcpdump.threadEnable bool false
cli5.tcpdump.snaplen int 65535
cli5.tcpdump.verbosity int 0
cli6.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli6.sctp.rtoInitial double 3s
cli6.sctp.rtoMin double 1s
cli6.sctp.rtoMax double 60s
cli6.sctp.rtoAlpha double 0.125
cli6.sctp.rtoBeta double 0.250
cli6.sctp.maxBurst int 4
cli6.sctp.assocMaxRetrans int 10
cli6.sctp.pathMaxRetrans int 5
cli6.sctp.maxInitRetrans int 8
cli6.sctp.sackPeriod double 200ms
cli6.sctp.sackFrequency int 2
cli6.sctp.reactivatePrimaryPath bool false
cli6.sctp.sendQueueLimit int 0
cli6.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli6.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli6.sctp.hbInterval double 30s
cli6.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli6.sctp.naglePoint int 1468
cli6.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli6.sctp.sctpAlgorithmClass string "SCTPAlg"
cli6.sctp.ccModule int 0

RFC4960=0

cli6.sctp.ssModule int 0

ROUND_ROBIN=0

cli6.sctp.arwnd int 65535
cli6.sctp.swsLimit int 3000

Limit for SWS

cli6.sctp.udpEncapsEnabled bool false
cli6.pingApp.destAddr string ""

destination IP or IPv6 address

cli6.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli6.pingApp.packetSize double 56B

of ping payload, in bytes

cli6.pingApp.interval double 1s

time to wait between pings (can be random)

cli6.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli6.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli6.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli6.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli6.pingApp.printPing bool true

dump on stdout

cli6.networkLayer.ip.procDelay double 0s
cli6.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli6.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli6.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli6.ppp.ppp.mtu int 4470
cli6.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli6.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli6.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli6.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli6.eth.mac.mtu int 1500
cli6.ext.filterString string
cli6.ext.device string
cli6.ext.mtu int 1500
cli6.tcpdump.dumpFile string ""
cli6.tcpdump.threadEnable bool false
cli6.tcpdump.snaplen int 65535
cli6.tcpdump.verbosity int 0
cli7.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli7.sctp.rtoInitial double 3s
cli7.sctp.rtoMin double 1s
cli7.sctp.rtoMax double 60s
cli7.sctp.rtoAlpha double 0.125
cli7.sctp.rtoBeta double 0.250
cli7.sctp.maxBurst int 4
cli7.sctp.assocMaxRetrans int 10
cli7.sctp.pathMaxRetrans int 5
cli7.sctp.maxInitRetrans int 8
cli7.sctp.sackPeriod double 200ms
cli7.sctp.sackFrequency int 2
cli7.sctp.reactivatePrimaryPath bool false
cli7.sctp.sendQueueLimit int 0
cli7.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli7.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli7.sctp.hbInterval double 30s
cli7.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli7.sctp.naglePoint int 1468
cli7.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli7.sctp.sctpAlgorithmClass string "SCTPAlg"
cli7.sctp.ccModule int 0

RFC4960=0

cli7.sctp.ssModule int 0

ROUND_ROBIN=0

cli7.sctp.arwnd int 65535
cli7.sctp.swsLimit int 3000

Limit for SWS

cli7.sctp.udpEncapsEnabled bool false
cli7.pingApp.destAddr string ""

destination IP or IPv6 address

cli7.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli7.pingApp.packetSize double 56B

of ping payload, in bytes

cli7.pingApp.interval double 1s

time to wait between pings (can be random)

cli7.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli7.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli7.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli7.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli7.pingApp.printPing bool true

dump on stdout

cli7.networkLayer.ip.procDelay double 0s
cli7.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli7.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli7.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli7.ppp.ppp.mtu int 4470
cli7.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli7.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli7.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli7.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli7.eth.mac.mtu int 1500
cli7.ext.filterString string
cli7.ext.device string
cli7.ext.mtu int 1500
cli7.tcpdump.dumpFile string ""
cli7.tcpdump.threadEnable bool false
cli7.tcpdump.snaplen int 65535
cli7.tcpdump.verbosity int 0
cli8.sctp.numGapReports int 3

====== SCTP Association Parameters =================================

cli8.sctp.rtoInitial double 3s
cli8.sctp.rtoMin double 1s
cli8.sctp.rtoMax double 60s
cli8.sctp.rtoAlpha double 0.125
cli8.sctp.rtoBeta double 0.250
cli8.sctp.maxBurst int 4
cli8.sctp.assocMaxRetrans int 10
cli8.sctp.pathMaxRetrans int 5
cli8.sctp.maxInitRetrans int 8
cli8.sctp.sackPeriod double 200ms
cli8.sctp.sackFrequency int 2
cli8.sctp.reactivatePrimaryPath bool false
cli8.sctp.sendQueueLimit int 0
cli8.sctp.validCookieLifetime double 10s

====== Testing =====================================================

cli8.sctp.enableHeartbeats bool true

====== Heartbeats ==================================================

cli8.sctp.hbInterval double 30s
cli8.sctp.nagleEnabled bool true

====== Nagle Algorithm =============================================

cli8.sctp.naglePoint int 1468
cli8.sctp.fastRecoverySupported bool true

====== Congestion Control ==========================================

cli8.sctp.sctpAlgorithmClass string "SCTPAlg"
cli8.sctp.ccModule int 0

RFC4960=0

cli8.sctp.ssModule int 0

ROUND_ROBIN=0

cli8.sctp.arwnd int 65535
cli8.sctp.swsLimit int 3000

Limit for SWS

cli8.sctp.udpEncapsEnabled bool false
cli8.pingApp.destAddr string ""

destination IP or IPv6 address

cli8.pingApp.srcAddr string ""

source IP or IPv6 address (useful with multi-homing)

cli8.pingApp.packetSize double 56B

of ping payload, in bytes

cli8.pingApp.interval double 1s

time to wait between pings (can be random)

cli8.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli8.pingApp.count double 0

stop after count ping requests, 0 means continuously

cli8.pingApp.startTime double uniform(0s,this.interval)

send first ping at startTime

cli8.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli8.pingApp.printPing bool true

dump on stdout

cli8.networkLayer.ip.procDelay double 0s
cli8.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

cli8.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

cli8.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

cli8.ppp.ppp.mtu int 4470
cli8.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

cli8.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

cli8.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

cli8.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

cli8.eth.mac.mtu int 1500
cli8.ext.filterString string
cli8.ext.device string
cli8.ext.mtu int 1500
cli8.tcpdump.dumpFile string ""
cli8.tcpdump.threadEnable bool false
cli8.tcpdump.snaplen int 65535
cli8.tcpdump.verbosity int 0
switch1.relayUnit.addressTableFile string

set to empty string if not used

switch1.relayUnit.addressTableSize int

max size of address table

switch1.relayUnit.agingTime double

max idle time for address table entries (when it expires, entry is removed from the table)

switch1.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

switch1.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

switch1.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

switch1.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

switch1.mac.mtu int 1500
switch2.relayUnit.addressTableFile string

set to empty string if not used

switch2.relayUnit.addressTableSize int

max size of address table

switch2.relayUnit.agingTime double

max idle time for address table entries (when it expires, entry is removed from the table)

switch2.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

switch2.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

switch2.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

switch2.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

switch2.mac.mtu int 1500
switch3.relayUnit.addressTableFile string

set to empty string if not used

switch3.relayUnit.addressTableSize int

max size of address table

switch3.relayUnit.agingTime double

max idle time for address table entries (when it expires, entry is removed from the table)

switch3.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

switch3.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

switch3.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

switch3.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

switch3.mac.mtu int 1500
switch4.relayUnit.addressTableFile string

set to empty string if not used

switch4.relayUnit.addressTableSize int

max size of address table

switch4.relayUnit.agingTime double

max idle time for address table entries (when it expires, entry is removed from the table)

switch4.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

switch4.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

switch4.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

switch4.mac.txQueueLimit int 1000

maximum number of frames queued up for transmission; additional frames are dropped. Only used if queueModule==""

switch4.mac.mtu int 1500
router1.networkLayer.ip.procDelay double 0s
router1.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

router1.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

router1.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

router1.ppp.ppp.mtu int 4470
router1.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

router1.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

router1.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

router1.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

router1.eth.mac.mtu int 1500
router2.networkLayer.ip.procDelay double 0s
router2.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

router2.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

router2.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

router2.ppp.ppp.mtu int 4470
router2.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

router2.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

router2.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

router2.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

router2.eth.mac.mtu int 1500
router3.networkLayer.ip.procDelay double 0s
router3.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

router3.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

router3.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

router3.ppp.ppp.mtu int 4470
router3.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

router3.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

router3.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

router3.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

router3.eth.mac.mtu int 1500
router4.networkLayer.ip.procDelay double 0s
router4.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

router4.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

router4.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

router4.ppp.ppp.mtu int 4470
router4.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

router4.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

router4.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

router4.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

router4.eth.mac.mtu int 1500
Router5.networkLayer.ip.procDelay double 0s
Router5.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

Router5.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

Router5.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

Router5.ppp.ppp.mtu int 4470
Router5.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

Router5.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

Router5.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

Router5.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

Router5.eth.mac.mtu int 1500
Router6.networkLayer.ip.procDelay double 0s
Router6.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

Router6.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

Router6.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

Router6.ppp.ppp.mtu int 4470
Router6.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

Router6.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

Router6.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

Router6.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

Router6.eth.mac.mtu int 1500
extRouter.networkLayer.ip.procDelay double 0s
extRouter.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

extRouter.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

extRouter.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

extRouter.ppp.ppp.mtu int 4470
extRouter.eth.mac.promiscuous bool false

if true, all packets are received, otherwise only the ones with matching destination MAC address

extRouter.eth.mac.address string "auto"

MAC address as hex string (12 hex digits), or "auto". "auto" values will be replaced by a generated MAC address in init stage 0.

extRouter.eth.mac.txrate double 100Mbps

maximum data rate supported by this station (bit/s); actually chosen speed may be lower due to auto- configuration. 0 means fully auto-configured.

extRouter.eth.mac.duplexEnabled bool true

whether duplex mode can be enabled or not; whether MAC will actually use duplex mode depends on the result of the auto-configuration process (duplex is only possible with DTE-to-DTE connection).

extRouter.eth.mac.mtu int 1500
extRouter.ext.filterString string
extRouter.ext.device string
extRouter.ext.mtu int 1500

Source code:

network Traceroute
{
    parameters:
        double testTimeout @unit(s) = default(0s);
        bool testing = default(false);
    submodules:
        cli1: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli1.mrt";
                @display("p=37,62;i=laptop3");
            gates:
                ethg[1];
        }
        cli2: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli2.mrt";
                @display("p=35,131;i=laptop3");
            gates:
                ethg[1];
        }
        cli3: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli3.mrt";
                @display("p=40,223;i=laptop3");
            gates:
                ethg[1];
        }
        cli4: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli4.mrt";
                @display("p=40,295;i=laptop3");
            gates:
                ethg[1];
        }
        cli5: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli5.mrt";
                @display("p=40,383;i=laptop3");
            gates:
                ethg[1];
        }
        cli6: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli6.mrt";
                @display("p=40,439;i=laptop3");
            gates:
                ethg[1];
        }
        cli7: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli7.mrt";
                @display("p=40,511;i=laptop3");
            gates:
                ethg[1];
        }
        cli8: StandardHost {
            parameters:
                IPForward = false;
                routingFile = "cli8.mrt";
                @display("p=40,575;i=laptop3");
            gates:
                ethg[1];
        }
        switch1: EtherSwitch {
            parameters:
                @display("p=127,102;i=device/switch");
            gates:
                ethg[3];
        }
        switch2: EtherSwitch {
            parameters:
                @display("p=129,254;i=device/switch");
            gates:
                ethg[3];
        }
        switch3: EtherSwitch {
            parameters:
                @display("p=137,398;i=device/switch");
            gates:
                ethg[3];
        }
        switch4: EtherSwitch {
            parameters:
                @display("p=138,534;i=device/switch");
            gates:
                ethg[3];
        }
        router1: Router {
            parameters:
                routingFile = "router1.mrt";
                @display("p=220,101;i=device/router_s");
            gates:
                pppg[1];
                ethg[1];
        }
        router2: Router {
            parameters:
                routingFile = "router2.mrt";
                @display("p=236,253;i=device/router_s");
            gates:
                pppg[1];
                ethg[1];
        }
        router3: Router {
            parameters:
                routingFile = "router3.mrt";
                @display("p=252,397;i=device/router_s");
            gates:
                pppg[1];
                ethg[1];
        }
        router4: Router {
            parameters:
                routingFile = "router4.mrt";
                @display("p=268,533;i=device/router_s");
            gates:
                pppg[1];
                ethg[1];
        }
        Router5: Router {
            parameters:
                routingFile = "Router5.mrt";
                @display("p=372,165;i=device/router");
            gates:
                pppg[3];
        }
        Router6: Router {
            parameters:
                routingFile = "Router6.mrt";
                @display("p=396,445;i=device/router");
            gates:
                pppg[3];
        }
        extRouter: ExtRouter {
            parameters:
                routingFile = "extRouter.mrt";
                numExtInterfaces = 1;
                @display("p=500,293;i=device/router_l");
            gates:
                pppg[2];
        }
    connections allowunconnected:
        cli1.ethg[0] <--> switch1.ethg[0];
        cli2.ethg[0] <--> switch1.ethg[1];
        switch1.ethg[2] <--> router1.ethg[0];
        router1.pppg[0] <--> pppline <--> Router5.pppg[0];
        Router5.pppg[2] <--> pppline <--> extRouter.pppg[0];
        cli3.ethg[0] <--> switch2.ethg[0];
        cli4.ethg[0] <--> switch2.ethg[1];
        switch2.ethg[2] <--> router2.ethg[0];
        router2.pppg[0] <--> pppline <--> Router5.pppg[1];
        cli5.ethg[0] <--> switch3.ethg[0];
        cli6.ethg[0] <--> switch3.ethg[1];
        switch3.ethg[2] <--> router3.ethg[0];
        router3.pppg[0] <--> pppline <--> Router6.pppg[0];
        Router6.pppg[2] <--> pppline <--> extRouter.pppg[1];
        cli7.ethg[0] <--> switch4.ethg[0];
        cli8.ethg[0] <--> switch4.ethg[1];
        switch4.ethg[2] <--> router4.ethg[0];
        router4.pppg[0] <--> pppline <--> Router6.pppg[1];
}