Compound Module FloodHost

File: networks/floodTest/FloodHost.ned

Flood Host

TODO: docu

Author: Daniel Willkomm

blackboard: Blackboard mobility: BasicMobility arp: SimpleArp appl: applLayer like BasicApplLayer net: Flood nic: CoreTestNic

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.


Basic class for the application layer


Basic module for all mobility modules.


The Blackboard works as entity to enable inter layer / process communication.


The nic (network interface card) is a compound module that contains the MAC and PHY of a host within the Mobility Framework


A simple flooding protocol

SimpleArp (no description)

Used in compound modules:

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

FloodNetwork (no description)


Name Type Description
applLayer string

application layer type


Name Direction Description
radioIn input

radioIn gate for sendDirect

Unassigned submodule parameters:

Name Type Description
blackboard.coreDebug numeric const

debug switch for core framework

mobility.coreDebug numeric const

debug switch for the core framework

mobility.x numeric const

x coordinate of the nodes' position (-1 = random)

mobility.y numeric const

y coordinate of the nodes' position (-1 = random)

arp.debug bool
appl.debug bool

debug switch

appl.headerLength numeric const

length of the application message header (in bits)

net.debug bool

debug switch

net.headerLength numeric const

length of the network header

net.plainFlooding bool

flag whether to use plain flooding

net.bcMaxEntries numeric const

Max number of entries in the list of already broadcasted messages

net.bcDelTime numeric const

Time after which an entry for an already broadcasted msg can be deleted

net.defaultTtl numeric const

Default time-to-live (ttl) used for this module

nic.mac.debug bool

debug switch

nic.mac.headerLength numeric const

level at which we consider medium busy

nic.mac.queueLength numeric const

length of the MAC queue

nic.mac.bitrate numeric const

bit rate in bit/s

nic.mac.defaultChannel numeric const

default channel

nic.decider.coreDebug bool

debug switch

nic.snrEval.coreDebug bool

debug switch

nic.snrEval.headerLength numeric const bool numeric const

time parameters, how long does it take to switch to sleep mode numeric const

switch to send mode numeric const

switch to recv mode

Source code:

module FloodHost
        applLayer: string; //application layer type

        in: radioIn; //radioIn gate for sendDirect

       blackboard: Blackboard;
            display: "p=130,50;b=25,25;o=black";
        mobility: BasicMobility;
            display: "p=130,150;i=cogwheel2";
        arp: SimpleArp;
            display: "p=130,100;b=25,25";
        appl: applLayer like BasicApplLayer;
            display: "b=35,26;p=60,50;i=app";
        net: Flood;
            display: "b=32,30;p=60,108;i=prot1";
        nic: CoreTestNic;
            display: "b=32,30;p=60,166;i=iface";

        nic.uppergateOut --> net.lowergateIn;
        nic.uppergateIn <-- net.lowergateOut;
	nic.upperControlOut --> net.lowerControlIn;	

	net.uppergateOut --> appl.lowergateIn;
	net.uppergateIn <-- appl.lowergateOut;
	net.upperControlOut --> appl.lowerControlIn;		

	radioIn --> nic.radioIn;

    display: "p=10,10;b=180,200,rect;o=white";