#include <block-ack-cache.h>
Public Member Functions | |
void | FillBlockAckBitmap (CtrlBAckResponseHeader *blockAckHeader) |
uint16_t | GetWinStart (void) |
When an A-MPDU is received, the window start may change to a new value depending on the sequence number of the received MPDU (standard11n page 134). More... | |
void | Init (uint16_t winStart, uint16_t winSize) |
void | UpdateWithBlockAckReq (uint16_t startingSeq) |
void | UpdateWithMpdu (const WifiMacHeader *hdr) |
Private Member Functions | |
bool | IsInWindow (uint16_t seq) |
void | ResetPortionOfBitmap (uint16_t start, uint16_t end) |
Private Attributes | |
uint16_t | m_bitmap [4096] |
uint16_t | m_winEnd |
uint8_t | m_winSize |
uint16_t | m_winStart |
Definition at line 35 of file block-ack-cache.h.
void ns3::BlockAckCache::FillBlockAckBitmap | ( | CtrlBAckResponseHeader * | blockAckHeader | ) |
Definition at line 120 of file block-ack-cache.cc.
References ns3::CtrlBAckResponseHeader::GetStartingSequence(), ns3::CtrlBAckResponseHeader::IsBasic(), ns3::CtrlBAckResponseHeader::IsCompressed(), ns3::CtrlBAckResponseHeader::IsMultiTid(), m_bitmap, m_winSize, NS_FATAL_ERROR, NS_LOG_FUNCTION, and ns3::CtrlBAckResponseHeader::SetReceivedPacket().
uint16_t ns3::BlockAckCache::GetWinStart | ( | void | ) |
When an A-MPDU is received, the window start may change to a new value depending on the sequence number of the received MPDU (standard11n page 134).
This function is used to retrieve this value in order to add it to the BlockAck.
Definition at line 43 of file block-ack-cache.cc.
References m_winStart.
void ns3::BlockAckCache::Init | ( | uint16_t | winStart, |
uint16_t | winSize | ||
) |
Definition at line 33 of file block-ack-cache.cc.
References m_bitmap, m_winEnd, m_winSize, m_winStart, and NS_LOG_FUNCTION.
Referenced by ns3::MacLow::CreateBlockAckAgreement().
|
private |
Definition at line 113 of file block-ack-cache.cc.
References m_winSize, m_winStart, and NS_LOG_FUNCTION.
Referenced by UpdateWithBlockAckReq(), and UpdateWithMpdu().
|
private |
Definition at line 101 of file block-ack-cache.cc.
References m_bitmap, NS_LOG_FUNCTION, and visualizer.core::start().
Referenced by UpdateWithBlockAckReq(), and UpdateWithMpdu().
void ns3::BlockAckCache::UpdateWithBlockAckReq | ( | uint16_t | startingSeq | ) |
Definition at line 72 of file block-ack-cache.cc.
References IsInWindow(), m_winEnd, m_winSize, m_winStart, NS_LOG_FUNCTION, ns3::QosUtilsIsOldPacket(), ResetPortionOfBitmap(), and WINSIZE_ASSERT.
void ns3::BlockAckCache::UpdateWithMpdu | ( | const WifiMacHeader * | hdr | ) |
Definition at line 49 of file block-ack-cache.cc.
References ns3::WifiMacHeader::GetFragmentNumber(), ns3::WifiMacHeader::GetSequenceNumber(), IsInWindow(), m_bitmap, m_winEnd, m_winStart, NS_LOG_FUNCTION, ns3::QosUtilsIsOldPacket(), ResetPortionOfBitmap(), and WINSIZE_ASSERT.
|
private |
Definition at line 58 of file block-ack-cache.h.
Referenced by FillBlockAckBitmap(), Init(), ResetPortionOfBitmap(), and UpdateWithMpdu().
|
private |
Definition at line 56 of file block-ack-cache.h.
Referenced by Init(), UpdateWithBlockAckReq(), and UpdateWithMpdu().
|
private |
Definition at line 55 of file block-ack-cache.h.
Referenced by FillBlockAckBitmap(), Init(), IsInWindow(), and UpdateWithBlockAckReq().
|
private |
Definition at line 54 of file block-ack-cache.h.
Referenced by GetWinStart(), Init(), IsInWindow(), UpdateWithBlockAckReq(), and UpdateWithMpdu().