MultiNetworkLayerLowerMultiplexer

Package: inet.networklayer.multi

MultiNetworkLayerLowerMultiplexer

simple module

This module provides network protocol specific multiplexing. It's part of MultiNetworkLayer and it's meant to be used there.

Used in compound modules

Name Type Description
MultiNetworkLayer compound module

This module supports multiple different network layers simultaneously. Packets received through the transport gates are handed over to the corresponding network layer based on the attached control info. Packets received from the interface gates are also handed over to the corresponding network layer based on their runtime type.

Properties

Name Value Description
display i=block/fork

Gates

Name Direction Size Description
ifUpperIn [ ] input
ifUpperOut [ ] output
ifLowerIn [ ] input
ifLowerOut [ ] output

Source code

//
// This module provides network protocol specific multiplexing.
// It's part of MultiNetworkLayer and it's meant to be used there.
//
simple MultiNetworkLayerLowerMultiplexer
{
    parameters:
        @display("i=block/fork");

    gates:
        input ifUpperIn[] @labels(INetworkDatagram);
        output ifUpperOut[] @labels(INetworkDatagram);
        input ifLowerIn[] @labels(INetworkDatagram);
        output ifLowerOut[] @labels(INetworkDatagram);
}

File: src/inet/networklayer/multi/MultiNetworkLayer.ned