Network REDTestDebug

Package: inet.examples.inet.redtest
File: examples/inet/redtest/REDTestDebug.ned

(no description)

ChannelInstaller FlatNetworkConfigurator ScenarioManager Router Router StandardHost StandardHost StandardHost StandardHost TCPDump ThruputMeter

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.

Properties:

Name Value Description
isNetwork

Unassigned submodule parameters:

Name Type Default value Description
configurator.networkAddress string "192.168.0.0"

network part of the address (see netmask parameter)

configurator.netmask string "255.255.0.0"

host part of addresses are autoconfigured

scenarioManager.script xml
r1.networkLayer.ip.procDelay double 0s
r1.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

r1.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

r1.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

r1.eth.mac.mtu int 1500
r2.networkLayer.ip.procDelay double 0s
r2.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

r2.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

r2.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

r2.eth.mac.mtu int 1500
s1.sctp.numGapReports int 3

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

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

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

s1.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

s1.sctp.ssModule int 0

ROUND_ROBIN=0

s1.sctp.arwnd int 65535
s1.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

s1.pingApp.srcAddr string ""

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

s1.pingApp.packetSize double 56B

of ping payload, in bytes

s1.pingApp.interval double 1s

time to wait between pings (can be random)

s1.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

s1.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

s1.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

s1.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

s1.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

s1.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

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

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

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

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

s2.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

s2.sctp.ssModule int 0

ROUND_ROBIN=0

s2.sctp.arwnd int 65535
s2.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

s2.pingApp.srcAddr string ""

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

s2.pingApp.packetSize double 56B

of ping payload, in bytes

s2.pingApp.interval double 1s

time to wait between pings (can be random)

s2.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

s2.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

s2.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

s2.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

s2.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

s2.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

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

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

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

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

s3.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

s3.sctp.ssModule int 0

ROUND_ROBIN=0

s3.sctp.arwnd int 65535
s3.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

s3.pingApp.srcAddr string ""

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

s3.pingApp.packetSize double 56B

of ping payload, in bytes

s3.pingApp.interval double 1s

time to wait between pings (can be random)

s3.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

s3.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

s3.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

s3.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

s3.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

s3.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

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

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

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

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

s4.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

s4.sctp.ssModule int 0

ROUND_ROBIN=0

s4.sctp.arwnd int 65535
s4.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

s4.pingApp.srcAddr string ""

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

s4.pingApp.packetSize double 56B

of ping payload, in bytes

s4.pingApp.interval double 1s

time to wait between pings (can be random)

s4.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

s4.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

s4.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

s4.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

s4.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

s4.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

s4.eth.mac.mtu int 1500
s4.ext.filterString string
s4.ext.device string
s4.ext.mtu int 1500
s4.tcpdump.dumpFile string ""
s4.tcpdump.threadEnable bool false
s4.tcpdump.snaplen int 65535
s4.tcpdump.verbosity int 0
dump.dumpFile string ""
dump.threadEnable bool false
dump.snaplen int 65535
dump.verbosity int 0
th.startTime double 0s
th.batchSize int 50
th.maxInterval double 1s

Source code:

network REDTestDebug
{
    submodules:
        channelInstaller: ChannelInstaller {
            parameters:
                channelClass = "ThruputMeteringChannel";
                channelAttrs = "format=b (u)";
                @display("p=305,40");
        }
        configurator: FlatNetworkConfigurator {
            parameters:
                @display("p=147,40");
        }
        scenarioManager: ScenarioManager {
            parameters:
                @display("p=222,40");
        }
        r1: Router {
            parameters:
                @display("p=147,143");
        }
        r2: Router {
            parameters:
                @display("p=345,142");
        }
        s1: StandardHost {
            parameters:
                @display("p=68,64;i=device/laptop");
        }
        s2: StandardHost {
            parameters:
                @display("p=65,193;i=device/laptop");
        }
        s3: StandardHost {
            parameters:
                @display("p=421,83;i=device/laptop");
        }
        s4: StandardHost {
            parameters:
                @display("p=420,195;i=device/laptop");
        }
        dump: TCPDump {
            parameters:
                @display("p=286,143");
        }
        th: ThruputMeter {
            parameters:
                @display("p=248,135");
        }
    connections:
// FIXME adjust to the new TCPDump module
//        r1.pppg$o++ --> {  datarate = 1.5Mbps; delay = 20ms; } --> th.in;
//        th.out --> dump.a$i;
//        dump.b$o --> r2.pppg$i++;
//
//        dump.a$o --> {  datarate = 1.5Mbps; delay = 20ms; } --> r1.pppg$i++;
//        dump.b$i <-- {  datarate = 1.5Mbps; delay = 20ms; } <-- r2.pppg$o++;

        r1.pppg++ <--> {  datarate = 1.5Mbps; delay = 20ms; } <--> r2.pppg++;

        s1.pppg++ <--> {  datarate = 10Mbps; delay = 2ms; } <--> r1.pppg++;
        s2.pppg++ <--> {  datarate = 10Mbps; delay = 3ms; } <--> r1.pppg++;
        s3.pppg++ <--> {  datarate = 10Mbps; delay = 4ms; } <--> r2.pppg++;
        s4.pppg++ <--> {  datarate = 10Mbps; delay = 5ms; } <--> r2.pppg++;

}