Package: inet.linklayer.ieee80211.mgmt
Ieee80211AgentSta
simple moduleUsed 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).
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Extends
| Name | Type | Description |
|---|---|---|
| SimpleModule | simple module |
Base module for all INET simple modules. |
Parameters
| Name | Type | Default value | Description |
|---|---|---|---|
| displayStringTextFormat | string | "" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| interfaceTableModule | string |
The path to the InterfaceTable module |
|
| mibModule | string | ||
| 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. |
| defaultSsid | string | "" |
List of allowed SSIDs to connect to; leave empty for no filtering |
Properties
| Name | Value | Description |
|---|---|---|
| class | Ieee80211AgentSta | |
| display | i=block/control |
Gates
| Name | Direction | Size | Description |
|---|---|---|---|
| mgmtIn | input | ||
| mgmtOut | output |
Signals
| Name | Type | Unit | Description |
|---|---|---|---|
| dropConfirm | long |
ENUM! ~Ieee80211PrimConfirmCode |
|
| l2Disassociated | inet::NetworkInterface | ||
| l2AssociatedOldAp | inet::NetworkInterface | ||
| sentRequest | long |
ENUM! ~Ieee80211PrimRequestCode |
|
| acceptConfirm | long |
ENUM! ~Ieee80211PrimConfirmCode |
|
| l2AssociatedNewAp | inet::NetworkInterface |
Statistics
| Name | Title | Source | Record | Unit | Interpolation Mode | Description |
|---|---|---|---|---|---|---|
| dropConfirm | dropped confirms | count, vector |
ENUM! ~Ieee80211PrimConfirmCode |
|||
| sentRequest | sent requests | count, vector |
ENUM! ~Ieee80211PrimRequestCode |
|||
| acceptConfirm | accepted confirms | count, vector |
ENUM! ~Ieee80211PrimConfirmCode |
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). // simple Ieee80211AgentSta extends SimpleModule like IIeee80211Agent { parameters: @class(Ieee80211AgentSta); string interfaceTableModule; // The path to the InterfaceTable module string mibModule; 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 defaultSsid = default(""); // List of allowed SSIDs to connect to; leave empty for no filtering @display("i=block/control"); @signal[sentRequest](type=long); // ENUM! ~Ieee80211PrimRequestCode @signal[acceptConfirm](type=long); // ENUM! ~Ieee80211PrimConfirmCode @signal[dropConfirm](type=long); // ENUM! ~Ieee80211PrimConfirmCode @signal[l2AssociatedNewAp](type=inet::NetworkInterface); @signal[l2AssociatedOldAp](type=inet::NetworkInterface); @signal[l2Disassociated](type=inet::NetworkInterface); @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