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).
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