NetworkProtocolBase

Package: inet.networklayer.base

NetworkProtocolBase

simple module

Module base for different network protocols.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Known subclasses

Name Type Description
Flooding simple module

A simple flooding protocol for network-level broadcast.

ProbabilisticBroadcast simple module

Multi-hop ad-hoc data dissemination protocol based on probabilistic broadcast.

WiseRoute simple module

Wiseroute is a simple loop-free routing algorithm that builds a routing tree from a central network point, designed for sensor networks and convergecast traffic.

Extends

Name Type Description
LayeredProtocolBase simple module

Module base for different layered protocols.

Parameters

Name Type Default value Description
interfaceTableModule string

Properties

Name Value Description
display i=block/fork

Gates

Name Direction Size Description
transportIn input
transportOut output
queueIn input
queueOut output

Signals

Name Type Unit
packetReceivedFromUpper cPacket
packetReceivedFromLower cPacket
packetDropped cPacket
packetSentToLower cPacket
packetSentToUpper cPacket

Source code

//
// Module base for different network protocols.
//
simple NetworkProtocolBase extends LayeredProtocolBase
{
    parameters:
        string interfaceTableModule;
        @display("i=block/fork");
    gates:
        input transportIn @labels(INetworkProtocolControlInfo/down);
        output transportOut @labels(INetworkProtocolControlInfo/up);
        input queueIn @labels(INetworkHeader);
        output queueOut @labels(INetworkHeader);
}

File: src/inet/networklayer/base/NetworkProtocolBase.ned