Simple Module Contention

Package: inet.linklayer.ieee80211.mac.contention
File: src/inet/linklayer/ieee80211/mac/contention/Contention.ned

C++ definition

The default implementation of IContention.

Contention

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Used in compound modules:

Name Type Description
Dcaf compound module (no description)
Edcaf compound module

IEEE 802.11 Enhanced Distributed Channel Access Function

Parameters:

Name Type Default value Description
initialChannelBusy bool true

assume that channel was busy before the simulation started

backoffOptimization bool true

we can pretend the frame has arrived into the queue a little bit earlier, and may be able to start transmitting immediately

Properties:

Name Value Description
display i=block/timer

Signals:

Name Type Unit
stateChanged long

Statistics:

Name Title Source Record Unit Interpolation Mode
state contention state stateChanged vector none

Source code:

//
// The default implementation of IContention.
//
simple Contention like IContention
{
    parameters:
        bool initialChannelBusy = default(true); // assume that channel was busy before the simulation started
        bool backoffOptimization = default(true);    // we can pretend the frame has arrived into the queue a little bit earlier, and may be able to start transmitting immediately
        @display("i=block/timer");
        @signal[stateChanged](type=long); // TODO: enum=inet::ieee80211::Contention::State
        @statistic[state](title="contention state"; source=stateChanged; record=vector; interpolationmode=none);
}