ns3::AarfWifiManager Class Reference

AARF Rate control algorithm. More...

#include <aarf-wifi-manager.h>

Inheritance diagram for ns3::AarfWifiManager:
Inheritance graph
[legend]
Collaboration diagram for ns3::AarfWifiManager:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 AarfWifiManager ()
virtual ~AarfWifiManager ()

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::AarfWifiManager.

Private Member Functions

virtual class WifiRemoteStationCreateStation (void)

Private Attributes

uint32_t m_minTimerThreshold
uint32_t m_minSuccessThreshold
double m_successK
uint32_t m_maxSuccessThreshold
double m_timerK

Detailed Description

AARF Rate control algorithm.

This class implements the AARF rate control algorithm which was initially described in IEEE 802.11 Rate Adaptation: A Practical Approach, by M. Lacage, M.H. Manshaei, and T. Turletti.

Definition at line 35 of file aarf-wifi-manager.h.


Constructor & Destructor Documentation

ns3::AarfWifiManager::AarfWifiManager (  ) 

Definition at line 67 of file aarf-wifi-manager.cc.

ns3::AarfWifiManager::~AarfWifiManager (  )  [virtual]

Definition at line 69 of file aarf-wifi-manager.cc.


Member Function Documentation

WifiRemoteStation * ns3::AarfWifiManager::CreateStation ( void   )  [private, virtual]
TypeId ns3::AarfWifiManager::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::AarfWifiManager.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3WifiNetDevice/RemoteStationManager/$ns3AarfWifiManager
  • /NodeList/[i]/DeviceList/[i]/$ns3WifiNetDevice/RemoteStationManager/$ns3ArfWifiManager/$ns3AarfWifiManager

Attributes defined for this type:

  • SuccessK: Multiplication factor for the success threshold in the AARF algorithm.
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 2
    • Flags: construct write read
  • TimerK: Multiplication factor for the timer threshold in the AARF algorithm.
    • Set with class: ns3::DoubleValue
    • Underlying type: double -1.79769e+308:1.79769e+308
    • Initial value: 2
    • Flags: construct write read
  • MaxSuccessThreshold: Maximum value of the success threshold in the AARF algorithm.
  • MinTimerThreshold: The minimum value for the 'timer' threshold in the AARF algorithm.
  • MinSuccessThreshold: The minimum value for the success threshold in the AARF algorithm.

Attributes defined in parent class ns3::ArfWifiManager:

  • TimerThreshold: The 'timer' threshold in the ARF algorithm.
  • SuccessThreshold: The minimum number of sucessfull transmissions to try a new rate.

Attributes defined in parent class ns3::WifiRemoteStationManager:

  • IsLowLatency: If true, we attempt to modelize a so-called low-latency device: a device where decisions about tx parameters can be made on a per-packet basis and feedback about the transmission of each packet is obtained before sending the next. Otherwise, we modelize a high-latency device, that is a device where we cannot update our decision about tx parameters after every packet transmission.
    • Set with class: BooleanValue
    • Underlying type: bool
    • Initial value: true
    • Flags: construct write read
  • MaxSsrc: The maximum number of retransmission attempts for an RTS. This value will not have any effect on some rate control algorithms.
  • MaxSlrc: The maximum number of retransmission attempts for a DATA packet. This value will not have any effect on some rate control algorithms.
  • RtsCtsThreshold: If a data packet is bigger than this value, we use an RTS/CTS handshake before sending the data. This value will not have any effect on some rate control algorithms.
  • FragmentationThreshold: If a data packet is bigger than this value, we fragment it such that the size of the fragments are equal or smaller than this value. This value will not have any effect on some rate control algorithms.

No TraceSources defined for this type.

Reimplemented from ns3::ArfWifiManager.

Definition at line 34 of file aarf-wifi-manager.cc.

References ns3::TypeId::AddAttribute(), m_maxSuccessThreshold, m_minSuccessThreshold, m_minTimerThreshold, m_successK, m_timerK, and ns3::TypeId::SetParent().


Member Data Documentation

Definition at line 46 of file aarf-wifi-manager.h.

Referenced by CreateStation(), and GetTypeId().

Definition at line 44 of file aarf-wifi-manager.h.

Referenced by CreateStation(), and GetTypeId().

Definition at line 43 of file aarf-wifi-manager.h.

Referenced by CreateStation(), and GetTypeId().

Definition at line 45 of file aarf-wifi-manager.h.

Referenced by CreateStation(), and GetTypeId().

Definition at line 47 of file aarf-wifi-manager.h.

Referenced by CreateStation(), and GetTypeId().


The documentation for this class was generated from the following files:
Generated on Thu Dec 3 14:10:47 2009 for NS-3 by  doxygen 1.6.3