Ieee80211CompressedBlockAck

Namespace: inet

class Ieee80211CompressedBlockAck

8.3.1.9.3 Compressed BlockAck variant

Usage diagram

Inheritance diagram

Extends

Name

Type

Description

Ieee80211BlockAck

class

8.3.1.9 BlockAck frame format – 410p.

Fields

Name

Type

Description

id

int

mutable

bool

complete

bool

correct

bool

properlyRepresented

bool

chunkLength

b

rawBin

string[]

rawHex

string[]

regionTags

SharingRegionTagSet::TagBaseRegionTag[]

chunkLength

type

Ieee80211FrameType

type and subtype

toDS

bool

fromDS

bool

moreFragments

bool

retry

bool

powerMgmt

bool

unused

moreData

bool

unused

protectedFrame

bool

unused

order

bool

unused

durationField

simtime_t

“duration” in the Duration/ID field (-1=no duration)

AID

short

“id” (Association ID) in the Duration/ID field (-1=no ID)

receiverAddress

MacAddress

aka address1 (RA)

MACArrive

simtime_t

FIXME remove it, technical data, used inside of MAC module

chunkLength

transmitterAddress

MacAddress

aka address2 (TA)

type

The RA field of the BlockAck frame is the address of the recipient STA that requested the Block Ack. The TA field is the address of the STA transmitting the BlockAck frame.

blockAckPolicy

bool

Table 8-17—BA Ack Policy subfield: 0-Normal Acknowledgment, 1-No Acknowledgment.

multiTid

bool

Table 8-18—BlockAck frame variant encoding

compressedBitmap

bool

reserved

uint16_t

multiTid

chunkLength TODO

compressedBitmap

fragmentNumber

int

The BA Information field of the Compressed BlockAck frame comprises the Block Ack Starting Sequence Control subfield and the Block Ack Bitmap subfield, as shown in Figure 8-27.

startingSequenceNumber

SequenceNumberCyclic

blockAckBitmap

BitVector

64 bits

tidInfo

int

The TID_INFO subfield of the BA Control field of the Compressed BlockAck frame contains the TID for which this BlockAck frame is sent.

Properties

Name

Value

Description

beforeChange

handleChange()

descriptor

readonly

existingClass

packetData

Source code

//
// 8.3.1.9.3 Compressed BlockAck variant
//
class Ieee80211CompressedBlockAck extends Ieee80211BlockAck
{
    // chunkLength TODO
    multiTid = 0;
    compressedBitmap = 1;

    // The BA Information field of the Compressed BlockAck frame comprises the Block Ack Starting Sequence
    // Control subfield and the Block Ack Bitmap subfield, as shown in Figure 8-27.

    int fragmentNumber = 0;
    SequenceNumberCyclic startingSequenceNumber;
    BitVector blockAckBitmap; // 64 bits

    // The TID_INFO subfield of the BA Control field of the Compressed BlockAck frame contains the TID for
    // which this BlockAck frame is sent.
    int tidInfo;
}

File: src/inet/linklayer/ieee80211/mac/Ieee80211Frame.msg