ns3::AmrrWifiManager Class Reference

AMRR Rate control algorithm. More...

#include <amrr-wifi-manager.h>

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

List of all members.

Public Member Functions

 AmrrWifiManager ()

Static Public Member Functions

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

Private Member Functions

virtual WifiRemoteStationCreateStation (void)

Private Attributes

Time m_updatePeriod
double m_failureRatio
double m_successRatio
uint32_t m_maxSuccessThreshold
uint32_t m_minSuccessThreshold

Friends

class AmrrWifiRemoteStation

Detailed Description

AMRR Rate control algorithm.

This class implements the AMRR 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 36 of file amrr-wifi-manager.h.


Constructor & Destructor Documentation

ns3::AmrrWifiManager::AmrrWifiManager (  ) 

Definition at line 68 of file amrr-wifi-manager.cc.


Member Function Documentation

WifiRemoteStation * ns3::AmrrWifiManager::CreateStation ( void   )  [private, virtual]

Implements ns3::WifiRemoteStationManager.

Definition at line 71 of file amrr-wifi-manager.cc.

References AmrrWifiRemoteStation.

TypeId ns3::AmrrWifiManager::GetTypeId ( void   )  [static]

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

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

  • /NodeList/[i]/DeviceList/[i]/$ns3WifiNetDevice/RemoteStationManager/$ns3AmrrWifiManager

Attributes defined for this type:

  • UpdatePeriod: The interval between decisions about rate control changes
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: 1000000000ns
    • Flags: construct write read
  • FailureRatio: Ratio of minimum erronous transmissions needed to switch to a lower rate
    • Set with class: ns3::DoubleValue
    • Underlying type: double 0:1
    • Initial value: 0.333333
    • Flags: construct write read
  • SuccessRatio: Ratio of maximum erronous transmissions needed to switch to a higher rate
  • MaxSuccessThreshold: Maximum number of consecutive success periods needed to switch to a higher rate
  • MinSuccessThreshold: Minimum number of consecutive success periods needed to switch to a higher 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::WifiRemoteStationManager.

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

References ns3::TypeId::AddAttribute(), m_failureRatio, m_maxSuccessThreshold, m_minSuccessThreshold, m_successRatio, m_updatePeriod, ns3::Seconds(), and ns3::TypeId::SetParent().


Friends And Related Function Documentation

friend class AmrrWifiRemoteStation [friend]

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

Referenced by CreateStation().


Member Data Documentation

Definition at line 48 of file amrr-wifi-manager.h.

Referenced by GetTypeId().

Definition at line 50 of file amrr-wifi-manager.h.

Referenced by GetTypeId().

Definition at line 51 of file amrr-wifi-manager.h.

Referenced by GetTypeId().

Definition at line 49 of file amrr-wifi-manager.h.

Referenced by GetTypeId().

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

Referenced by GetTypeId().


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