Package: inet.linklayer.ieee80211.mac.ratecontrol
ArfRateControl
simple moduleImplements the Auto Rate Fallback (ARF) adaptive rate control mechanism.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Extends
Name | Type | Description |
---|---|---|
AarfRateControl | simple module |
Implements the Adaptive ARF (AARF) rate control mechanism, which was initially described in IEEE 802.11 Rate Adaptation: A Practical Approach, by M. Lacage, M.H. Manshaei, and T. Turletti, 2004. |
Parameters
Name | Type | Default value | Description |
---|---|---|---|
initialRate | double | -1bps | -1 means fastest mandatory rate |
interval | double | 50ms |
The rate (unconditionally) increases after each time interval. |
increaseThreshold | int | 10 |
Number of successful transmissions needed to increase the rate |
decreaseThreshold | int | 2 |
Number of consecutive unsuccessful transmissions (in the sense that ACK does not arrive within timeout) needed to increase the rate |
increaseThresholdFactor | double | 1 |
When the transmission of probing packet fails, we multiply by "increaseThresholdFactor" the increaseThreshold. |
maxIncreaseThreshold | int | 50 |
Upper bound for increaseThreshold. |
Properties
Name | Value | Description |
---|---|---|
display | i=block/cogwheel |
Signals
Name | Type | Unit |
---|---|---|
datarateChanged |
Statistics
Name | Title | Source | Record | Unit | Interpolation Mode |
---|---|---|---|---|---|
datarateChanged | datarate | vector | sample-hold |
Source code
// // Implements the Auto Rate Fallback (ARF) adaptive rate // control mechanism. // simple ArfRateControl extends AarfRateControl { parameters: increaseThresholdFactor = default(1); @display("i=block/cogwheel"); }File: src/inet/linklayer/ieee80211/mac/ratecontrol/ArfRateControl.ned