NonQosRecoveryProcedure¶
Package: inet.linklayer.ieee80211.mac.originator
simple module NonQosRecoveryProcedure
Implements frame retransmission and recovery procedures for non-QoS frames in IEEE 802.11 networks. Manages short and long retry counters, adjusts contention window size based on transmission outcomes, and enforces retry limits. Handles different retry procedures for frames below and above the RTS threshold as specified in IEEE 802.11 standard section 9.19.2.6.
See also: IRtsPolicy, Dcaf
Usage diagram¶
Inheritance diagram¶
Used in compound modules¶
Name |
Type |
Description |
|---|---|---|
compound module |
Implements EDCA (Enhanced Distributed Channel Access) for IEEE 802.11. The implementation allows for a configurable number of access categories, not just four as defined by the standard. |
|
compound module |
Implements the DCF (Distributed Coordination Function) for IEEE 802.11. |
Extends¶
Name |
Type |
Description |
|---|---|---|
simple module |
Base module for all INET simple modules. |
Parameters¶
Name |
Type |
Default value |
Description |
|---|---|---|---|
displayStringTextFormat |
string |
“” |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
cwCalculatorModule |
string |
||
rtsPolicyModule |
string |
||
shortRetryLimit |
int |
7 |
|
longRetryLimit |
int |
4 |
Properties¶
Name |
Value |
Description |
|---|---|---|
class |
NonQosRecoveryProcedure |
|
display |
i=block/cogwheel |
Signals¶
Name |
Type |
Unit |
Description |
|---|---|---|---|
contentionWindowChanged |
long |
||
retryLimitReached |
Statistics¶
Name |
Title |
Source |
Record |
Unit |
Interpolation Mode |
Description |
|---|---|---|---|---|---|---|
contentionWindowChanged |
contention window |
vector |
sample-hold |
|||
retryLimitReached |
retry limit reached |
count |
Source code¶
//
// Implements frame retransmission and recovery procedures for non-QoS frames in
// IEEE 802.11 networks. Manages short and long retry counters, adjusts contention
// window size based on transmission outcomes, and enforces retry limits. Handles
// different retry procedures for frames below and above the RTS threshold as
// specified in IEEE 802.11 standard section 9.19.2.6.
//
// @see IRtsPolicy, Dcaf
//
simple NonQosRecoveryProcedure extends SimpleModule
{
parameters:
@class(NonQosRecoveryProcedure);
string cwCalculatorModule;
string rtsPolicyModule;
int shortRetryLimit = default(7);
int longRetryLimit = default(4);
@display("i=block/cogwheel");
@signal[contentionWindowChanged](type=long);
@signal[retryLimitReached](type=inet::Packet);
@statistic[contentionWindowChanged](title="contention window"; record=vector; interpolationmode=sample-hold);
@statistic[retryLimitReached](title="retry limit reached"; record=count);
}
File: src/inet/linklayer/ieee80211/mac/originator/NonQosRecoveryProcedure.ned