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
Usage diagram¶
Inheritance diagram¶
Used in compound modules¶
Name |
Type |
Description |
|---|---|---|
compound module |
Implements the HCF (Hybrid Coordination Function) for IEEE 802.11. |
Extends¶
Name |
Type |
Description |
|---|---|---|
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 |
|||
packetDefragmented |
|||
packetDropped |
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