22 #include "ns3/socket.h" 75 uint16_t numberSeq = (seqControl >> 4) & 0x0fff;
76 integer = (4096 - (endSequence + 1) + numberSeq) % 4096;
78 integer += (seqControl & 0x000f);
87 uint16_t distance = ((seqNumber - startingSeq) + 4096) % 4096;
88 return (distance >= 2048);
147 NS_FATAL_ERROR (
"Cannot extract Traffic ID from this BA action frame");
153 NS_FATAL_ERROR (
"Cannot extract Traffic ID from this action frame");
uint32_t RemoveHeader(Header &header)
Deserialize and remove the header from the internal buffer.
NS_ASSERT_MSG(false, "Ipv4AddressGenerator::MaskToIndex(): Impossible")
uint8_t GetPriority(void) const
Get the tag's priority.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file...
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate.
bool QosUtilsIsOldPacket(uint16_t startingSeq, uint16_t seqNumber)
This function checks if packet with sequence number seqNumber is an "old" packet. ...
uint8_t QosUtilsGetTidForPacket(Ptr< const Packet > packet)
If a qos tag is attached to the packet, returns a value < 8.
indicates whether the socket has a priority set.
AcIndex QosUtilsMapTidToAc(uint8_t tid)
Maps TID (Traffic ID) to Access classes.
uint32_t PeekHeader(Header &header) const
Deserialize but does not remove the header from the internal buffer.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Ptr< Packet > Copy(void) const
performs a COW copy of the packet.
uint8_t GetTid(Ptr< const Packet > packet, const WifiMacHeader hdr)
Extraction operator for TypeId.
uint32_t QosUtilsMapSeqControlToUniqueInteger(uint16_t seqControl, uint16_t endSequence)
Next function is useful to correctly sort buffered packets under block ack.
bool PeekPacketTag(Tag &tag) const
Search a matching tag and call Tag::Deserialize if it is found.
AcIndex
This enumeration defines the Access Categories as an enumeration with values corresponding to the AC ...