From 22af184c697c153dea17cfa7dcda163b521ccfd1 Mon Sep 17 00:00:00 2001 From: Tom Henderson Date: Sat, 24 Aug 2024 16:42:45 -0700 Subject: [PATCH] doc, wifi: Update class Doxygen --- src/wifi/model/frame-exchange-manager.h | 8 ++++++++ src/wifi/model/qos-txop.h | 21 +++++---------------- src/wifi/model/txop.h | 25 +++++-------------------- 3 files changed, 18 insertions(+), 36 deletions(-) diff --git a/src/wifi/model/frame-exchange-manager.h b/src/wifi/model/frame-exchange-manager.h index 3ca4cc824..5bdb0c7fe 100644 --- a/src/wifi/model/frame-exchange-manager.h +++ b/src/wifi/model/frame-exchange-manager.h @@ -55,6 +55,14 @@ struct WifiAcknowledgment; * * FrameExchangeManager is a base class handling the basic frame exchange * sequences for non-QoS stations. + * + * The fragmentation policy implemented uses a simple fragmentation + * threshold: any packet bigger than this threshold is fragmented + * in fragments whose size is smaller than the threshold. + * + * The retransmission policy is also very simple: every packet is + * retransmitted until it is either successfully transmitted or + * it has been retransmitted up until the SSRC or SLRC thresholds. */ class FrameExchangeManager : public Object { diff --git a/src/wifi/model/qos-txop.h b/src/wifi/model/qos-txop.h index a9a3f811b..d6391fd1b 100644 --- a/src/wifi/model/qos-txop.h +++ b/src/wifi/model/qos-txop.h @@ -41,13 +41,13 @@ class QosFrameExchangeManager; class WifiTxParameters; /** - * \brief Handle packet fragmentation and retransmissions for QoS data frames as well - * as MSDU aggregation (A-MSDU) and block ack sessions, for a given access class. + * \brief Handles the packet queue and stores DCF/EDCA access parameters + * (one Txop per AC). * \ingroup wifi * - * This class implements the packet fragmentation and retransmission policy for - * QoS data frames. It uses the ns3::ChannelAccessManager helper class to decide - * when to send a packet. Packets are stored in a ns3::WifiMacQueue until they can be sent. + * This class handles the packet queue and stores DCF/EDCA access + * parameters (one Txop per AC). It generates backoff values and stores the channel access status + * (not requested, requested, granted) for the corresponding DCF/EDCA and for each link. * * This queue contains packets for a particular access class. * Possibles access classes are: @@ -57,17 +57,6 @@ class WifiTxParameters; * - AC_BK : background, TID = 1,2 * * This class also implements block ack sessions and MSDU aggregation (A-MSDU). - * - * The fragmentation policy currently implemented uses a simple - * threshold: any packet bigger than this threshold is fragmented - * in fragments whose size is smaller than the threshold. - * - * The retransmission policy is also very simple: every packet is - * retransmitted until it is either successfully transmitted or - * it has been retransmitted up until the SSRC or SLRC thresholds. - * - * The RTS/CTS policy is similar to the fragmentation policy: when - * a packet is bigger than a threshold, the RTS/CTS protocol is used. */ class QosTxop : public Txop diff --git a/src/wifi/model/txop.h b/src/wifi/model/txop.h index 3b3f6643f..f0da71902 100644 --- a/src/wifi/model/txop.h +++ b/src/wifi/model/txop.h @@ -55,29 +55,14 @@ enum AcIndex : uint8_t; // opaque enum declaration enum WifiMacDropReason : uint8_t; // opaque enum declaration /** - * \brief Handle packet fragmentation and retransmissions - * for data and management frames. + * \brief Handles the packet queue and stores DCF/EDCA access parameters + * (one Txop per AC). * \ingroup wifi * - * This class implements the packet fragmentation and - * retransmission policy for data and management frames. - * It uses the ns3::ChannelAccessManager helper - * class to decide when to send a packet. - * Packets are stored in a ns3::WifiMacQueue - * until they can be sent. - * - * The policy currently implemented uses a simple fragmentation - * threshold: any packet bigger than this threshold is fragmented - * in fragments whose size is smaller than the threshold. - * - * The retransmission policy is also very simple: every packet is - * retransmitted until it is either successfully transmitted or - * it has been retransmitted up until the SSRC or SLRC thresholds. - * - * The RTS/CTS policy is similar to the fragmentation policy: when - * a packet is bigger than a threshold, the RTS/CTS protocol is used. + * This class handles the packet queue and stores DCF/EDCA access + * parameters (one Txop per AC). It generates backoff values and stores the channel access status + * (not requested, requested, granted) for the corresponding DCF/EDCA and for each link. */ - class Txop : public Object { public: