Ieee80211MgmtAp

Package: inet.linklayer.ieee80211.mgmt

Ieee80211MgmtAp

simple module

Used in 802.11 infrastructure mode in an access point (AP).

This module expects Ieee80211MgmtSta modules to be resent in the stations.

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

This module relies on a connected Ieee80211Mac for actual reception and transmission of frames.

Inheritance diagram

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

Parameters

Name Type Default value Description
ssid string "SSID"
beaconInterval double 100ms
numAuthSteps int 4

use 2 for Open System auth, 4 for WEP

interfaceTableModule string
radioModule string "^.radio"

The path to the Radio module //FIXME remove default value

mibModule string
macModule string

The path to the MAC module

Properties

Name Value Description
display i=block/cogwheel

Gates

Name Direction Size Description
macIn input

from Ieee80211Mac

macOut output

to Ieee80211Mac

agentIn input

unused dummy to statisfy the IIeee80211Mgmt interface

agentOut output

unused dummy to statisfy the IIeee80211Mgmt interface

Signals

Name Type Unit
l2ApDisassociated inet::ieee80211::Ieee80211MgmtAp::NotificationInfoSta
l2ApAssociated inet::ieee80211::Ieee80211MgmtAp::NotificationInfoSta

Scheduled messages (observed)

msgkindctrltagsmsgnamecontext
omnetpp::cMessage0beaconTimer

Called methods (observed)

functioninfocall from
inet::ieee80211::Ieee80211MgmtAp::receiveSignalradioChannelChangedIeee80211ScalarRadio

Incoming messages (observed)

gatemsgkindctrlsrcModuletags
macInPacket0Ieee80211MacErrorRateInd, InterfaceInd, MacAddressInd, PacketProtocolTag, SignalPowerInd, SignalTimeInd, SnirInd, Ieee80211ChannelInd, Ieee80211ModeInd

Outgoing messages (observed)

gatemsgkindctrldestModuletags
macOutPacket0Ieee80211MacIeee80211SubtypeReq, MacAddressReq, PacketProtocolTag

Packet operations (observed)

chunkTypepacketAction
Ieee80211AssociationResponseFrameinsertAtBack
Ieee80211AuthenticationFrameinsertAtBack, peekData
Ieee80211BeaconFrameinsertAtBack
Ieee80211DataOrMgmtHeaderpeekAt
Ieee80211ProbeRequestFramepeekData
Ieee80211ProbeResponseFrameinsertAtBack

Shared Tagging operations (observed)

tagTypetagAction
Ieee80211SubtypeReqaddTag
MacAddressReqaddTag
PacketProtocolTagaddTagIfAbsent

Source code

//
// Used in 802.11 infrastructure mode in an access point (AP).
//
// This module expects ~Ieee80211MgmtSta modules to be resent in the stations.
//
// This module never switches channels, that is, it will operate on the channel
// the physical layer is configured for (see channelNumber in ~Ieee80211Radio).
//
// This module relies on a connected ~Ieee80211Mac for actual
// reception and transmission of frames.
//
simple Ieee80211MgmtAp like IIeee80211Mgmt
{
    parameters:
        string ssid = default("SSID");
        double beaconInterval @unit(s) = default(100ms);
        int numAuthSteps = default(4); // use 2 for Open System auth, 4 for WEP
        string interfaceTableModule;
        string radioModule = default("^.radio");   // The path to the Radio module  //FIXME remove default value
        string mibModule;
        string macModule;               // The path to the MAC module
        @display("i=block/cogwheel");
        @signal[l2ApAssociated](type="inet::ieee80211::Ieee80211MgmtAp::NotificationInfoSta");
        @signal[l2ApDisassociated](type="inet::ieee80211::Ieee80211MgmtAp::NotificationInfoSta");
    gates:
        input macIn @labels(Ieee80211MacHeader); // from ~Ieee80211Mac
        output macOut @labels(Ieee80211MacHeader); // to ~Ieee80211Mac
        input agentIn @loose;   // unused dummy to statisfy the IIeee80211Mgmt interface
        output agentOut @loose; // unused dummy to statisfy the IIeee80211Mgmt interface
}

File: src/inet/linklayer/ieee80211/mgmt/Ieee80211MgmtAp.ned