hold per-remote-station state for Minstrel Wifi manager. More...
#include "minstrel-wifi-manager.h"
Public Attributes | |
uint8_t | m_col |
To keep track of the current position in the our random sample table going row by row from 1st column until the 10th column(Minstrel defines 10) then we wrap back to the row 1 column 1. More... | |
uint8_t | m_index |
vector index More... | |
bool | m_initialized |
for initializing tables More... | |
bool | m_isSampling |
a flag to indicate we are currently sampling More... | |
uint32_t | m_longRetry |
long retries such as data packets More... | |
uint16_t | m_maxProbRate |
rate with highest probability of success in bps More... | |
uint16_t | m_maxTpRate |
the current throughput rate in bps More... | |
uint16_t | m_maxTpRate2 |
second highest throughput rate in bps More... | |
MinstrelRate | m_minstrelTable |
minstrel table More... | |
Time | m_nextStatsUpdate |
10 times every second More... | |
uint8_t | m_nModes |
number of modes supported More... | |
int | m_numSamplesDeferred |
number samples deferred More... | |
uint32_t | m_retry |
total retries short + long More... | |
bool | m_sampleDeferred |
a flag to indicate sample rate is on the second stage More... | |
int | m_samplePacketsCount |
how many packets we have sample so far More... | |
uint16_t | m_sampleRate |
current sample rate in bps More... | |
SampleRate | m_sampleTable |
sample table More... | |
uint32_t | m_shortRetry |
short retries such as control packets More... | |
std::ofstream | m_statsFile |
stats file More... | |
int | m_totalPacketsCount |
total number of packets as of now More... | |
uint16_t | m_txrate |
current transmit rate in bps More... | |
Public Attributes inherited from ns3::WifiRemoteStation | |
std::pair< double, Time > | m_rssiAndUpdateTimePair |
RSSI (in dBm) of the most recent packet received from the remote station along with update time. More... | |
WifiRemoteStationState * | m_state |
Remote station state. More... | |
Additional Inherited Members | |
Public Member Functions inherited from ns3::WifiRemoteStation | |
virtual | ~WifiRemoteStation () |
hold per-remote-station state for Minstrel Wifi manager.
This struct extends from WifiRemoteStation struct to hold additional information required by the Minstrel Wifi manager
Definition at line 83 of file minstrel-wifi-manager.h.
uint8_t ns3::MinstrelWifiRemoteStation::m_col |
To keep track of the current position in the our random sample table going row by row from 1st column until the 10th column(Minstrel defines 10) then we wrap back to the row 1 column 1.
note: there are many other ways to do this. column index
Definition at line 93 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::GetNextSample(), ns3::MinstrelHtWifiManager::InitSampleTable(), and ns3::MinstrelWifiManager::InitSampleTable().
uint8_t ns3::MinstrelWifiRemoteStation::m_index |
vector index
Definition at line 94 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::GetNextSample(), ns3::MinstrelHtWifiManager::InitSampleTable(), and ns3::MinstrelWifiManager::InitSampleTable().
bool ns3::MinstrelWifiRemoteStation::m_initialized |
for initializing tables
Definition at line 109 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CheckInit(), ns3::MinstrelWifiManager::CheckInit(), ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoGetDataTxVector(), ns3::MinstrelHtWifiManager::DoGetRtsTxVector(), ns3::MinstrelHtWifiManager::DoNeedRetransmission(), ns3::MinstrelWifiManager::DoNeedRetransmission(), ns3::MinstrelHtWifiManager::DoReportAmpduTxStatus(), ns3::MinstrelHtWifiManager::DoReportDataFailed(), ns3::MinstrelWifiManager::DoReportDataFailed(), ns3::MinstrelHtWifiManager::DoReportDataOk(), ns3::MinstrelWifiManager::DoReportDataOk(), ns3::MinstrelHtWifiManager::DoReportFinalDataFailed(), ns3::MinstrelWifiManager::DoReportFinalDataFailed(), ns3::MinstrelHtWifiManager::DoReportFinalRtsFailed(), ns3::MinstrelHtWifiManager::DoReportRtsFailed(), ns3::MinstrelWifiManager::GetDataTxVector(), ns3::MinstrelHtWifiManager::UpdateRate(), and ns3::MinstrelWifiManager::UpdateStats().
bool ns3::MinstrelWifiRemoteStation::m_isSampling |
a flag to indicate we are currently sampling
Definition at line 102 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CountRetries(), ns3::MinstrelWifiManager::CountRetries(), ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoGetDataTxVector(), ns3::MinstrelHtWifiManager::DoReportAmpduTxStatus(), ns3::MinstrelHtWifiManager::DoReportDataOk(), ns3::MinstrelHtWifiManager::DoReportFinalDataFailed(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::FindRate(), ns3::MinstrelWifiManager::GetDataTxVector(), ns3::MinstrelHtWifiManager::UpdatePacketCounters(), ns3::MinstrelWifiManager::UpdatePacketCounters(), ns3::MinstrelHtWifiManager::UpdateRate(), and ns3::MinstrelWifiManager::UpdateRate().
uint32_t ns3::MinstrelWifiRemoteStation::m_longRetry |
long retries such as data packets
Definition at line 106 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoNeedRetransmission(), ns3::MinstrelWifiManager::DoNeedRetransmission(), ns3::MinstrelHtWifiManager::DoReportAmpduTxStatus(), ns3::MinstrelHtWifiManager::DoReportDataFailed(), ns3::MinstrelWifiManager::DoReportDataFailed(), ns3::MinstrelWifiManager::UpdatePacketCounters(), ns3::MinstrelHtWifiManager::UpdateRate(), ns3::MinstrelWifiManager::UpdateRate(), ns3::MinstrelHtWifiManager::UpdateRetry(), and ns3::MinstrelWifiManager::UpdateRetry().
uint16_t ns3::MinstrelWifiRemoteStation::m_maxProbRate |
rate with highest probability of success in bps
Definition at line 97 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CountRetries(), ns3::MinstrelWifiManager::CountRetries(), ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::PrintTable(), ns3::MinstrelHtWifiManager::SetBestProbabilityRate(), ns3::MinstrelHtWifiManager::StatsDump(), ns3::MinstrelHtWifiManager::UpdateRate(), ns3::MinstrelWifiManager::UpdateRate(), ns3::MinstrelHtWifiManager::UpdateStats(), and ns3::MinstrelWifiManager::UpdateStats().
uint16_t ns3::MinstrelWifiRemoteStation::m_maxTpRate |
the current throughput rate in bps
Definition at line 95 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CountRetries(), ns3::MinstrelWifiManager::CountRetries(), ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::FindRate(), ns3::MinstrelWifiManager::PrintTable(), ns3::MinstrelHtWifiManager::SetBestStationThRates(), ns3::MinstrelHtWifiManager::StatsDump(), ns3::MinstrelWifiManager::UpdatePacketCounters(), ns3::MinstrelHtWifiManager::UpdateRate(), ns3::MinstrelWifiManager::UpdateRate(), ns3::MinstrelHtWifiManager::UpdateStats(), and ns3::MinstrelWifiManager::UpdateStats().
uint16_t ns3::MinstrelWifiRemoteStation::m_maxTpRate2 |
second highest throughput rate in bps
Definition at line 96 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CountRetries(), ns3::MinstrelWifiManager::CountRetries(), ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::PrintTable(), ns3::MinstrelHtWifiManager::SetBestStationThRates(), ns3::MinstrelHtWifiManager::StatsDump(), ns3::MinstrelHtWifiManager::UpdateRate(), ns3::MinstrelWifiManager::UpdateRate(), ns3::MinstrelHtWifiManager::UpdateStats(), and ns3::MinstrelWifiManager::UpdateStats().
MinstrelRate ns3::MinstrelWifiRemoteStation::m_minstrelTable |
minstrel table
Definition at line 110 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CheckInit(), ns3::MinstrelWifiManager::CheckInit(), ns3::MinstrelWifiManager::CountRetries(), ns3::MinstrelHtWifiManager::DoReportDataOk(), ns3::MinstrelWifiManager::DoReportDataOk(), ns3::MinstrelWifiManager::DoReportFinalDataFailed(), ns3::MinstrelWifiManager::FindRate(), ns3::MinstrelWifiManager::PrintTable(), ns3::MinstrelWifiManager::RateInit(), ns3::MinstrelWifiManager::UpdatePacketCounters(), ns3::MinstrelWifiManager::UpdateRate(), and ns3::MinstrelWifiManager::UpdateStats().
Time ns3::MinstrelWifiRemoteStation::m_nextStatsUpdate |
10 times every second
Definition at line 85 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoReportAmpduTxStatus(), ns3::MinstrelHtWifiManager::DoReportDataOk(), ns3::MinstrelHtWifiManager::DoReportFinalDataFailed(), ns3::MinstrelHtWifiManager::UpdateStats(), and ns3::MinstrelWifiManager::UpdateStats().
uint8_t ns3::MinstrelWifiRemoteStation::m_nModes |
number of modes supported
Definition at line 98 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CheckInit(), ns3::MinstrelWifiManager::CheckInit(), ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoReportAmpduTxStatus(), ns3::MinstrelHtWifiManager::DoReportDataOk(), ns3::MinstrelWifiManager::DoReportDataOk(), ns3::MinstrelHtWifiManager::DoReportFinalDataFailed(), ns3::MinstrelWifiManager::DoReportFinalDataFailed(), ns3::MinstrelWifiManager::FindRate(), ns3::MinstrelWifiManager::GetNextSample(), ns3::MinstrelWifiManager::InitSampleTable(), ns3::MinstrelWifiManager::PrintSampleTable(), ns3::MinstrelWifiManager::PrintTable(), ns3::MinstrelHtWifiManager::RateInit(), ns3::MinstrelWifiManager::RateInit(), and ns3::MinstrelWifiManager::UpdateStats().
int ns3::MinstrelWifiRemoteStation::m_numSamplesDeferred |
number samples deferred
Definition at line 101 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelWifiManager::FindRate(), and ns3::MinstrelWifiManager::UpdatePacketCounters().
uint32_t ns3::MinstrelWifiRemoteStation::m_retry |
total retries short + long
Definition at line 107 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelWifiManager::DoCreateStation(), and ns3::MinstrelWifiManager::UpdateRetry().
bool ns3::MinstrelWifiRemoteStation::m_sampleDeferred |
a flag to indicate sample rate is on the second stage
Definition at line 104 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoReportAmpduTxStatus(), ns3::MinstrelHtWifiManager::DoReportDataOk(), ns3::MinstrelHtWifiManager::DoReportFinalDataFailed(), ns3::MinstrelWifiManager::FindRate(), ns3::MinstrelWifiManager::UpdatePacketCounters(), and ns3::MinstrelWifiManager::UpdateRate().
int ns3::MinstrelWifiRemoteStation::m_samplePacketsCount |
how many packets we have sample so far
Definition at line 100 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::FindRate(), ns3::MinstrelHtWifiManager::PrintTable(), ns3::MinstrelWifiManager::PrintTable(), ns3::MinstrelHtWifiManager::UpdatePacketCounters(), and ns3::MinstrelWifiManager::UpdatePacketCounters().
uint16_t ns3::MinstrelWifiRemoteStation::m_sampleRate |
current sample rate in bps
Definition at line 103 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelWifiManager::CountRetries(), ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::FindRate(), and ns3::MinstrelWifiManager::UpdateRate().
SampleRate ns3::MinstrelWifiRemoteStation::m_sampleTable |
sample table
Definition at line 111 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::CheckInit(), ns3::MinstrelWifiManager::CheckInit(), ns3::MinstrelHtWifiManager::GetNextSample(), ns3::MinstrelWifiManager::GetNextSample(), ns3::MinstrelHtWifiManager::InitSampleTable(), ns3::MinstrelWifiManager::InitSampleTable(), ns3::MinstrelWifiManager::PrintSampleTable(), and ns3::MinstrelHtWifiManager::SetNextSample().
uint32_t ns3::MinstrelWifiRemoteStation::m_shortRetry |
short retries such as control packets
Definition at line 105 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoReportRtsFailed(), ns3::MinstrelWifiManager::DoReportRtsFailed(), ns3::MinstrelHtWifiManager::UpdateRetry(), and ns3::MinstrelWifiManager::UpdateRetry().
std::ofstream ns3::MinstrelWifiRemoteStation::m_statsFile |
stats file
Definition at line 112 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelWifiManager::PrintTable().
int ns3::MinstrelWifiRemoteStation::m_totalPacketsCount |
total number of packets as of now
Definition at line 99 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::FindRate(), ns3::MinstrelHtWifiManager::PrintTable(), ns3::MinstrelWifiManager::PrintTable(), ns3::MinstrelHtWifiManager::UpdatePacketCounters(), and ns3::MinstrelWifiManager::UpdatePacketCounters().
uint16_t ns3::MinstrelWifiRemoteStation::m_txrate |
current transmit rate in bps
Definition at line 108 of file minstrel-wifi-manager.h.
Referenced by ns3::MinstrelHtWifiManager::DoCreateStation(), ns3::MinstrelWifiManager::DoCreateStation(), ns3::MinstrelHtWifiManager::DoGetDataTxVector(), ns3::MinstrelHtWifiManager::DoGetRtsTxVector(), ns3::MinstrelHtWifiManager::DoReportAmpduTxStatus(), ns3::MinstrelHtWifiManager::DoReportDataFailed(), ns3::MinstrelWifiManager::DoReportDataFailed(), ns3::MinstrelHtWifiManager::DoReportDataOk(), ns3::MinstrelWifiManager::DoReportDataOk(), ns3::MinstrelHtWifiManager::DoReportFinalDataFailed(), ns3::MinstrelWifiManager::DoReportFinalDataFailed(), ns3::MinstrelHtWifiManager::DoReportRtsFailed(), ns3::MinstrelWifiManager::DoReportRtsFailed(), ns3::MinstrelHtWifiManager::FindRate(), ns3::MinstrelWifiManager::GetDataTxVector(), ns3::MinstrelWifiManager::GetRtsTxVector(), ns3::MinstrelHtWifiManager::RateInit(), ns3::MinstrelHtWifiManager::UpdateRate(), ns3::MinstrelWifiManager::UpdateRate(), and ns3::MinstrelWifiManager::UpdateStats().