ns3::CaraWifiManager Class Reference

implement the CARA rate control algorithm More...

#include <cara-wifi-manager.h>

Inheritance diagram for ns3::CaraWifiManager:

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

Collaboration graph
[legend]

List of all members.

Static Public Member Functions

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


Detailed Description

implement the CARA rate control algorithm

Implement the CARA algorithm from: J. Kim, S. Kim, S. Choi, and D. Qiao. "CARA: Collision-Aware Rate Adaptation for IEEE 802.11 WLANs."

Originally implemented by Federico Maguolo for a very early prototype version of ns-3.


Member Function Documentation

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

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

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

  • /NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/RemoteStationManager/$ns3::CaraWifiManager
Attributes defined for this type:
  • ProbeThreshold: The number of consecutive transmissions failure to activate the RTS probe.
  • FailureThreshold: The number of consecutive transmissions failure to decrease the rate.
  • SuccessThreshold: The minimum number of sucessfull transmissions to try a new rate.
  • Timeout: The 'timer' in the CARA algorithm
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.
  • NonUnicastMode: Wifi mode used for non-unicast transmissions.
    • Set with class: WifiModeValue
    • Underlying type: WifiMode
    • Initial value: Invalid-WifiMode
    • Flags: construct write read
No TraceSources defined for this type.

Reimplemented from ns3::WifiRemoteStationManager.


The documentation for this class was generated from the following files:

Generated on Fri Apr 9 15:01:09 2010 for NS-3 by  doxygen 1.5.8