File: Examples/IPv6/DemoNetworkEth/DemoNetworkEth.ned
(no description)
The following diagram shows usage relationships between modules, networks and channels. Unresolved module (and channel) types are missing from the diagram. Click here to see the full picture.
If a module type shows up more than once, that means it has been defined in more than one NED file.
FlatNetworkConfigurator6 | Configures IPv6 addresses and routing tables for a "flat" network, "flat" meaning that all hosts and routers will have the same network address and will only differ in the host part. |
Router6 | IPv6 router. |
StandardHost6 | |
TCPDump | Provides tcpdump-like functionality |
ethernetline | (no description) |
ethernetline | (no description) |
ethernetline | (no description) |
ethernetline | (no description) |
ethernetline | (no description) |
demoNetworkEth | (no description) |
Name | Type | Description |
---|---|---|
n | numeric const |
Name | Type | Description |
---|---|---|
r1.routingTable6.routingTableFile | xml | |
r1.networkLayer.ipv6.procDelay | numeric const | |
r1.ppp[*].queueType | string | |
r1.eth[*].queueType | string | |
r1.eth[*].mac.promiscuous | bool | if true, all packets are received, otherwise only the ones with matching destination MAC address |
r1.eth[*].mac.address | string | 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 | numeric | 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 | 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.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
r1.eth[*].encap.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
r2.routingTable6.routingTableFile | xml | |
r2.networkLayer.ipv6.procDelay | numeric const | |
r2.ppp[*].queueType | string | |
r2.eth[*].queueType | string | |
r2.eth[*].mac.promiscuous | bool | if true, all packets are received, otherwise only the ones with matching destination MAC address |
r2.eth[*].mac.address | string | 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 | numeric | 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 | 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.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
r2.eth[*].encap.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
cli[*].numTcpApps | numeric const | |
cli[*].numUdpApps | numeric const | |
cli[*].tcpAppType | string | |
cli[*].udpAppType | string | |
cli[*].routingTable6.routingTableFile | xml | |
cli[*].tcp.mss | numeric const | maximum segment size |
cli[*].tcp.advertisedWindow | numeric const | in bytes (Note: normally, NIC queues should be at least this size) |
cli[*].tcp.tcpAlgorithmClass | string | TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP |
cli[*].tcp.sendQueueClass | string | TCPVirtualDataSendQueue/TCPMsgBasedSendQueue |
cli[*].tcp.receiveQueueClass | string | TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue |
cli[*].tcp.recordStats | bool | recording seqNum etc. into output vectors on/off |
cli[*].pingApp.destAddr | string | |
cli[*].pingApp.srcAddr | string | |
cli[*].pingApp.packetSize | numeric const | of ping payload, in bytes |
cli[*].pingApp.interval | numeric | time to wait between pings (can be random) |
cli[*].pingApp.hopLimit | numeric const | TTL or hopLimit for IP packets |
cli[*].pingApp.count | numeric const | stop after count ping requests, 0 means continuously |
cli[*].pingApp.startTime | numeric const | send first ping at startTime |
cli[*].pingApp.stopTime | numeric const | send no pings after stopTime, 0 means forever |
cli[*].pingApp.printPing | bool | dump on stdout |
cli[*].networkLayer.ipv6.procDelay | numeric const | |
cli[*].ppp[*].queueType | string | |
cli[*].eth[*].queueType | string | |
cli[*].eth[*].mac.promiscuous | bool | if true, all packets are received, otherwise only the ones with matching destination MAC address |
cli[*].eth[*].mac.address | string | 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 | numeric | 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 | 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.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
cli[*].eth[*].encap.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
srv[*].numTcpApps | numeric const | |
srv[*].numUdpApps | numeric const | |
srv[*].tcpAppType | string | |
srv[*].udpAppType | string | |
srv[*].routingTable6.routingTableFile | xml | |
srv[*].tcp.mss | numeric const | maximum segment size |
srv[*].tcp.advertisedWindow | numeric const | in bytes (Note: normally, NIC queues should be at least this size) |
srv[*].tcp.tcpAlgorithmClass | string | TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP |
srv[*].tcp.sendQueueClass | string | TCPVirtualDataSendQueue/TCPMsgBasedSendQueue |
srv[*].tcp.receiveQueueClass | string | TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue |
srv[*].tcp.recordStats | bool | recording seqNum etc. into output vectors on/off |
srv[*].pingApp.destAddr | string | |
srv[*].pingApp.srcAddr | string | |
srv[*].pingApp.packetSize | numeric const | of ping payload, in bytes |
srv[*].pingApp.interval | numeric | time to wait between pings (can be random) |
srv[*].pingApp.hopLimit | numeric const | TTL or hopLimit for IP packets |
srv[*].pingApp.count | numeric const | stop after count ping requests, 0 means continuously |
srv[*].pingApp.startTime | numeric const | send first ping at startTime |
srv[*].pingApp.stopTime | numeric const | send no pings after stopTime, 0 means forever |
srv[*].pingApp.printPing | bool | dump on stdout |
srv[*].networkLayer.ipv6.procDelay | numeric const | |
srv[*].ppp[*].queueType | string | |
srv[*].eth[*].queueType | string | |
srv[*].eth[*].mac.promiscuous | bool | if true, all packets are received, otherwise only the ones with matching destination MAC address |
srv[*].eth[*].mac.address | string | 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 | numeric | 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 | 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.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
srv[*].eth[*].encap.writeScalars | bool | enable/disable recording statistics in omnetpp.sca |
module DemoNetworkEth parameters: n: numeric const; submodules: configurator: FlatNetworkConfigurator6; parameters: moduleTypes = "Router6 StandardHost6 TCPDump", nonIPModuleTypes = "EtherHub TCPDump"; display: "i=block/cogwheel"; r1: Router6; display: "i=abstract/router"; r2: Router6; display: "i=abstract/router"; cli: StandardHost6[n]; display: "i=device/laptop"; srv: StandardHost6[n]; display: "i=device/server_l"; linemonitor: TCPDump[n]; display: "i=device/clock"; connections nocheck: for i=0..n-1 do cli[i].ethOut++ --> ethernetline --> linemonitor[i].in1; linemonitor[i].out2 --> ethernetline --> r1.ethIn++; linemonitor[i].in2 <-- ethernetline <-- r1.ethOut++; cli[i].ethIn++ <-- ethernetline <-- linemonitor[i].out1; //cli[i].ethOut++ --> ethernetline --> r1.ethIn++; //cli[i].ethIn++ <-- ethernetline <-- r1.ethOut++; srv[i].ethOut++ --> ethernetline --> r2.ethIn++; srv[i].ethIn++ <-- ethernetline <-- r2.ethOut++; endfor r1.ethOut++ --> ethernetline --> r2.ethIn++; r1.ethIn++ <-- ethernetline <-- r2.ethOut++; endmodule