OnoeRateControl

Package: inet.linklayer.ieee80211.mac.ratecontrol

simple module OnoeRateControl

Implements ONOE, a credit-based rate control algorithm originally developed by Atheros.

inet.linklayer.ieee80211.mac.ratecontrol.OnoeRateControlOnoeRateControlsimple

Inheritance diagram

Extends

Name

Type

Description

SimpleModule

simple module

Base module for all INET simple modules.

Parameters

Name

Type

Default value

Description

displayStringTextFormat

string

“{currentMode}”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

initialRate

double

-1bps

-1 means the fastest mandatory rate

interval

double

1s

Properties

Name

Value

Description

class

OnoeRateControl

display

i=block/cogwheel

Signals

Name

Type

Unit

Description

datarateChanged

Statistics

Name

Title

Source

Record

Unit

Interpolation Mode

Description

datarateChanged

datarate

vector

sample-hold

Source code

//
// Implements ONOE, a credit-based rate control algorithm originally
// developed by Atheros.
//
simple OnoeRateControl extends SimpleModule like IRateControl
{
    parameters:
        @class(OnoeRateControl);
        double initialRate @unit(bps) = default(-1bps); // -1 means the fastest mandatory rate
        double interval @unit(s) = default(1s);
        displayStringTextFormat = default("{currentMode}");
        @display("i=block/cogwheel");
        @signal[datarateChanged];
        @statistic[datarateChanged](title="datarate"; record=vector; interpolationmode=sample-hold);
}

File: src/inet/linklayer/ieee80211/mac/ratecontrol/OnoeRateControl.ned