Class to collect node statistics. More...
Public Member Functions | |
NodeStatistics (NetDeviceContainer aps, NetDeviceContainer stas) | |
Constructor. More... | |
NodeStatistics (NetDeviceContainer aps, NetDeviceContainer stas) | |
Constructor. More... | |
NodeStatistics (NetDeviceContainer aps, NetDeviceContainer stas) | |
Constructor. More... | |
void | AdvancePosition (Ptr< Node > node, int stepsSize, int stepsTime) |
Move a node. More... | |
void | AdvancePosition (Ptr< Node > node, int stepsSize, int stepsTime) |
Advance node position. More... | |
void | CheckStatistics (double time) |
Collects the statistics at a given time. More... | |
Gnuplot2dDataset | GetBusyDatafile () |
Get the BUSY state output data. More... | |
double | GetBusyTime () const |
Get the Busy time. More... | |
Gnuplot2dDataset | GetDatafile () |
Get the Throughput output data. More... | |
Gnuplot2dDataset | GetDatafile () |
Get the Throughput output data. More... | |
Gnuplot2dDataset | GetDatafile () |
Gnuplot2dDataset | GetIdleDatafile () |
Get the IDLE state output data. More... | |
Vector | GetPosition (Ptr< Node > node) |
Get the Position of a node. More... | |
Vector | GetPosition (Ptr< Node > node) |
Get node position. More... | |
Gnuplot2dDataset | GetPowerDatafile () |
Get the Power output data. More... | |
Gnuplot2dDataset | GetPowerDatafile () |
Get the Power output data. More... | |
Gnuplot2dDataset | GetRxDatafile () |
Get the RX state output data. More... | |
Gnuplot2dDataset | GetTxDatafile () |
Get the TX state output data. More... | |
void | PhyCallback (std::string path, Ptr< const Packet > packet, double powerW) |
Callback called by WifiNetDevice/Phy/PhyTxBegin. More... | |
void | PhyCallback (std::string path, Ptr< const Packet > packet, double powerW) |
Callback called by WifiNetDevice/Phy/PhyTxBegin. More... | |
void | PowerCallback (std::string path, double oldPower, double newPower, Mac48Address dest) |
Callback called by WifiNetDevice/RemoteStationManager/x/PowerChange. More... | |
void | PowerCallback (std::string path, double oldPower, double newPower, Mac48Address dest) |
Callback called by WifiNetDevice/RemoteStationManager/x/PowerChange. More... | |
void | RateCallback (std::string path, DataRate oldRate, DataRate newRate, Mac48Address dest) |
Callback called by WifiNetDevice/RemoteStationManager/x/RateChange. More... | |
void | RateCallback (std::string path, DataRate oldRate, DataRate newRate, Mac48Address dest) |
Callback called by WifiNetDevice/RemoteStationManager/x/RateChange. More... | |
void | RxCallback (std::string path, Ptr< const Packet > packet, const Address &from) |
Callback called by PacketSink/Rx. More... | |
void | RxCallback (std::string path, Ptr< const Packet > packet, const Address &from) |
Callback called by PacketSink/Rx. More... | |
void | RxCallback (std::string path, Ptr< const Packet > packet, const Address &from) |
RX callback. More... | |
void | SetPosition (Ptr< Node > node, Vector position) |
Set the Position of a node. More... | |
void | SetPosition (Ptr< Node > node, Vector position) |
Set node position. More... | |
void | StateCallback (std::string path, Time init, Time duration, WifiPhyState state) |
Callback called by YansWifiPhy/State/State. More... | |
Private Types | |
typedef std::vector< std::pair< Time, DataRate > > | TxTime |
Time, DataRate pair vector. More... | |
typedef std::vector< std::pair< Time, DataRate > > | TxTime |
Time, DataRate pair vector. More... | |
Private Member Functions | |
Time | GetCalcTxTime (DataRate rate) |
Get the time at which a given datarate has been recorded. More... | |
Time | GetCalcTxTime (DataRate rate) |
Get the time at which a given datarate has been recorded. More... | |
void | SetupPhy (Ptr< WifiPhy > phy) |
Setup the WifiPhy object. More... | |
void | SetupPhy (Ptr< WifiPhy > phy) |
Setup the WifiPhy object. More... | |
Private Attributes | |
double | busyTime |
BUSY time. More... | |
double | idleTime |
IDLE time. More... | |
uint32_t | m_bytesTotal |
Number of received bytes on a given state. More... | |
std::map< Mac48Address, double > | m_currentPower |
Current Tx power for each sender. More... | |
std::map< Mac48Address, DataRate > | m_currentRate |
Current Tx rate for each sender. More... | |
Gnuplot2dDataset | m_output |
Throughput output data. More... | |
Gnuplot2dDataset | m_output_busy |
BUSY output data. More... | |
Gnuplot2dDataset | m_output_idle |
IDLE output data. More... | |
Gnuplot2dDataset | m_output_power |
Power output data. More... | |
Gnuplot2dDataset | m_output_rx |
RX output data. More... | |
Gnuplot2dDataset | m_output_tx |
TX output data. More... | |
TxTime | m_timeTable |
Time, DataRate table. More... | |
double | m_totalBusyTime |
Total time in BUSY state. More... | |
double | m_totalEnergy |
Energy used on a given state. More... | |
double | m_totalIdleTime |
Total time in IDLE state. More... | |
double | m_totalRxTime |
Total time in RX state. More... | |
double | m_totalTime |
Time spent on a given state. More... | |
double | m_totalTxTime |
Total time in TX state. More... | |
double | rxTime |
RX time. More... | |
double | txTime |
TX time. More... | |
Class to collect node statistics.
Node statistics.
Definition at line 116 of file wifi-power-adaptation-distance.cc.
|
private |
Time, DataRate pair vector.
Definition at line 198 of file wifi-power-adaptation-distance.cc.
|
private |
Time, DataRate pair vector.
Definition at line 196 of file wifi-power-adaptation-interference.cc.
NodeStatistics::NodeStatistics | ( | NetDeviceContainer | aps, |
NetDeviceContainer | stas | ||
) |
Constructor.
aps | Access points |
stas | WiFi Stations. |
Definition at line 223 of file wifi-power-adaptation-distance.cc.
References ns3::NetDeviceContainer::Get(), ns3::WifiMac::GetAddress(), ns3::WifiNetDevice::GetMac(), ns3::NetDeviceContainer::GetN(), ns3::WifiNetDevice::GetPhy(), and third::phy.
NodeStatistics::NodeStatistics | ( | NetDeviceContainer | aps, |
NetDeviceContainer | stas | ||
) |
Constructor.
aps | Access points |
stas | WiFi Stations. |
NodeStatistics::NodeStatistics | ( | NetDeviceContainer | aps, |
NetDeviceContainer | stas | ||
) |
Constructor.
aps | AP devices |
stas | STA devices |
Move a node.
node | The node. |
stepsSize | The step size. |
stepsTime | Time on each step. |
Definition at line 328 of file wifi-power-adaptation-distance.cc.
References ns3::Simulator::Now(), NS_LOG_INFO, ns3::Simulator::Schedule(), and ns3::Seconds().
Advance node position.
node | the node |
stepsSize | the size of a step |
stepsTime | the time interval between steps |
void NodeStatistics::CheckStatistics | ( | double | time | ) |
Collects the statistics at a given time.
time | Time at which the statistics are collected. |
Definition at line 360 of file wifi-power-adaptation-interference.cc.
References ns3::Simulator::Now(), ns3::Simulator::Schedule(), and ns3::Seconds().
Gnuplot2dDataset NodeStatistics::GetBusyDatafile | ( | ) |
Get the BUSY state output data.
Definition at line 401 of file wifi-power-adaptation-interference.cc.
double NodeStatistics::GetBusyTime | ( | ) | const |
Get the Busy time.
Definition at line 419 of file wifi-power-adaptation-interference.cc.
Get the time at which a given datarate has been recorded.
rate | The datarate to search. |
Definition at line 264 of file wifi-power-adaptation-distance.cc.
References NS_ASSERT, and ns3::Seconds().
Get the time at which a given datarate has been recorded.
rate | The datarate to search. |
Gnuplot2dDataset NodeStatistics::GetDatafile | ( | ) |
Get the Throughput output data.
Definition at line 351 of file wifi-power-adaptation-distance.cc.
Gnuplot2dDataset NodeStatistics::GetDatafile | ( | ) |
Get the Throughput output data.
Gnuplot2dDataset NodeStatistics::GetDatafile | ( | ) |
Gnuplot2dDataset NodeStatistics::GetIdleDatafile | ( | ) |
Get the IDLE state output data.
Definition at line 395 of file wifi-power-adaptation-interference.cc.
Get the Position of a node.
node | The node. |
Definition at line 321 of file wifi-power-adaptation-distance.cc.
References ns3::Object::GetObject(), and third::mobility.
Get node position.
node | the node |
Gnuplot2dDataset NodeStatistics::GetPowerDatafile | ( | ) |
Get the Power output data.
Definition at line 357 of file wifi-power-adaptation-distance.cc.
Gnuplot2dDataset NodeStatistics::GetPowerDatafile | ( | ) |
Get the Power output data.
Gnuplot2dDataset NodeStatistics::GetRxDatafile | ( | ) |
Get the RX state output data.
Definition at line 407 of file wifi-power-adaptation-interference.cc.
Gnuplot2dDataset NodeStatistics::GetTxDatafile | ( | ) |
Get the TX state output data.
Definition at line 413 of file wifi-power-adaptation-interference.cc.
Callback called by WifiNetDevice/Phy/PhyTxBegin.
path | The trace path. |
packet | The sent packet. |
powerW | The Tx power. |
Definition at line 278 of file wifi-power-adaptation-distance.cc.
References ns3::WifiMacHeader::GetAddr1(), ns3::WifiMacHeader::GetType(), ns3::Packet::PeekHeader(), and ns3::WIFI_MAC_DATA.
Callback called by WifiNetDevice/Phy/PhyTxBegin.
path | The trace path. |
packet | The sent packet. |
powerW | The Tx power. |
void NodeStatistics::PowerCallback | ( | std::string | path, |
double | oldPower, | ||
double | newPower, | ||
Mac48Address | dest | ||
) |
Callback called by WifiNetDevice/RemoteStationManager/x/PowerChange.
path | The trace path. |
oldPower | Old Tx power. |
newPower | Actual Tx power. |
dest | Destination of the transmission. |
Definition at line 293 of file wifi-power-adaptation-distance.cc.
void NodeStatistics::PowerCallback | ( | std::string | path, |
double | oldPower, | ||
double | newPower, | ||
Mac48Address | dest | ||
) |
Callback called by WifiNetDevice/RemoteStationManager/x/PowerChange.
path | The trace path. |
oldPower | Old Tx power. |
newPower | Actual Tx power. |
dest | Destination of the transmission. |
void NodeStatistics::RateCallback | ( | std::string | path, |
DataRate | oldRate, | ||
DataRate | newRate, | ||
Mac48Address | dest | ||
) |
Callback called by WifiNetDevice/RemoteStationManager/x/RateChange.
path | The trace path. |
oldRate | Old rate. |
newRate | Actual rate. |
dest | Destination of the transmission. |
Definition at line 299 of file wifi-power-adaptation-distance.cc.
void NodeStatistics::RateCallback | ( | std::string | path, |
DataRate | oldRate, | ||
DataRate | newRate, | ||
Mac48Address | dest | ||
) |
Callback called by WifiNetDevice/RemoteStationManager/x/RateChange.
path | The trace path. |
oldRate | Old rate. |
newRate | Actual rate. |
dest | Destination of the transmission. |
void NodeStatistics::RxCallback | ( | std::string | path, |
Ptr< const Packet > | packet, | ||
const Address & | from | ||
) |
Callback called by PacketSink/Rx.
path | The trace path. |
packet | The received packet. |
from | The sender address. |
Definition at line 308 of file wifi-power-adaptation-distance.cc.
References ns3::Packet::GetSize().
void NodeStatistics::RxCallback | ( | std::string | path, |
Ptr< const Packet > | packet, | ||
const Address & | from | ||
) |
Callback called by PacketSink/Rx.
path | The trace path. |
packet | The received packet. |
from | The sender address. |
void NodeStatistics::RxCallback | ( | std::string | path, |
Ptr< const Packet > | packet, | ||
const Address & | from | ||
) |
RX callback.
path | path |
packet | received packet |
from | sender |
Set the Position of a node.
node | The node. |
position | The position. |
Definition at line 314 of file wifi-power-adaptation-distance.cc.
References ns3::Object::GetObject(), and third::mobility.
Set node position.
node | the node |
position | the position |
Setup the WifiPhy object.
phy | The WifiPhy to setup. |
Definition at line 248 of file wifi-power-adaptation-distance.cc.
References ns3::Time::GetSeconds(), NS_LOG_DEBUG, packetSize, third::phy, ns3::WifiTxVector::SetChannelWidth(), ns3::WifiTxVector::SetMode(), ns3::WifiTxVector::SetPreambleType(), and ns3::WIFI_PREAMBLE_LONG.
Setup the WifiPhy object.
phy | The WifiPhy to setup. |
void NodeStatistics::StateCallback | ( | std::string | path, |
Time | init, | ||
Time | duration, | ||
WifiPhyState | state | ||
) |
Callback called by YansWifiPhy/State/State.
path | The trace path. |
init | Time when the state started. |
duration | Amount of time we've been in (or will be in) the state. |
state | The state. |
Definition at line 329 of file wifi-power-adaptation-interference.cc.
References CCA_BUSY, ns3::Time::GetSeconds(), IDLE, RX, and TX.
|
private |
BUSY time.
Definition at line 216 of file wifi-power-adaptation-interference.cc.
|
private |
IDLE time.
Definition at line 217 of file wifi-power-adaptation-interference.cc.
|
private |
Number of received bytes on a given state.
total bytes
Number of received bytes.
Definition at line 215 of file wifi-power-adaptation-distance.cc.
|
private |
Current Tx power for each sender.
Definition at line 213 of file wifi-power-adaptation-distance.cc.
|
private |
Current Tx rate for each sender.
Definition at line 214 of file wifi-power-adaptation-distance.cc.
|
private |
Throughput output data.
gnuplot 2d dataset
Definition at line 219 of file wifi-power-adaptation-distance.cc.
|
private |
BUSY output data.
Definition at line 228 of file wifi-power-adaptation-interference.cc.
|
private |
IDLE output data.
Definition at line 227 of file wifi-power-adaptation-interference.cc.
|
private |
Power output data.
Definition at line 220 of file wifi-power-adaptation-distance.cc.
|
private |
RX output data.
Definition at line 229 of file wifi-power-adaptation-interference.cc.
|
private |
TX output data.
Definition at line 230 of file wifi-power-adaptation-interference.cc.
|
private |
Time, DataRate table.
Definition at line 218 of file wifi-power-adaptation-distance.cc.
|
private |
Total time in BUSY state.
Definition at line 220 of file wifi-power-adaptation-interference.cc.
|
private |
Energy used on a given state.
Energy used.
Definition at line 216 of file wifi-power-adaptation-distance.cc.
|
private |
Total time in IDLE state.
Definition at line 221 of file wifi-power-adaptation-interference.cc.
|
private |
Total time in RX state.
Definition at line 223 of file wifi-power-adaptation-interference.cc.
|
private |
Time spent on a given state.
Time spent.
Definition at line 217 of file wifi-power-adaptation-distance.cc.
|
private |
Total time in TX state.
Definition at line 222 of file wifi-power-adaptation-interference.cc.
|
private |
RX time.
Definition at line 219 of file wifi-power-adaptation-interference.cc.
|
private |
TX time.
Definition at line 218 of file wifi-power-adaptation-interference.cc.