Simple Module Ieee80211MgmtAdhoc

Package: inet.linklayer.ieee80211.mgmt
File: src/inet/linklayer/ieee80211/mgmt/Ieee80211MgmtAdhoc.ned

C++ definition

802.11 management module used for ad-hoc mode. Relies on the MAC layer (Ieee80211Mac) for reception and transmission of frames.

This implementation never sends control or management frames, and discards any such frame received. Distributed beacon generation is not modelled. Only data frames are understood or sent at any time.

This module never switches channels, that is, it will operate on the channel the physical layer is configured for (see channelNumber in Ieee80211Radio).

Author: Andras Varga

Ieee80211MgmtAdhoc

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.

Parameters:

Name Type Default value Description
macModule string

The path to the MAC module

Properties:

Name Value Description
display i=block/cogwheel

Gates:

Name Direction Size Description
upperLayerIn input
upperLayerOut output
macIn input
macOut output
agentIn input

unused dummy to statisfy the IIeee80211Mgmt interface

agentOut output

unused dummy to statisfy the IIeee80211Mgmt interface

Source code:

//
// 802.11 management module used for ad-hoc mode.
// Relies on the MAC layer (~Ieee80211Mac) for reception and transmission of frames.
//
// This implementation never sends control or management frames, and discards
// any such frame received. Distributed beacon generation is not modelled.
// Only data frames are understood or sent at any time.
//
// This module never switches channels, that is, it will operate on the channel
// the physical layer is configured for (see channelNumber in ~Ieee80211Radio).
//
// @author Andras Varga
//
simple Ieee80211MgmtAdhoc like IIeee80211Mgmt
{
    parameters:
        string macModule;               // The path to the MAC module
        @display("i=block/cogwheel");
    gates:
        input upperLayerIn;
        output upperLayerOut;
        input macIn @labels(Ieee80211Frame);
        output macOut @labels(Ieee80211Frame);
        input agentIn @loose;   // unused dummy to statisfy the IIeee80211Mgmt interface
        output agentOut @loose; // unused dummy to statisfy the IIeee80211Mgmt interface
}