Simple Module GenericNetworkProtocol

Package: inet.networklayer.generic
File: src/inet/networklayer/generic/GenericNetworkProtocol.ned

C++ definition

This module is a simplified generic network protocol that routes generic datagrams using different kind of network addresses.

Author: Andras Varga

GenericNetworkProtocol

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.

Used in compound modules:

Name Type Description
GenericNetworkLayer compound module

This module provides the generic network layer.

Parameters:

Name Type Default value Description
interfaceTableModule string

The path to the InterfaceTable module

routingTableModule string
arpModule string
procDelay double 0s
hopLimit int 32

Properties:

Name Value Description
display i=block/routing

Gates:

Name Direction Size Description
transportIn [ ] input
transportOut [ ] output
arpIn input
arpOut output
queueIn [ ] input
queueOut [ ] output

Source code:

//
// This module is a simplified generic network protocol that routes
// generic datagrams using different kind of network addresses. 
//
// @author Andras Varga
//
simple GenericNetworkProtocol
{
    parameters:
        string interfaceTableModule;   // The path to the InterfaceTable module
        string routingTableModule;
        string arpModule;
        double procDelay @unit("s") = default(0s);
        int hopLimit = default(32);
        @display("i=block/routing");
    gates:
        input transportIn[] @labels(GenericNetworkProtocolControlInfo/down,TCPSegment,UDPPacket);
        output transportOut[] @labels(GenericNetworkProtocolControlInfo/up,TCPSegment,UDPPacket);
        input arpIn;
        output arpOut;
        input queueIn[] @labels(GenericDatagram);
        output queueOut[] @labels(GenericDatagram);
}