RecipientQosMacDataService

Package: inet.linklayer.ieee80211.mac.recipient

compound module RecipientQosMacDataService

Implements the QoS MAC data service for the recipient side in IEEE 802.11 networks. Extends the basic recipient MAC data service with QoS capabilities including A-MPDU deaggregation, A-MSDU deaggregation, and block ACK reordering. Processes received frames according to the MAC data plane architecture described in the IEEE 802.11 standard.

See also: RecipientMacDataService

RecipientQosMacDataService

Usage diagram

Inheritance diagram

Used in compound modules

Name

Type

Description

Hcf

compound module

Implements the HCF (Hybrid Coordination Function) for IEEE 802.11.

Extends

Name

Type

Description

Module

compound module

Base module for all INET compound 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

Properties

Name

Value

Description

class

RecipientQosMacDataService

display

i=block/join

Signals

Name

Type

Unit

Description

packetDeaggregated

inet::Packet

packetDefragmented

inet::Packet

packetDropped

inet::Packet

Statistics

Name

Title

Source

Record

Unit

Interpolation Mode

Description

packetDeaggregated

packets deaggregated

count

packetDefragmented

packets defragmented

count

packetDropDuplicateDetected

packet drops: duplicate detected

packetDropReasonIsDuplicateDetected(packetDropped)

count,sum(packetBytes),vector(packetBytes)

none

Source code

//
// Implements the QoS MAC data service for the recipient side in IEEE 802.11 networks.
// Extends the basic recipient MAC data service with QoS capabilities including A-MPDU
// deaggregation, A-MSDU deaggregation, and block ACK reordering. Processes received
// frames according to the MAC data plane architecture described in the IEEE 802.11
// standard.
//
// @see RecipientMacDataService
//
module RecipientQosMacDataService extends Module
{
    parameters:
        @class(RecipientQosMacDataService);
        @display("i=block/join");
        @signal[packetDefragmented](type=inet::Packet);
        @signal[packetDeaggregated](type=inet::Packet);
        @signal[packetDropped](type=inet::Packet);
        @statistic[packetDefragmented](title="packets defragmented"; record=count);
        @statistic[packetDeaggregated](title="packets deaggregated"; record=count);
        @statistic[packetDropDuplicateDetected](title="packet drops: duplicate detected"; source=packetDropReasonIsDuplicateDetected(packetDropped); record=count,sum(packetBytes),vector(packetBytes); interpolationmode=none);
}

File: src/inet/linklayer/ieee80211/mac/recipient/RecipientQosMacDataService.ned