Compound Module MulticastNetwork

File: Examples/INET/Multicast/MulticastNetwork.ned

(no description)

host1: StandardHost host2: StandardHost host3: StandardHost host4: StandardHost host5: StandardHost host6: StandardHost router1: Router router2: Router router3: Router router4: Router

Usage diagram:

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.

Contains the following modules:

If a module type shows up more than once, that means it has been defined in more than one NED file.

Router

IP router.

StandardHost

IP host with TCP, UDP layers and applications.

Contains the following channels:

dialup (no description)
ethernet (no description)
ethernet (no description)
ethernet (no description)
fiberrouter (no description)

Networks:

multicastNetwork (no description)

Unassigned submodule parameters:

Name Type Description
host1.numTcpApps numeric const
host1.numUdpApps numeric const
host1.tcpAppType string
host1.udpAppType string
host1.namid numeric const
host1.tcp.mss numeric const

maximum segment size

host1.tcp.advertisedWindow numeric const

in bytes (Note: normally, NIC queues should be at least this size)

host1.tcp.tcpAlgorithmClass string

TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP

host1.tcp.sendQueueClass string

TCPVirtualDataSendQueue/TCPMsgBasedSendQueue

host1.tcp.receiveQueueClass string

TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue

host1.tcp.recordStats bool

recording seqNum etc. into output vectors on/off

host1.pingApp.destAddr string

destination IP or IPv6 address

host1.pingApp.srcAddr string

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

host1.pingApp.packetSize numeric const

of ping payload, in bytes

host1.pingApp.interval numeric

time to wait between pings (can be random)

host1.pingApp.hopLimit numeric const

TTL or hopLimit for IP packets

host1.pingApp.count numeric const

stop after count ping requests, 0 means continuously

host1.pingApp.startTime numeric const

send first ping at startTime

host1.pingApp.stopTime numeric const

send no pings after stopTime, 0 means forever

host1.pingApp.printPing bool

dump on stdout

host1.networkLayer.ip.procDelay numeric const
host1.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

host1.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

host1.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

host1.ppp[*].queueType string
host1.eth[*].queueType string
host1.eth[*].mac.promiscuous bool

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

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

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

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

host1.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host1.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host2.numTcpApps numeric const
host2.numUdpApps numeric const
host2.tcpAppType string
host2.udpAppType string
host2.namid numeric const
host2.tcp.mss numeric const

maximum segment size

host2.tcp.advertisedWindow numeric const

in bytes (Note: normally, NIC queues should be at least this size)

host2.tcp.tcpAlgorithmClass string

TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP

host2.tcp.sendQueueClass string

TCPVirtualDataSendQueue/TCPMsgBasedSendQueue

host2.tcp.receiveQueueClass string

TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue

host2.tcp.recordStats bool

recording seqNum etc. into output vectors on/off

host2.pingApp.destAddr string

destination IP or IPv6 address

host2.pingApp.srcAddr string

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

host2.pingApp.packetSize numeric const

of ping payload, in bytes

host2.pingApp.interval numeric

time to wait between pings (can be random)

host2.pingApp.hopLimit numeric const

TTL or hopLimit for IP packets

host2.pingApp.count numeric const

stop after count ping requests, 0 means continuously

host2.pingApp.startTime numeric const

send first ping at startTime

host2.pingApp.stopTime numeric const

send no pings after stopTime, 0 means forever

host2.pingApp.printPing bool

dump on stdout

host2.networkLayer.ip.procDelay numeric const
host2.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

host2.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

host2.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

host2.ppp[*].queueType string
host2.eth[*].queueType string
host2.eth[*].mac.promiscuous bool

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

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

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

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

host2.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host2.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host3.numTcpApps numeric const
host3.numUdpApps numeric const
host3.tcpAppType string
host3.udpAppType string
host3.namid numeric const
host3.tcp.mss numeric const

maximum segment size

host3.tcp.advertisedWindow numeric const

in bytes (Note: normally, NIC queues should be at least this size)

host3.tcp.tcpAlgorithmClass string

TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP

host3.tcp.sendQueueClass string

TCPVirtualDataSendQueue/TCPMsgBasedSendQueue

host3.tcp.receiveQueueClass string

TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue

host3.tcp.recordStats bool

recording seqNum etc. into output vectors on/off

host3.pingApp.destAddr string

destination IP or IPv6 address

host3.pingApp.srcAddr string

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

host3.pingApp.packetSize numeric const

of ping payload, in bytes

host3.pingApp.interval numeric

time to wait between pings (can be random)

host3.pingApp.hopLimit numeric const

TTL or hopLimit for IP packets

host3.pingApp.count numeric const

stop after count ping requests, 0 means continuously

host3.pingApp.startTime numeric const

send first ping at startTime

host3.pingApp.stopTime numeric const

send no pings after stopTime, 0 means forever

host3.pingApp.printPing bool

dump on stdout

host3.networkLayer.ip.procDelay numeric const
host3.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

host3.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

host3.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

host3.ppp[*].queueType string
host3.eth[*].queueType string
host3.eth[*].mac.promiscuous bool

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

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

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

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

host3.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host3.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host4.numTcpApps numeric const
host4.numUdpApps numeric const
host4.tcpAppType string
host4.udpAppType string
host4.namid numeric const
host4.tcp.mss numeric const

maximum segment size

host4.tcp.advertisedWindow numeric const

in bytes (Note: normally, NIC queues should be at least this size)

host4.tcp.tcpAlgorithmClass string

TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP

host4.tcp.sendQueueClass string

TCPVirtualDataSendQueue/TCPMsgBasedSendQueue

host4.tcp.receiveQueueClass string

TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue

host4.tcp.recordStats bool

recording seqNum etc. into output vectors on/off

host4.pingApp.destAddr string

destination IP or IPv6 address

host4.pingApp.srcAddr string

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

host4.pingApp.packetSize numeric const

of ping payload, in bytes

host4.pingApp.interval numeric

time to wait between pings (can be random)

host4.pingApp.hopLimit numeric const

TTL or hopLimit for IP packets

host4.pingApp.count numeric const

stop after count ping requests, 0 means continuously

host4.pingApp.startTime numeric const

send first ping at startTime

host4.pingApp.stopTime numeric const

send no pings after stopTime, 0 means forever

host4.pingApp.printPing bool

dump on stdout

host4.networkLayer.ip.procDelay numeric const
host4.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

host4.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

host4.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

host4.ppp[*].queueType string
host4.eth[*].queueType string
host4.eth[*].mac.promiscuous bool

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

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

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

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

host4.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host4.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host5.numTcpApps numeric const
host5.numUdpApps numeric const
host5.tcpAppType string
host5.udpAppType string
host5.namid numeric const
host5.tcp.mss numeric const

maximum segment size

host5.tcp.advertisedWindow numeric const

in bytes (Note: normally, NIC queues should be at least this size)

host5.tcp.tcpAlgorithmClass string

TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP

host5.tcp.sendQueueClass string

TCPVirtualDataSendQueue/TCPMsgBasedSendQueue

host5.tcp.receiveQueueClass string

TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue

host5.tcp.recordStats bool

recording seqNum etc. into output vectors on/off

host5.pingApp.destAddr string

destination IP or IPv6 address

host5.pingApp.srcAddr string

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

host5.pingApp.packetSize numeric const

of ping payload, in bytes

host5.pingApp.interval numeric

time to wait between pings (can be random)

host5.pingApp.hopLimit numeric const

TTL or hopLimit for IP packets

host5.pingApp.count numeric const

stop after count ping requests, 0 means continuously

host5.pingApp.startTime numeric const

send first ping at startTime

host5.pingApp.stopTime numeric const

send no pings after stopTime, 0 means forever

host5.pingApp.printPing bool

dump on stdout

host5.networkLayer.ip.procDelay numeric const
host5.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

host5.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

host5.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

host5.ppp[*].queueType string
host5.eth[*].queueType string
host5.eth[*].mac.promiscuous bool

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

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

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

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

host5.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host5.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host6.numTcpApps numeric const
host6.numUdpApps numeric const
host6.tcpAppType string
host6.udpAppType string
host6.namid numeric const
host6.tcp.mss numeric const

maximum segment size

host6.tcp.advertisedWindow numeric const

in bytes (Note: normally, NIC queues should be at least this size)

host6.tcp.tcpAlgorithmClass string

TCPTahoe/TCPReno/TCPNoCongestionControl/DumbTCP

host6.tcp.sendQueueClass string

TCPVirtualDataSendQueue/TCPMsgBasedSendQueue

host6.tcp.receiveQueueClass string

TCPVirtualDataRcvQueue/TCPMsgBasedRcvQueue

host6.tcp.recordStats bool

recording seqNum etc. into output vectors on/off

host6.pingApp.destAddr string

destination IP or IPv6 address

host6.pingApp.srcAddr string

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

host6.pingApp.packetSize numeric const

of ping payload, in bytes

host6.pingApp.interval numeric

time to wait between pings (can be random)

host6.pingApp.hopLimit numeric const

TTL or hopLimit for IP packets

host6.pingApp.count numeric const

stop after count ping requests, 0 means continuously

host6.pingApp.startTime numeric const

send first ping at startTime

host6.pingApp.stopTime numeric const

send no pings after stopTime, 0 means forever

host6.pingApp.printPing bool

dump on stdout

host6.networkLayer.ip.procDelay numeric const
host6.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

host6.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

host6.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

host6.ppp[*].queueType string
host6.eth[*].queueType string
host6.eth[*].mac.promiscuous bool

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

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

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

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

host6.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

host6.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router1.networkLayer.proxyARP bool
router1.networkLayer.ip.procDelay numeric const
router1.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

router1.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

router1.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

router1.ppp[*].queueType string
router1.eth[*].queueType string
router1.eth[*].mac.promiscuous bool

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

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

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

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

router1.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router1.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router2.networkLayer.proxyARP bool
router2.networkLayer.ip.procDelay numeric const
router2.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

router2.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

router2.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

router2.ppp[*].queueType string
router2.eth[*].queueType string
router2.eth[*].mac.promiscuous bool

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

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

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

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

router2.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router2.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router3.networkLayer.proxyARP bool
router3.networkLayer.ip.procDelay numeric const
router3.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

router3.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

router3.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

router3.ppp[*].queueType string
router3.eth[*].queueType string
router3.eth[*].mac.promiscuous bool

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

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

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

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

router3.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router3.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router4.networkLayer.proxyARP bool
router4.networkLayer.ip.procDelay numeric const
router4.networkLayer.arp.retryTimeout numeric

number seconds ARP waits between retries to resolve an IP address

router4.networkLayer.arp.retryCount numeric

number of times ARP will attempt to resolve an IP address

router4.networkLayer.arp.cacheTimeout numeric

number seconds unused entries in the cache will time out

router4.ppp[*].queueType string
router4.eth[*].queueType string
router4.eth[*].mac.promiscuous bool

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

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

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

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

router4.eth[*].mac.writeScalars bool

enable/disable recording statistics in omnetpp.sca

router4.eth[*].encap.writeScalars bool

enable/disable recording statistics in omnetpp.sca

Source code:

module MulticastNetwork
    submodules:
        host1: StandardHost;
            parameters:
                IPForward = false,
                routingFile = "mchost1.mrt";
            gatesizes:
                in[1],
                out[1];
            display: "p=125,52;i=device/pc2";
        host2: StandardHost;
            parameters:
                IPForward = true,
                routingFile = "mchost2.mrt";
            gatesizes:
                in[2],
                out[2];
            display: "p=60,244;i=device/pc2";
        host3: StandardHost;
            parameters:
                IPForward = true,
                routingFile = "mchost3.mrt";
            gatesizes:
                in[2],
                out[2];
            display: "p=196,244;i=device/pc2";
        host4: StandardHost;
            parameters:
                IPForward = false,
                routingFile = "mchost4.mrt";
            gatesizes:
                in[1],
                out[1];
            display: "p=406,305;i=device/pc2";
        host5: StandardHost;
            parameters:
                IPForward = false,
                routingFile = "mchost5.mrt";
            gatesizes:
                in[1],
                out[1];
            display: "p=492,59;i=device/pc2";
        host6: StandardHost;
            parameters:
                IPForward = false,
                routingFile = "mchost6.mrt";
            gatesizes:
                in[1],
                out[1];
            display: "p=492,204;i=device/pc2";
        router1: Router;
            parameters:
                routingFile = "mcrouter1.mrt";
            gatesizes:
                in[4],
                out[4];
            display: "p=124,135;i=abstract/router";
        router2: Router;
            parameters:
                routingFile = "mcrouter2.mrt";
            gatesizes:
                in[3],
                out[3];
            display: "p=292,135;i=abstract/router";
        router3: Router;
            parameters:
                routingFile = "mcrouter3.mrt";
            gatesizes:
                in[2],
                out[2];
            display: "p=292,238;i=abstract/router";
        router4: Router;
            parameters:
                routingFile = "mcrouter4.mrt";
            gatesizes:
                in[3],
                out[3];
            display: "p=408,135;i=abstract/router";
    connections:
        // * Domain 1 * (172.0.0.x)
        host1.out[0] --> ethernet --> router1.in[0];
        host1.in[0] <-- ethernet <-- router1.out[0];

        host2.out[0] --> ethernet --> router1.in[1];
        host2.in[0] <-- ethernet <-- router1.out[1];
        host2.out[1] --> dialup --> host3.in[1];
        host2.in[1] <-- dialup <-- host3.out[1];

        host3.out[0] --> ethernet --> router1.in[2];
        host3.in[0] <-- ethernet <-- router1.out[2];

        // * Domain 2 * (172.0.1.x)
        host4.out[0] --> ethernet --> router3.in[0];
        host4.in[0] <-- ethernet <-- router3.out[0];

        // * Domain 3 * (172.0.2.x)
        host5.out[0] --> dialup --> router4.in[0];
        host5.in[0] <-- dialup <-- router4.out[0];

        host6.out[0] --> dialup --> router4.in[1];
        host6.in[0] <-- dialup <-- router4.out[1];

        // * Router Connections * (172.1.0.x)
        router2.out[0] --> fiberrouter --> router1.in[3];
        router2.in[0] <-- fiberrouter <-- router1.out[3];

        router2.out[1] --> fiberrouter --> router3.in[1];
        router2.in[1] <-- fiberrouter <-- router3.out[1];

        router2.out[2] --> fiberrouter --> router4.in[2];
        router2.in[2] <-- fiberrouter <-- router4.out[2];
endmodule