Network DemoNetworkEth

Package: inet.examples.ipv6.demonetworketh
File: examples/ipv6/demonetworketh/DemoNetworkEth.ned

(no description)

FlatNetworkConfigurator6 Router6 Router6 StandardHost6 StandardHost6 TCPDump

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
n int

Properties:

Name Value Description
isNetwork

Unassigned submodule parameters:

Name Type Default value Description
r1.routingTable6.routingTableFile xml
r1.networkLayer.ipv6.procDelay double 0s
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.routingTable6.routingTableFile xml
r2.networkLayer.ipv6.procDelay double 0s
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
cli.routingTable6.routingTableFile xml
cli.pingApp.destAddr string ""

destination IP or IPv6 address

cli.pingApp.srcAddr string ""

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

cli.pingApp.packetSize double 56B

of ping payload, in bytes

cli.pingApp.interval double 1s

time to wait between pings (can be random)

cli.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

cli.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

cli.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

cli.pingApp.printPing bool true

dump on stdout

cli.networkLayer.ipv6.procDelay double 0s
cli.ppp.ppp.mtu int 4470
cli.eth.mac.promiscuous bool false

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

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

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

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

cli.eth.mac.mtu int 1500
srv.routingTable6.routingTableFile xml
srv.pingApp.destAddr string ""

destination IP or IPv6 address

srv.pingApp.srcAddr string ""

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

srv.pingApp.packetSize double 56B

of ping payload, in bytes

srv.pingApp.interval double 1s

time to wait between pings (can be random)

srv.pingApp.hopLimit double 32

TTL or hopLimit for IP packets

srv.pingApp.count double 0

stop after count ping requests, 0 means continuously

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

send first ping at startTime

srv.pingApp.stopTime double 0s

send no pings after stopTime, 0 means forever

srv.pingApp.printPing bool true

dump on stdout

srv.networkLayer.ipv6.procDelay double 0s
srv.ppp.ppp.mtu int 4470
srv.eth.mac.promiscuous bool false

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

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

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

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

srv.eth.mac.mtu int 1500
linemonitor.dumpFile string ""
linemonitor.threadEnable bool false
linemonitor.snaplen int 65535
linemonitor.verbosity int 0

Source code:

network DemoNetworkEth
{
    parameters:
        int n;
    types:
        channel ethernetline extends DatarateChannel
        {
            delay = 0.1us;
        }
    submodules:
        configurator: FlatNetworkConfigurator6;
        r1: Router6;
        r2: Router6;
        cli[n]: StandardHost6;
        srv[n]: StandardHost6;
        linemonitor[n]: TCPDump;
    connections:
        for i=0..n-1 {
            // FIXME adjust to the new TCPDump module
            //            cli[i].ethg++ <--> ethernetline <--> linemonitor[i].a;
            //            linemonitor[i].b <--> ethernetline <--> r1.ethg++;
            cli[i].ethg++ <--> ethernetline <--> r1.ethg++;
            srv[i].ethg++ <--> ethernetline <--> r2.ethg++;
        }
        r1.ethg++ <--> ethernetline <--> r2.ethg++;
}