Network ARPTest

Package: inet.examples.ethernet.arptest2
File: examples/ethernet/arptest2/ARPTest.ned

(no description)

StandardHost Router Router Router EtherBus Router EtherBus Router Router Router Router StandardHost IPv4NetworkConfigurator

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

Unassigned submodule parameters:

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

TODO @signal, @statistic

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

whether to display IP addresses on links

server.pcapRecorder.verbose bool false

whether to log packets on the module output

server.pcapRecorder.pcapFile string ""

the PCAP file to be written

server.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

server.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

server.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

server.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

server.pcapRecorder.alwaysFlush bool false

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

server.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

server.lo0.lo.mtu int 4470B
router8.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router8.pcapRecorder.verbose bool false

whether to log packets on the module output

router8.pcapRecorder.pcapFile string ""

the PCAP file to be written

router8.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router8.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router8.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router8.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router8.pcapRecorder.alwaysFlush bool false

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

router8.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router8.lo0.lo.mtu int 4470B
router8.bgp.interfaceTableModule string

The path to the InterfaceTable module

router8.bgp.routingTableModule string
router8.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router8.bgp.dataTransferMode string
router7.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router7.pcapRecorder.verbose bool false

whether to log packets on the module output

router7.pcapRecorder.pcapFile string ""

the PCAP file to be written

router7.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router7.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router7.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router7.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router7.pcapRecorder.alwaysFlush bool false

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

router7.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router7.lo0.lo.mtu int 4470B
router7.bgp.interfaceTableModule string

The path to the InterfaceTable module

router7.bgp.routingTableModule string
router7.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router7.bgp.dataTransferMode string
router6.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router6.pcapRecorder.verbose bool false

whether to log packets on the module output

router6.pcapRecorder.pcapFile string ""

the PCAP file to be written

router6.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router6.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router6.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router6.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router6.pcapRecorder.alwaysFlush bool false

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

router6.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router6.lo0.lo.mtu int 4470B
router6.bgp.interfaceTableModule string

The path to the InterfaceTable module

router6.bgp.routingTableModule string
router6.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router6.bgp.dataTransferMode string
router5.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router5.pcapRecorder.verbose bool false

whether to log packets on the module output

router5.pcapRecorder.pcapFile string ""

the PCAP file to be written

router5.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router5.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router5.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router5.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router5.pcapRecorder.alwaysFlush bool false

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

router5.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router5.lo0.lo.mtu int 4470B
router5.bgp.interfaceTableModule string

The path to the InterfaceTable module

router5.bgp.routingTableModule string
router5.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router5.bgp.dataTransferMode string
router4.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router4.pcapRecorder.verbose bool false

whether to log packets on the module output

router4.pcapRecorder.pcapFile string ""

the PCAP file to be written

router4.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router4.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router4.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router4.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router4.pcapRecorder.alwaysFlush bool false

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

router4.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router4.lo0.lo.mtu int 4470B
router4.bgp.interfaceTableModule string

The path to the InterfaceTable module

router4.bgp.routingTableModule string
router4.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router4.bgp.dataTransferMode string
router3.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router3.pcapRecorder.verbose bool false

whether to log packets on the module output

router3.pcapRecorder.pcapFile string ""

the PCAP file to be written

router3.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router3.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router3.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router3.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router3.pcapRecorder.alwaysFlush bool false

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

router3.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router3.lo0.lo.mtu int 4470B
router3.bgp.interfaceTableModule string

The path to the InterfaceTable module

router3.bgp.routingTableModule string
router3.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router3.bgp.dataTransferMode string
router2.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router2.pcapRecorder.verbose bool false

whether to log packets on the module output

router2.pcapRecorder.pcapFile string ""

the PCAP file to be written

router2.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router2.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router2.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router2.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router2.pcapRecorder.alwaysFlush bool false

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

router2.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router2.lo0.lo.mtu int 4470B
router2.bgp.interfaceTableModule string

The path to the InterfaceTable module

router2.bgp.routingTableModule string
router2.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router2.bgp.dataTransferMode string
router1.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

router1.pcapRecorder.verbose bool false

whether to log packets on the module output

router1.pcapRecorder.pcapFile string ""

the PCAP file to be written

router1.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

router1.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

router1.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

router1.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

router1.pcapRecorder.alwaysFlush bool false

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

router1.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

router1.lo0.lo.mtu int 4470B
router1.bgp.interfaceTableModule string

The path to the InterfaceTable module

router1.bgp.routingTableModule string
router1.bgp.ospfRoutingModule string hasOSPF ? "^.ospf" : ""
router1.bgp.dataTransferMode string
client.status.initialStatus string "UP"

TODO @signal, @statistic

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

whether to display IP addresses on links

client.pcapRecorder.verbose bool false

whether to log packets on the module output

client.pcapRecorder.pcapFile string ""

the PCAP file to be written

client.pcapRecorder.snaplen int 65535

maximum number of bytes to record per packet

client.pcapRecorder.dumpBadFrames bool true

enable dump of frames with hasBitError

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

space-separated list of sibling module names to listen on

client.pcapRecorder.sendingSignalNames string "packetSentToLower"

space-separated list of outbound packet signals to subscribe to

client.pcapRecorder.receivingSignalNames string "packetReceivedFromLower"

space-separated list of inbound packet signals to subscribe to

client.pcapRecorder.alwaysFlush bool false

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

client.lo0.lo.interfaceTableModule string

The path to the InterfaceTable module

client.lo0.lo.mtu int 4470B
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)

Source code:

network ARPTest
{
    types:
        channel ethline extends DatarateChannel
        {
            delay = 500ns;
            datarate = 10Mbps;
        }
    submodules:
        server: StandardHost {
            @display("p=480,198;i=device/server_l");
        }
        router8: Router {
            @display("p=478,100");
        }
        router7: Router {
            @display("p=329,100");
        }
        router6: Router {
            @display("p=254,100");
        }
        bus2: EtherBus {
            positions = "";
            propagationSpeed = 2e8 mps;
            @display("p=260,40;b=260,10");
        }
        router5: Router {
            @display("p=187,98");
        }
        bus1: EtherBus {
            positions = "";
            propagationSpeed = 2e8 mps;
            @display("p=280,170;b=260,10");
        }
        router4: Router {
            @display("p=386,240");
        }
        router3: Router {
            @display("p=320,240");
        }
        router2: Router {
            @display("p=247,240");
        }
        router1: Router {
            @display("p=182,283");
        }
        client: StandardHost {
            @display("p=54,274;i=device/laptop_l");
        }
        configurator: IPv4NetworkConfigurator {
            @display("p=46,111");
        }
    connections:
        server.ethg++ <--> ethline <--> router8.ethg++;
        bus2.ethg++ <--> ethline <--> router5.ethg++;
        bus2.ethg++ <--> ethline <--> router6.ethg++;
        bus2.ethg++ <--> ethline <--> router7.ethg++;
        router8.ethg++ <--> ethline <--> router7.ethg++;
        bus1.ethg++ <--> ethline <--> router1.ethg++;
        bus1.ethg++ <--> ethline <--> router5.ethg++;
        bus1.ethg++ <--> ethline <--> router2.ethg++;
        bus1.ethg++ <--> ethline <--> router3.ethg++;
        bus1.ethg++ <--> ethline <--> router4.ethg++;
        client.ethg++ <--> ethline <--> router1.ethg++;
}