a non-QoS STA state machine
More...
#include <nqsta-wifi-mac.h>
List of all members.
Detailed Description
a non-QoS STA state machine
This state machine handles association, disassociation, authentication and beacon monitoring. It does not perform channel scanning. If the station detects a certain number of missed beacons while associated, it automatically attempts a new association sequence.
Member Function Documentation
- Parameters:
-
| packet | the packet to send. |
| to | the address to which the packet should be sent. |
| from | the address from which the packet should be sent. |
The packet should be enqueued in a tx queue, and should be dequeued as soon as the DCF function determines that access it granted to this MAC. The extra parameter "from" allows this device to operate in a bridged mode, forwarding received frames without altering the source address.
Implements ns3::WifiMac.
- Parameters:
-
| packet | the packet to send. |
| to | the address to which the packet should be sent. |
The packet should be enqueued in a tx queue, and should be dequeued as soon as the DCF function determines that access it granted to this MAC.
Implements ns3::WifiMac.
virtual Time ns3::NqstaWifiMac::GetAckTimeout |
( |
void |
|
) |
const [virtual] |
- Returns:
- the current ACK timeout duration.
Implements ns3::WifiMac.
virtual Mac48Address ns3::NqstaWifiMac::GetAddress |
( |
void |
|
) |
const [virtual] |
- Returns:
- the MAC address associated to this MAC layer.
Implements ns3::WifiMac.
virtual Mac48Address ns3::NqstaWifiMac::GetBssid |
( |
void |
|
) |
const [virtual] |
- Returns:
- the bssid of the network this device belongs to.
Implements ns3::WifiMac.
virtual Time ns3::NqstaWifiMac::GetCtsTimeout |
( |
void |
|
) |
const [virtual] |
- Returns:
- the current CTS timeout duration.
Implements ns3::WifiMac.
virtual Time ns3::NqstaWifiMac::GetEifsNoDifs |
( |
void |
|
) |
const [virtual] |
- Returns:
- the current EIFS minus DIFS duration
Implements ns3::WifiMac.
virtual Time ns3::NqstaWifiMac::GetPifs |
( |
void |
|
) |
const [virtual] |
virtual Time ns3::NqstaWifiMac::GetSifs |
( |
void |
|
) |
const [virtual] |
virtual Time ns3::NqstaWifiMac::GetSlot |
( |
void |
|
) |
const [virtual] |
virtual Ssid ns3::NqstaWifiMac::GetSsid |
( |
void |
|
) |
const [virtual] |
- Returns:
- the ssid which this MAC layer is going to try to stay in.
Implements ns3::WifiMac.
static TypeId ns3::NqstaWifiMac::GetTypeId |
( |
void |
|
) |
[static] |
This method returns the TypeId associated to ns3::NqstaWifiMac.
This object is accessible through the following paths with Config::Set and Config::Connect:
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::WifiMac/$ns3::NqstaWifiMac
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::WifiNetDevice/Mac/$ns3::NqstaWifiMac
Attributes defined for this type:
-
ProbeRequestTimeout: The interval between two consecutive probe request attempts.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 50000000ns
-
Flags: construct write read
-
AssocRequestTimeout: The interval between two consecutive assoc request attempts.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 500000000ns
-
Flags: construct write read
-
MaxMissedBeacons: Number of beacons which much be consecutively missed before we attempt to restart association.
-
ActiveProbing: If true, we send probe requests. If false, we don't.
-
Set with class: BooleanValue
-
Underlying type: bool
-
Initial value: false
-
Flags: construct write
-
DcaTxop: The DcaTxop object
Attributes defined in parent class ns3::WifiMac:
-
CtsTimeout: When this timeout expires, the RTS/CTS handshake has failed.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 75000ns
-
Flags: construct write read
-
AckTimeout: When this timeout expires, the DATA/ACK handshake has failed.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 75000ns
-
Flags: construct write read
-
BasicBlockAckTimeout: When this timeout expires, the BASIC_BLOCK_ACK_REQ/BASIC_BLOCK_ACK handshake has failed.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 281000ns
-
Flags: construct write read
-
CompressedBlockAckTimeout: When this timeout expires, the COMPRESSED_BLOCK_ACK_REQ/COMPRESSED_BLOCK_ACK handshake has failed.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 99000ns
-
Flags: construct write read
-
Sifs: The value of the SIFS constant.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 16000ns
-
Flags: construct write read
-
EifsNoDifs: The value of EIFS-DIFS
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 60000ns
-
Flags: construct write read
-
Slot: The duration of a Slot.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 9000ns
-
Flags: construct write read
-
Pifs: The value of the PIFS constant.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 25000ns
-
Flags: construct write read
-
MaxPropagationDelay: The maximum propagation delay. Unused for now.
-
Set with class: TimeValue
-
Underlying type: Time
-
Initial value: 3333ns
-
Flags: construct write read
-
Ssid: The ssid we want to belong to.
-
Set with class: SsidValue
-
Underlying type: Ssid
-
Initial value: default
-
Flags: construct write read
TraceSources defined for this type:
-
Assoc: Associated with an access point.
-
DeAssoc: Association with an access point lost.
TraceSources defined in parent class ns3::WifiMac:
-
MacTx: A packet has been received from higher layers and is being processed in preparation for queueing for transmission.
-
MacTxDrop: A packet has been dropped in the MAC layer before being queued for transmission.
-
MacPromiscRx: A packet has been received by this device, has been passed up from the physical layer and is being forwarded up the local protocol stack. This is a promiscuous trace,
-
MacRx: A packet has been received by this device, has been passed up from the physical layer and is being forwarded up the local protocol stack. This is a non-promiscuous trace,
-
MacRxDrop: A packet has been dropped in the MAC layer after it has been passed up from the physical layer.
Reimplemented from ns3::WifiMac.
virtual void ns3::NqstaWifiMac::SetAckTimeout |
( |
Time |
ackTimeout |
) |
[virtual] |
- Parameters:
-
| ackTimeout | the duration of an ACK timeout. |
Implements ns3::WifiMac.
virtual void ns3::NqstaWifiMac::SetAddress |
( |
Mac48Address |
address |
) |
[virtual] |
- Parameters:
-
| address | the current address of this MAC layer. |
Implements ns3::WifiMac.
void ns3::NqstaWifiMac::SetAssocRequestTimeout |
( |
Time |
timeout |
) |
|
- Parameters:
-
| timeout | If no association response is received within the specified timeout, the station sends a new association request. |
virtual void ns3::NqstaWifiMac::SetCtsTimeout |
( |
Time |
ctsTimeout |
) |
[virtual] |
- Parameters:
-
| ctsTimeout | the duration of a CTS timeout. |
Implements ns3::WifiMac.
virtual void ns3::NqstaWifiMac::SetEifsNoDifs |
( |
Time |
eifsNoDifs |
) |
[virtual] |
- Parameters:
-
| eifsNoDifs | the duration of an EIFS minus DIFS. |
This value is used to calculate the EIFS depending on AIFSN.
Implements ns3::WifiMac.
- Parameters:
-
| upCallback | the callback to invoke when a packet must be forwarded up the stack. |
Implements ns3::WifiMac.
virtual void ns3::NqstaWifiMac::SetLinkDownCallback |
( |
Callback< void > |
linkDown |
) |
[virtual] |
- Parameters:
-
| linkDown | the callback to invoke when the link becomes down. |
Implements ns3::WifiMac.
virtual void ns3::NqstaWifiMac::SetLinkUpCallback |
( |
Callback< void > |
linkUp |
) |
[virtual] |
- Parameters:
-
| linkUp | the callback to invoke when the link becomes up. |
Implements ns3::WifiMac.
void ns3::NqstaWifiMac::SetMaxMissedBeacons |
( |
uint32_t |
missed |
) |
|
- Parameters:
-
| missed | the number of beacons which must be missed before a new association sequence is started. |
virtual void ns3::NqstaWifiMac::SetPifs |
( |
Time |
pifs |
) |
[virtual] |
void ns3::NqstaWifiMac::SetProbeRequestTimeout |
( |
Time |
timeout |
) |
|
- Parameters:
-
| timeout | If no probe response is received within the specified timeout, the station sends a new probe request. |
virtual void ns3::NqstaWifiMac::SetSifs |
( |
Time |
sifs |
) |
[virtual] |
virtual void ns3::NqstaWifiMac::SetSlot |
( |
Time |
slotTime |
) |
[virtual] |
- Parameters:
-
| slotTime | the slot duration |
Implements ns3::WifiMac.
virtual void ns3::NqstaWifiMac::SetSsid |
( |
Ssid |
ssid |
) |
[virtual] |
- Parameters:
-
| ssid | the current ssid of this MAC layer. |
Implements ns3::WifiMac.
virtual void ns3::NqstaWifiMac::SetWifiPhy |
( |
Ptr< WifiPhy > |
phy |
) |
[virtual] |
- Parameters:
-
| phy | the physical layer attached to this MAC. |
Implements ns3::WifiMac.
- Parameters:
-
| stationManager | the station manager attached to this MAC. |
Implements ns3::WifiMac.
void ns3::NqstaWifiMac::StartActiveAssociation |
( |
void |
|
) |
|
Start an active association sequence immediately.
The documentation for this class was generated from the following files:
- src/devices/wifi/nqsta-wifi-mac.h
- doc/introspected-doxygen.h