Simple Module ConnectionManager

Package: org.mixim.base.connectionManager
File: base/connectionManager/ConnectionManager.ned

C++ definition

Module to control all connection related stuff

The central module that coordinates the connections between all nodes, and handles dynamic gate creation. ConnectionManager therefore periodically communicates with the mobility module and ChannelAccess.

The four parameters pMax, sat, alpha, and carrierFrequency are used to calculate the interference distance between nodes. The values used here in ConnectionManager are used to calculate the upper bound, i.e. they can be redifined in the analogue models, but never such that the maximal interference distance is exeeded.

Author: Steffen Sroka, Daniel Willkomm, Karl Wessel

See also: BaseMobility

ConnectionManager

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram. Click here to see the full picture.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram. Click here to see the full picture.

Networks:

AnalogueModels (network)

This example shows how to use AnalogueModels.

BaseMoBANNetwork (network)

This network is exactly the same as baseNetwork existing among the examples of MiXiM, but the desired number of MoBAN coordinator modules have been added. Some nodes of type BaseNode use MoBANLocal module as their mobility module. Then those nodes will be considered as WBAN nodes. Those node have a parameter named "coordinatorIndex" that determines to which WBAN (coordinator) the node belongs.

BaseNetwork (network)

This example shows the basic structure of an network using MiXiM.

BMAC (network) (no description)
CSMAMac (network)

This example shows how to use MiXiMs CSMA protocol implementation.

ieee802154a (network)

This example illustrates the use of the IEEE 802.15.4A UWB-IR simulation model implemented in MiXiM. The omnetpp.ini files comprises two scenarios. Both scenarios involve only two hosts.

ieee802154Narrow (network)

This example shows how to use MiXiMs implementation of the ieee802154 narrow band protocol. It also provides an example on using the global blackboard provided by BaseWorldUtility.

LMAC (network) (no description)
Mac80211 (network)

This example shows how to use MiXiMs 802.11 protocol implementation.

MultiConnectionManager (network)

This example shows how to use multiple ConnectionManagers in your simulation.

WSNRouting (network)

This example shows how to simulate wireless sensor networks. Three different routing protocols are considered, for different traffic types: convergecast, with Wiseroute; network-level broadcast, with flooding; and probabilistic broadcast.

Parameters:

Name Type Default value Description
coreDebug bool

debug switch for core framework

sendDirect bool

send directly to the node or create separate gates for every connection

pMax double

maximum sending power used for this network [mW]

sat double

minimum signal attenuation threshold [dBm]

alpha double

minimum path loss coefficient

carrierFrequency double

minimum carrier frequency of the channel [Hz]

drawMaxIntfDist bool false

should the maximum interference distance be displayed for each node?

Properties:

Name Value Description
display i=abstract/multicast

Source code:

// Module to control all connection related stuff
//
// The central module that coordinates the connections between all
// nodes, and handles dynamic gate creation.  ConnectionManager therefore
// periodically communicates with the mobility module and
// ChannelAccess.
//
// The four parameters pMax, sat, alpha, and carrierFrequency are used
// to calculate the interference distance between nodes. The values used
// here in ConnectionManager are used to calculate the upper bound,
// i.e. they can be redifined in the analogue models, but never such
// that the maximal interference distance is exeeded.
//       
// @author Steffen Sroka, Daniel Willkomm, Karl Wessel
// @see BaseMobility
//
simple ConnectionManager
{
    parameters:
        // debug switch for core framework
        bool coreDebug;
        // send directly to the node or create separate gates for every connection
        bool sendDirect;
        // maximum sending power used for this network [mW]
        double pMax @unit(mW);
        // minimum signal attenuation threshold [dBm]
        double sat @unit(dBm);
        // minimum path loss coefficient
        double alpha;
        // minimum carrier frequency of the channel [Hz]
        double carrierFrequency @unit(Hz);
        // should the maximum interference distance be displayed for each node?
        bool drawMaxIntfDist = default(false);

        @display("i=abstract/multicast");
}