Ieee80211AgentSTA

Package: inet.linklayer.ieee80211.mgmt

Ieee80211AgentSTA

simple module

Used in 802.11 infrastructure mode: in a station (STA), this module controls channel scanning, association and handovers, by sending commands (e.g. Ieee80211Prim_ScanRequest) to the management module (Ieee80211MgmtSTA).

Author: Andras Varga

Used in compound modules

Name Type Description
Ieee80211Nic compound module

This NIC implements an 802.11 network interface card. It can be configured via the mgmtType parameter to act as an AP or a STA, or for ad-hoc mode.

Parameters

Name Type Default value Description
interfaceTableModule string

The path to the InterfaceTable module

activeScan bool true

selects between active and passive scanning

channelsToScan string ""

list of channel numbers to scan (space delimited); empty means all channels

probeDelay double 100ms

delay before sending a probe request during active scanning

minChannelTime double 150ms

min interval to spend on a channel during active scanning

maxChannelTime double 300ms

channel time for passive scanning, and max channel time for active scanning

authenticationTimeout double 5s

timeout for the authentication procedure

associationTimeout double 5s

timeout for the association procedure

startingTime double -1s

agent starting time.

default_ssid string "SSID"

default ssid

Properties

Name Value Description
display i=block/control

Gates

Name Direction Size Description
mgmtIn input
mgmtOut output

Signals

Name Type Unit
dropConfirm long
NF_L2_DISASSOCIATED inet::InterfaceEntry
NF_L2_ASSOCIATED_NEWAP inet::InterfaceEntry
sentRequest long
acceptConfirm long
NF_L2_ASSOCIATED_OLDAP inet::InterfaceEntry

Statistics

Name Title Source Record Unit Interpolation Mode
dropConfirm dropped confirms count, vector
sentRequest sent requests count, vector
acceptConfirm accepted confirms count, vector

Source code

//
// Used in 802.11 infrastructure mode: in a station (STA), this module
// controls channel scanning, association and handovers, by sending commands
// (e.g. ~Ieee80211Prim_ScanRequest) to the management module (~Ieee80211MgmtSTA).
//
// @author Andras Varga
//
simple Ieee80211AgentSTA
{
    parameters:
        string interfaceTableModule;   // The path to the InterfaceTable module
        bool activeScan = default(true);  // selects between active and passive scanning
        string channelsToScan = default("");  // list of channel numbers to scan (space delimited); empty means all channels
        double probeDelay @unit(s) = default(100ms); // delay before sending a probe request during active scanning
        double minChannelTime @unit(s) = default(150ms); // min interval to spend on a channel during active scanning
        double maxChannelTime @unit(s) = default(300ms); // channel time for passive scanning, and max channel time for active scanning
        double authenticationTimeout @unit(s) = default(5s); // timeout for the authentication procedure
        double associationTimeout @unit(s) = default(5s); // timeout for the association procedure
        double startingTime @unit("s") = default(-1s); // agent starting time.
        string default_ssid = default("SSID"); // default ssid
        @display("i=block/control");
        @signal[sentRequest](type=long); // ENUM! ~Ieee80211PrimRequestCode
        @signal[acceptConfirm](type=long); // ENUM! ~Ieee80211PrimConfirmCode
        @signal[dropConfirm](type=long); // ENUM! ~Ieee80211PrimConfirmCode
        @signal[NF_L2_ASSOCIATED_NEWAP](type=inet::InterfaceEntry);
        @signal[NF_L2_ASSOCIATED_OLDAP](type=inet::InterfaceEntry);
        @signal[NF_L2_DISASSOCIATED](type=inet::InterfaceEntry);
        @statistic[sentRequest](title="sent requests"; record=count,vector); // ENUM! ~Ieee80211PrimRequestCode
        @statistic[acceptConfirm](title="accepted confirms"; record=count,vector); // ENUM! ~Ieee80211PrimConfirmCode
        @statistic[dropConfirm](title="dropped confirms"; record=count,vector); // ENUM! ~Ieee80211PrimConfirmCode
    gates:
        input mgmtIn;
        output mgmtOut;
}
File: src/inet/linklayer/ieee80211/mgmt/Ieee80211AgentSTA.ned