Network BulkTransfer

Package: inet.examples.inet.bulktransfer
File: examples/inet/bulktransfer/BulkTransfer.ned

(no description)

StandardHost StandardHost StandardHost StandardHost Router FlatNetworkConfigurator

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
client1.sctp.numGapReports int 3

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

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

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

client1.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

client1.sctp.ssModule int 0

ROUND_ROBIN=0

client1.sctp.arwnd int 65535
client1.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

client1.pingApp.srcAddr string ""

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

client1.pingApp.packetSize double 56B

of ping payload, in bytes

client1.pingApp.interval double 1s

time to wait between pings (can be random)

client1.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

client1.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

client1.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

client1.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

client1.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

client1.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

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

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

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

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

client2.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

client2.sctp.ssModule int 0

ROUND_ROBIN=0

client2.sctp.arwnd int 65535
client2.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

client2.pingApp.srcAddr string ""

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

client2.pingApp.packetSize double 56B

of ping payload, in bytes

client2.pingApp.interval double 1s

time to wait between pings (can be random)

client2.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

client2.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

client2.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

client2.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

client2.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

client2.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

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

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

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

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

client3.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

client3.sctp.ssModule int 0

ROUND_ROBIN=0

client3.sctp.arwnd int 65535
client3.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

client3.pingApp.srcAddr string ""

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

client3.pingApp.packetSize double 56B

of ping payload, in bytes

client3.pingApp.interval double 1s

time to wait between pings (can be random)

client3.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

client3.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

client3.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

client3.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

client3.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

client3.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

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

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

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

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

server.sctp.enableHeartbeats bool true

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

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

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

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

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

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

RFC4960=0

server.sctp.ssModule int 0

ROUND_ROBIN=0

server.sctp.arwnd int 65535
server.sctp.swsLimit int 3000

Limit for SWS

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

destination IP or IPv6 address

server.pingApp.srcAddr string ""

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

server.pingApp.packetSize double 56B

of ping payload, in bytes

server.pingApp.interval double 1s

time to wait between pings (can be random)

server.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

server.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

server.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

server.pingApp.printPing bool true

dump on stdout

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

number seconds ARP waits between retries to resolve an IP address

server.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

server.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

server.eth.mac.mtu int 1500
server.ext.filterString string
server.ext.device string
server.ext.mtu int 1500
server.tcpdump.dumpFile string ""
server.tcpdump.threadEnable bool false
server.tcpdump.snaplen int 65535
server.tcpdump.verbosity int 0
router.networkLayer.ip.procDelay double 0s
router.networkLayer.arp.retryTimeout double 1s

number seconds ARP waits between retries to resolve an IP address

router.networkLayer.arp.retryCount int 3

number of times ARP will attempt to resolve an IP address

router.networkLayer.arp.cacheTimeout double 120s

number seconds unused entries in the cache will time out

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

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

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

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

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

router.eth.mac.mtu int 1500
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

Source code:

network BulkTransfer
{
    types:
        channel C extends DatarateChannel
        {
            datarate = 1Mbps;
            delay = 0.1us;
        }
    submodules:
        client1: StandardHost {
            parameters:
                @display("p=131,67;i=device/pc3");
        }
        client2: StandardHost {
            parameters:
                @display("p=337,67;i=device/pc3");
        }
        client3: StandardHost {
            parameters:
                @display("p=337,247;i=device/pc3");
        }
        server: StandardHost {
            parameters:
                @display("p=131,247;i=device/pc2");
        }
        router: Router {
            parameters:
                @display("p=239,156");
        }
        configurator: FlatNetworkConfigurator {
            parameters:
                @display("p=62,119");
        }
    connections:
        client1.pppg++ <--> C <--> router.pppg++;
        client2.pppg++ <--> C <--> router.pppg++;
        client3.pppg++ <--> C <--> router.pppg++;
        client1.pppg++ <--> C <--> server.pppg++;
        server.pppg++ <--> C <--> router.pppg++;
}