RateSelection

Package: inet.linklayer.ieee80211.mac.rateselection

RateSelection

simple module

C++ definition

Implements the default rate selection algorithm. Rate selection decides what bit rate (or MCS) should be used for control frames, management frames and data frames.

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
Dcf compound module

Implements the DCF (Distributed Coordination Function) for IEEE 802.11.

Extends

Name Type Description
SimpleModule 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

rateControlModule string
multicastFrameBitrate double -1bps
responseAckFrameBitrate double -1bps
responseCtsFrameBitrate double -1bps
dataFrameBitrate double -1bps

Fastest

dataFrameBandwidth double nan Hz

Unspecified by default

dataFrameNumSpatialStreams int -1

Unspecified by default

mgmtFrameBitrate double -1bps

Fastest

controlFrameBitrate double -1bps

Properties

Name Value Description
class RateSelection
display i=block/cogwheel

Source code

//
// Implements the default rate selection algorithm. Rate selection decides what bit rate
// (or MCS) should be used for control frames, management frames and data frames.
//
simple RateSelection extends SimpleModule like IRateSelection
{
    parameters:
        @class(RateSelection);
        string rateControlModule;

        double multicastFrameBitrate @unit(bps) = default(-1bps);

        double responseAckFrameBitrate @unit(bps) = default(-1bps);
        double responseCtsFrameBitrate @unit(bps) = default(-1bps);

        double dataFrameBitrate @unit(bps) = default(-1bps); // Fastest
        double dataFrameBandwidth @unit(Hz) = default(nan Hz); // Unspecified by default
        int dataFrameNumSpatialStreams = default(-1); // Unspecified by default

        double mgmtFrameBitrate @unit(bps) = default(-1bps); // Fastest
        double controlFrameBitrate @unit(bps) = default(-1bps);
        @display("i=block/cogwheel");
}

File: src/inet/linklayer/ieee80211/mac/rateselection/RateSelection.ned