802.11 PHY layer model More...
#include "wifi-phy.h"
Public Types | |
typedef void(* | MonitorSnifferRxCallback) (Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, WifiPreamble preamble, WifiTxVector txVector, struct mpduInfo aMpdu, struct signalNoiseDbm signalNoise) |
TracedCallback signature for monitor mode receive events. More... | |
typedef void(* | MonitorSnifferTxCallback) (const Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, WifiPreamble preamble, WifiTxVector txVector, struct mpduInfo aMpdu) |
TracedCallback signature for monitor mode transmit events. More... | |
typedef Callback< void, Ptr< Packet >, double, bool > | RxErrorCallback |
arg1: packet received unsuccessfully arg2: snr of packet arg3: PHY-RXEND flag More... | |
typedef Callback< void, Ptr< Packet >, double, WifiTxVector, enum WifiPreamble > | RxOkCallback |
arg1: packet received successfully arg2: snr of packet arg3: TXVECTOR of packet arg4: type of preamble used for packet. More... | |
enum | State { IDLE, CCA_BUSY, TX, RX, SWITCHING, SLEEP } |
The state of the PHY layer. More... | |
Public Member Functions | |
WifiPhy () | |
virtual | ~WifiPhy () |
virtual void | AddSupportedChannelWidth (uint32_t width)=0 |
virtual int64_t | AssignStreams (int64_t stream)=0 |
Assign a fixed random variable stream number to the random variables used by this model. More... | |
Time | CalculatePlcpPreambleAndHeaderDuration (WifiTxVector txVector, enum WifiPreamble preamble) |
virtual double | CalculateSnr (WifiTxVector txVector, double ber) const =0 |
Time | CalculateTxDuration (uint32_t size, WifiTxVector txVector, enum WifiPreamble preamble, double frequency) |
Time | CalculateTxDuration (uint32_t size, WifiTxVector txVector, enum WifiPreamble preamble, double frequency, enum mpduType mpdutype, uint8_t incFlag) |
virtual void | ConfigureStandard (enum WifiPhyStandard standard)=0 |
Configure the PHY-level parameters for different Wi-Fi standard. More... | |
virtual uint32_t | GetBssMembershipSelector (uint32_t selector) const =0 |
The WifiPhy::BssMembershipSelector() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMembershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet. More... | |
virtual Ptr< WifiChannel > | GetChannel (void) const =0 |
Return the WifiChannel this WifiPhy is connected to. More... | |
virtual uint16_t | GetChannelNumber (void) const =0 |
Return current channel number. More... | |
virtual Time | GetChannelSwitchDelay (void) const =0 |
virtual uint32_t | GetChannelWidth (void) const =0 |
virtual Time | GetDelayUntilIdle (void)=0 |
virtual uint32_t | GetFrequency (void) const =0 |
virtual bool | GetGreenfield (void) const =0 |
virtual bool | GetGuardInterval (void) const =0 |
virtual Time | GetLastRxStartTime (void) const =0 |
Return the start time of the last received packet. More... | |
virtual bool | GetLdpc (void) const =0 |
virtual WifiMode | GetMcs (uint8_t mcs) const =0 |
The WifiPhy::GetMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of MCS indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet. More... | |
virtual WifiModeList | GetMembershipSelectorModes (uint32_t selector)=0 |
The WifiPhy::GetMembershipSelectorModes() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMembershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet. More... | |
virtual WifiMode | GetMode (uint32_t mode) const =0 |
The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet. More... | |
virtual uint32_t | GetNBssMembershipSelectors (void) const =0 |
The WifiPhy::NBssMembershipSelectors() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMembershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet. More... | |
virtual uint8_t | GetNMcs (void) const =0 |
The WifiPhy::GetNMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of MCS indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet. More... | |
virtual uint32_t | GetNModes (void) const =0 |
The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet. More... | |
virtual uint32_t | GetNTxPower (void) const =0 |
virtual uint32_t | GetNumberOfReceiveAntennas (void) const =0 |
virtual uint32_t | GetNumberOfTransmitAntennas (void) const =0 |
Time | GetPayloadDuration (uint32_t size, WifiTxVector txVector, WifiPreamble preamble, double frequency) |
Time | GetPayloadDuration (uint32_t size, WifiTxVector txVector, WifiPreamble preamble, double frequency, enum mpduType mpdutype, uint8_t incFlag) |
virtual bool | GetShortPlcpPreambleSupported (void) const =0 |
virtual Time | GetStateDuration (void)=0 |
virtual bool | GetStbc (void) const =0 |
virtual std::vector< uint32_t > | GetSupportedChannelWidthSet (void) const =0 |
virtual uint8_t | GetSupportedRxSpatialStreams (void) const =0 |
virtual uint8_t | GetSupportedTxSpatialStreams (void) const =0 |
virtual double | GetTxPowerEnd (void) const =0 |
Return the maximum available transmission power level (dBm). More... | |
virtual double | GetTxPowerStart (void) const =0 |
Return the minimum available transmission power level (dBm). More... | |
virtual bool | IsModeSupported (WifiMode mode) const =0 |
Check if the given WifiMode is supported by the PHY. More... | |
virtual bool | IsStateBusy (void)=0 |
virtual bool | IsStateCcaBusy (void)=0 |
virtual bool | IsStateIdle (void)=0 |
virtual bool | IsStateRx (void)=0 |
virtual bool | IsStateSleep (void)=0 |
virtual bool | IsStateSwitching (void)=0 |
virtual bool | IsStateTx (void)=0 |
void | NotifyMonitorSniffRx (Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, WifiPreamble preamble, WifiTxVector txVector, struct mpduInfo aMpdu, struct signalNoiseDbm signalNoise) |
Public method used to fire a MonitorSniffer trace for a wifi packet being received. More... | |
void | NotifyMonitorSniffTx (Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, WifiPreamble preamble, WifiTxVector txVector, struct mpduInfo aMpdu) |
Public method used to fire a MonitorSniffer trace for a wifi packet being transmitted. More... | |
void | NotifyRxBegin (Ptr< const Packet > packet) |
Public method used to fire a PhyRxBegin trace. More... | |
void | NotifyRxDrop (Ptr< const Packet > packet) |
Public method used to fire a PhyRxDrop trace. More... | |
void | NotifyRxEnd (Ptr< const Packet > packet) |
Public method used to fire a PhyRxEnd trace. More... | |
void | NotifyTxBegin (Ptr< const Packet > packet) |
Public method used to fire a PhyTxBegin trace. More... | |
void | NotifyTxDrop (Ptr< const Packet > packet) |
Public method used to fire a PhyTxDrop trace. More... | |
void | NotifyTxEnd (Ptr< const Packet > packet) |
Public method used to fire a PhyTxEnd trace. More... | |
virtual void | RegisterListener (WifiPhyListener *listener)=0 |
virtual void | ResumeFromSleep (void)=0 |
Resume from sleep mode. More... | |
virtual void | SendPacket (Ptr< const Packet > packet, WifiTxVector txVector, enum WifiPreamble preamble)=0 |
virtual void | SendPacket (Ptr< const Packet > packet, WifiTxVector txVector, enum WifiPreamble preamble, enum mpduType mpdutype)=0 |
virtual void | SetChannelNumber (uint16_t id)=0 |
Set channel number. More... | |
virtual void | SetChannelWidth (uint32_t channelwidth)=0 |
virtual void | SetFrequency (uint32_t freq)=0 |
virtual void | SetGreenfield (bool greenfield)=0 |
virtual void | SetGuardInterval (bool guardInterval)=0 |
virtual void | SetLdpc (bool ldpc)=0 |
virtual void | SetNumberOfReceiveAntennas (uint32_t rx)=0 |
virtual void | SetNumberOfTransmitAntennas (uint32_t tx)=0 |
virtual void | SetReceiveErrorCallback (RxErrorCallback callback)=0 |
virtual void | SetReceiveOkCallback (RxOkCallback callback)=0 |
virtual void | SetShortPlcpPreambleSupported (bool preamble)=0 |
virtual void | SetSleepMode (void)=0 |
Put in sleep mode. More... | |
virtual void | SetStbc (bool stbc)=0 |
virtual void | UnregisterListener (WifiPhyListener *listener)=0 |
![]() | |
Object () | |
Constructor. More... | |
virtual | ~Object () |
Destructor. More... | |
void | AggregateObject (Ptr< Object > other) |
Aggregate two Objects together. More... | |
void | Dispose (void) |
Dispose of this Object. More... | |
AggregateIterator | GetAggregateIterator (void) const |
Get an iterator to the Objects aggregated to this one. More... | |
virtual TypeId | GetInstanceTypeId (void) const |
Implement the GetInstanceTypeId method defined in ObjectBase. More... | |
template<typename T > | |
Ptr< T > | GetObject (void) const |
Get a pointer to the requested aggregated Object. More... | |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
Get a pointer to the requested aggregated Object by TypeId. More... | |
void | Initialize (void) |
Invoke DoInitialize on all Objects aggregated to this one. More... | |
![]() | |
SimpleRefCount () | |
Constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
![]() | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
Get the value of an attribute, raising fatal errors if unsuccessful. More... | |
bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
Get the value of an attribute without raising erros. More... | |
void | SetAttribute (std::string name, const AttributeValue &value) |
Set a single attribute, raising fatal errors if unsuccessful. More... | |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
Set a single attribute without raising errors. More... | |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
Connect a TraceSource to a Callback with a context. More... | |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
Connect a TraceSource to a Callback without a context. More... | |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected with a context. More... | |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected without a context. More... | |
Static Public Member Functions | |
static WifiMode | GetDsssRate11Mbps () |
Return a WifiMode for DSSS at 11Mbps. More... | |
static WifiMode | GetDsssRate1Mbps () |
Return a WifiMode for DSSS at 1Mbps. More... | |
static WifiMode | GetDsssRate2Mbps () |
Return a WifiMode for DSSS at 2Mbps. More... | |
static WifiMode | GetDsssRate5_5Mbps () |
Return a WifiMode for DSSS at 5.5Mbps. More... | |
static WifiMode | GetErpOfdmRate12Mbps () |
Return a WifiMode for ERP-OFDM at 12Mbps. More... | |
static WifiMode | GetErpOfdmRate18Mbps () |
Return a WifiMode for ERP-OFDM at 18Mbps. More... | |
static WifiMode | GetErpOfdmRate24Mbps () |
Return a WifiMode for ERP-OFDM at 24Mbps. More... | |
static WifiMode | GetErpOfdmRate36Mbps () |
Return a WifiMode for ERP-OFDM at 36Mbps. More... | |
static WifiMode | GetErpOfdmRate48Mbps () |
Return a WifiMode for ERP-OFDM at 48Mbps. More... | |
static WifiMode | GetErpOfdmRate54Mbps () |
Return a WifiMode for ERP-OFDM at 54Mbps. More... | |
static WifiMode | GetErpOfdmRate6Mbps () |
Return a WifiMode for ERP-OFDM at 6Mbps. More... | |
static WifiMode | GetErpOfdmRate9Mbps () |
Return a WifiMode for ERP-OFDM at 9Mbps. More... | |
static WifiMode | GetHtMcs0 () |
Return MCS 0 from HT MCS values. More... | |
static WifiMode | GetHtMcs1 () |
Return MCS 1 from HT MCS values. More... | |
static WifiMode | GetHtMcs10 () |
Return MCS 10 from HT MCS values. More... | |
static WifiMode | GetHtMcs11 () |
Return MCS 11 from HT MCS values. More... | |
static WifiMode | GetHtMcs12 () |
Return MCS 12 from HT MCS values. More... | |
static WifiMode | GetHtMcs13 () |
Return MCS 13 from HT MCS values. More... | |
static WifiMode | GetHtMcs14 () |
Return MCS 14 from HT MCS values. More... | |
static WifiMode | GetHtMcs15 () |
Return MCS 15 from HT MCS values. More... | |
static WifiMode | GetHtMcs16 () |
Return MCS 16 from HT MCS values. More... | |
static WifiMode | GetHtMcs17 () |
Return MCS 17 from HT MCS values. More... | |
static WifiMode | GetHtMcs18 () |
Return MCS 18 from HT MCS values. More... | |
static WifiMode | GetHtMcs19 () |
Return MCS 19 from HT MCS values. More... | |
static WifiMode | GetHtMcs2 () |
Return MCS 2 from HT MCS values. More... | |
static WifiMode | GetHtMcs20 () |
Return MCS 20 from HT MCS values. More... | |
static WifiMode | GetHtMcs21 () |
Return MCS 21 from HT MCS values. More... | |
static WifiMode | GetHtMcs22 () |
Return MCS 22 from HT MCS values. More... | |
static WifiMode | GetHtMcs23 () |
Return MCS 23 from HT MCS values. More... | |
static WifiMode | GetHtMcs24 () |
Return MCS 24 from HT MCS values. More... | |
static WifiMode | GetHtMcs25 () |
Return MCS 25 from HT MCS values. More... | |
static WifiMode | GetHtMcs26 () |
Return MCS 26 from HT MCS values. More... | |
static WifiMode | GetHtMcs27 () |
Return MCS 27 from HT MCS values. More... | |
static WifiMode | GetHtMcs28 () |
Return MCS 28 from HT MCS values. More... | |
static WifiMode | GetHtMcs29 () |
Return MCS 29 from HT MCS values. More... | |
static WifiMode | GetHtMcs3 () |
Return MCS 3 from HT MCS values. More... | |
static WifiMode | GetHtMcs30 () |
Return MCS 30 from HT MCS values. More... | |
static WifiMode | GetHtMcs31 () |
Return MCS 31 from HT MCS values. More... | |
static WifiMode | GetHtMcs4 () |
Return MCS 4 from HT MCS values. More... | |
static WifiMode | GetHtMcs5 () |
Return MCS 5 from HT MCS values. More... | |
static WifiMode | GetHtMcs6 () |
Return MCS 6 from HT MCS values. More... | |
static WifiMode | GetHtMcs7 () |
Return MCS 7 from HT MCS values. More... | |
static WifiMode | GetHtMcs8 () |
Return MCS 8 from HT MCS values. More... | |
static WifiMode | GetHtMcs9 () |
Return MCS 9 from HT MCS values. More... | |
static WifiMode | GetHtPlcpHeaderMode (WifiMode payloadMode) |
static WifiMode | GetOfdmRate12Mbps () |
Return a WifiMode for OFDM at 12Mbps. More... | |
static WifiMode | GetOfdmRate12MbpsBW10MHz () |
Return a WifiMode for OFDM at 12Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate12MbpsBW5MHz () |
Return a WifiMode for OFDM at 12Mbps with 5MHz channel spacing. More... | |
static WifiMode | GetOfdmRate13_5MbpsBW5MHz () |
Return a WifiMode for OFDM at 13.5Mbps with 5MHz channel spacing. More... | |
static WifiMode | GetOfdmRate18Mbps () |
Return a WifiMode for OFDM at 18Mbps. More... | |
static WifiMode | GetOfdmRate18MbpsBW10MHz () |
Return a WifiMode for OFDM at 18Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate1_5MbpsBW5MHz () |
Return a WifiMode for OFDM at 1.5Mbps with 5MHz channel spacing. More... | |
static WifiMode | GetOfdmRate24Mbps () |
Return a WifiMode for OFDM at 24Mbps. More... | |
static WifiMode | GetOfdmRate24MbpsBW10MHz () |
Return a WifiMode for OFDM at 24Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate27MbpsBW10MHz () |
Return a WifiMode for OFDM at 27Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate2_25MbpsBW5MHz () |
Return a WifiMode for OFDM at 2.25Mbps with 5MHz channel spacing. More... | |
static WifiMode | GetOfdmRate36Mbps () |
Return a WifiMode for OFDM at 36Mbps. More... | |
static WifiMode | GetOfdmRate3MbpsBW10MHz () |
Return a WifiMode for OFDM at 3Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate3MbpsBW5MHz () |
Return a WifiMode for OFDM at 3Mbps with 5MHz channel spacing. More... | |
static WifiMode | GetOfdmRate48Mbps () |
Return a WifiMode for OFDM at 48Mbps. More... | |
static WifiMode | GetOfdmRate4_5MbpsBW10MHz () |
Return a WifiMode for OFDM at 4.5Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate4_5MbpsBW5MHz () |
Return a WifiMode for OFDM at 4.5Mbps with 5MHz channel spacing. More... | |
static WifiMode | GetOfdmRate54Mbps () |
Return a WifiMode for OFDM at 54Mbps. More... | |
static WifiMode | GetOfdmRate6Mbps () |
Return a WifiMode for OFDM at 6Mbps. More... | |
static WifiMode | GetOfdmRate6MbpsBW10MHz () |
Return a WifiMode for OFDM at 6Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate6MbpsBW5MHz () |
Return a WifiMode for OFDM at 6Mbps with 5MHz channel spacing. More... | |
static WifiMode | GetOfdmRate9Mbps () |
Return a WifiMode for OFDM at 9Mbps. More... | |
static WifiMode | GetOfdmRate9MbpsBW10MHz () |
Return a WifiMode for OFDM at 9Mbps with 10MHz channel spacing. More... | |
static WifiMode | GetOfdmRate9MbpsBW5MHz () |
Return a WifiMode for OFDM at 9Mbps with 5MHz channel spacing. More... | |
static Time | GetPlcpHeaderDuration (WifiTxVector txVector, WifiPreamble preamble) |
static WifiMode | GetPlcpHeaderMode (WifiMode payloadMode, WifiPreamble preamble, WifiTxVector txVector) |
static Time | GetPlcpHtSigHeaderDuration (WifiPreamble preamble) |
static Time | GetPlcpHtTrainingSymbolDuration (WifiPreamble preamble, WifiTxVector txVector) |
static Time | GetPlcpPreambleDuration (WifiTxVector txVector, WifiPreamble preamble) |
static Time | GetPlcpVhtSigA1Duration (WifiPreamble preamble) |
static Time | GetPlcpVhtSigA2Duration (WifiPreamble preamble) |
static Time | GetPlcpVhtSigBDuration (WifiPreamble preamble) |
static TypeId | GetTypeId (void) |
static WifiMode | GetVhtMcs0 () |
Return MCS 0 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs1 () |
Return MCS 1 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs2 () |
Return MCS 2 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs3 () |
Return MCS 3 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs4 () |
Return MCS 4 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs5 () |
Return MCS 5 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs6 () |
Return MCS 6 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs7 () |
Return MCS 7 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs8 () |
Return MCS 8 from VHT MCS values. More... | |
static WifiMode | GetVhtMcs9 () |
Return MCS 9 from VHT MCS values. More... | |
static WifiMode | GetVhtPlcpHeaderMode (WifiMode payloadMode) |
static bool | IsValidTxVector (WifiTxVector txVector) |
The standard disallows certain combinations of WifiMode, number of spatial streams, and channel widths. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static void | Cleanup (void) |
Noop. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Private Attributes | |
TracedCallback< Ptr< const Packet >, uint16_t, uint16_t, uint32_t, WifiPreamble, WifiTxVector, struct mpduInfo, struct signalNoiseDbm > | m_phyMonitorSniffRxTrace |
A trace source that emulates a wifi device in monitor mode sniffing a packet being received. More... | |
TracedCallback< Ptr< const Packet >, uint16_t, uint16_t, uint32_t, WifiPreamble, WifiTxVector, struct mpduInfo > | m_phyMonitorSniffTxTrace |
A trace source that emulates a wifi device in monitor mode sniffing a packet being transmitted. More... | |
TracedCallback< Ptr< const Packet > > | m_phyRxBeginTrace |
The trace source fired when a packet begins the reception process from the medium. More... | |
TracedCallback< Ptr< const Packet > > | m_phyRxDropTrace |
The trace source fired when the phy layer drops a packet it has received. More... | |
TracedCallback< Ptr< const Packet > > | m_phyRxEndTrace |
The trace source fired when a packet ends the reception process from the medium. More... | |
TracedCallback< Ptr< const Packet > > | m_phyTxBeginTrace |
The trace source fired when a packet begins the transmission process on the medium. More... | |
TracedCallback< Ptr< const Packet > > | m_phyTxDropTrace |
The trace source fired when the phy layer drops a packet as it tries to transmit it. More... | |
TracedCallback< Ptr< const Packet > > | m_phyTxEndTrace |
The trace source fired when a packet ends the transmission process on the medium. More... | |
double | m_totalAmpduNumSymbols |
Number of symbols previously transmitted for the MPDUs in an A-MPDU, used for the computation of the number of symbols needed for the last MPDU in the A-MPDU. More... | |
uint32_t | m_totalAmpduSize |
Total size of the previously transmitted MPDUs in an A-MPDU, used for the computation of the number of symbols needed for the last MPDU in the A-MPDU. More... | |
Additional Inherited Members | |
![]() | |
Object (const Object &o) | |
Copy an Object. More... | |
virtual void | DoDispose (void) |
Destructor implementation. More... | |
virtual void | DoInitialize (void) |
Initialize() implementation. More... | |
virtual void | NotifyNewAggregate (void) |
Notify all Objects aggregated to this one of a new Object being aggregated. More... | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
Complete construction of ObjectBase; invoked by derived classes. More... | |
virtual void | NotifyConstructionCompleted (void) |
Notifier called once the ObjectBase is fully constructed. More... | |
![]() | |
static TypeId | GetObjectIid (void) |
Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. More... | |
802.11 PHY layer model
ns3::WifiPhy is accessible through the following paths with Config::Set and Config::Connect:
No Attributes are defined for this type.
Size of this type is 176 bytes (on a 64-bit architecture).
Definition at line 151 of file wifi-phy.h.
typedef void(* ns3::WifiPhy::MonitorSnifferRxCallback) (Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, WifiPreamble preamble, WifiTxVector txVector, struct mpduInfo aMpdu, struct signalNoiseDbm signalNoise) |
TracedCallback signature for monitor mode receive events.
packet | the packet being received |
channelFreqMhz | the frequency in MHz at which the packet is received. Note that in real devices this is normally the frequency to which the receiver is tuned, and this can be different than the frequency at which the packet was originally transmitted. This is because it is possible to have the receiver tuned on a given channel and still to be able to receive packets on a nearby channel. |
channelNumber | the channel on which the packet is received |
rate | the PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header) |
preamble | the preamble of the packet |
txVector | the TXVECTOR that holds rx parameters |
aMpdu | the type of the packet (0 is not A-MPDU, 1 is a MPDU that is part of an A-MPDU and 2 is the last MPDU in an A-MPDU) and the A-MPDU reference number (must be a different value for each A-MPDU but the same for each subframe within one A-MPDU) |
signalNoise | signal power and noise power in dBm |
Definition at line 1160 of file wifi-phy.h.
typedef void(* ns3::WifiPhy::MonitorSnifferTxCallback) (const Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, WifiPreamble preamble, WifiTxVector txVector, struct mpduInfo aMpdu) |
TracedCallback signature for monitor mode transmit events.
packet | the packet being transmitted |
channelFreqMhz | the frequency in MHz at which the packet is transmitted. |
channelNumber | the channel on which the packet is transmitted |
rate | the PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header) |
preamble | the preamble of the packet |
txVector | the TXVECTOR that holds tx parameters |
aMpdu | the type of the packet (0 is not A-MPDU, 1 is a MPDU that is part of an A-MPDU and 2 is the last MPDU in an A-MPDU) and the A-MPDU reference number (must be a different value for each A-MPDU but the same for each subframe within one A-MPDU) |
Definition at line 1199 of file wifi-phy.h.
typedef Callback<void, Ptr<Packet>, double, bool> ns3::WifiPhy::RxErrorCallback |
arg1: packet received unsuccessfully arg2: snr of packet arg3: PHY-RXEND flag
Definition at line 197 of file wifi-phy.h.
typedef Callback<void, Ptr<Packet>, double, WifiTxVector, enum WifiPreamble> ns3::WifiPhy::RxOkCallback |
arg1: packet received successfully arg2: snr of packet arg3: TXVECTOR of packet arg4: type of preamble used for packet.
Definition at line 191 of file wifi-phy.h.
ns3::WifiPhy::WifiPhy | ( | ) |
Definition at line 109 of file wifi-phy.cc.
References m_totalAmpduNumSymbols, m_totalAmpduSize, and NS_LOG_FUNCTION.
|
virtual |
Definition at line 116 of file wifi-phy.cc.
References NS_LOG_FUNCTION.
|
pure virtual |
width | channel width (in MHz) to support |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Assign a fixed random variable stream number to the random variables used by this model.
Return the number of streams (possibly zero) that have been assigned.
stream | first stream index to use |
Implemented in ns3::YansWifiPhy.
Time ns3::WifiPhy::CalculatePlcpPreambleAndHeaderDuration | ( | WifiTxVector | txVector, |
enum WifiPreamble | preamble | ||
) |
txVector | the transmission parameters used for this packet |
preamble | the type of preamble to use for this packet. |
Definition at line 696 of file wifi-phy.cc.
References GetPlcpHeaderDuration(), GetPlcpHtSigHeaderDuration(), GetPlcpHtTrainingSymbolDuration(), GetPlcpPreambleDuration(), GetPlcpVhtSigA1Duration(), GetPlcpVhtSigA2Duration(), and GetPlcpVhtSigBDuration().
Referenced by CalculateTxDuration(), and ns3::YansWifiPhy::StartReceivePreambleAndHeader().
|
pure virtual |
txVector | the transmission vector |
ber | the probability of bit error rate |
Implemented in ns3::YansWifiPhy.
Time ns3::WifiPhy::CalculateTxDuration | ( | uint32_t | size, |
WifiTxVector | txVector, | ||
enum WifiPreamble | preamble, | ||
double | frequency | ||
) |
size | the number of bytes in the packet to send |
txVector | the TXVECTOR used for the transmission of this packet |
preamble | the type of preamble to use for this packet. |
frequency | the channel center frequency (MHz) |
Definition at line 717 of file wifi-phy.cc.
References ns3::NORMAL_MPDU.
Referenced by ns3::MinstrelHtWifiManager::CalculateFirstMpduTxDuration(), ns3::MinstrelHtWifiManager::CalculateMpduTxDuration(), ns3::MacLow::CalculateOverallTxTime(), ns3::MacLow::CalculateTransmissionTime(), TxDurationTest::CheckTxDuration(), ns3::MacLow::ForwardDown(), ns3::MacLow::GetAckDuration(), ns3::MacLow::GetBlockAckDuration(), ns3::MacLow::GetCtsDuration(), ns3::MacLow::NotifyNav(), ns3::MacLow::SendCtsToSelf(), ns3::MacLow::SendDataAfterCts(), ns3::MacLow::SendDataPacket(), ns3::YansWifiPhy::SendPacket(), ns3::MacLow::SendRtsForPacket(), NodeStatistics::SetupPhy(), ns3::MinstrelWifiManager::SetupPhy(), ns3::MacLow::StartDataTxTimers(), and ns3::MacLow::StopMpduAggregation().
Time ns3::WifiPhy::CalculateTxDuration | ( | uint32_t | size, |
WifiTxVector | txVector, | ||
enum WifiPreamble | preamble, | ||
double | frequency, | ||
enum mpduType | mpdutype, | ||
uint8_t | incFlag | ||
) |
size | the number of bytes in the packet to send |
txVector | the TXVECTOR used for the transmission of this packet |
preamble | the type of preamble to use for this packet. |
frequency | the channel center frequency (MHz) |
mpdutype | the type of the MPDU as defined in WifiPhy::mpduType. |
incFlag | this flag is used to indicate that the static variables need to be update or not. This function is called a couple of times for the same packet so static variables should not be increased each time. |
Definition at line 709 of file wifi-phy.cc.
References CalculatePlcpPreambleAndHeaderDuration(), and GetPayloadDuration().
|
pure virtual |
Configure the PHY-level parameters for different Wi-Fi standard.
standard | the Wi-Fi standard |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MeshHelper::CreateInterface(), ns3::WifiHelper::Install(), and ns3::WaveHelper::Install().
|
pure virtual |
The WifiPhy::BssMembershipSelector() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMembershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet.
selector | index in array of supported memberships |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), and ns3::StaWifiMac::Receive().
|
pure virtual |
Return the WifiChannel this WifiPhy is connected to.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiNetDevice::DoGetChannel(), ns3::WifiNetDevice::GetChannel(), and ns3::WaveNetDevice::GetChannel().
|
pure virtual |
Return current channel number.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WaveMacLow::StartTransmission(), and ns3::DefaultChannelScheduler::SwitchToNextChannel().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::DefaultChannelScheduler::AssignDefaultCchAccess(), and ns3::DefaultChannelScheduler::SwitchToNextChannel().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::AddStationVhtCapabilities(), ns3::MeshWifiInterfaceMac::CheckSupportedRates(), ns3::WifiRemoteStationManager::DoGetAckTxChannelWidth(), ns3::WifiRemoteStationManager::DoGetBlockAckTxChannelWidth(), ns3::WifiRemoteStationManager::DoGetCtsToSelfTxVector(), ns3::WifiRemoteStationManager::DoGetCtsTxChannelWidth(), ns3::IdealWifiManager::DoInitialize(), ns3::WifiRemoteStationManager::GetDataTxVector(), ns3::RegularWifiMac::GetHtCapabilities(), ns3::MeshWifiInterfaceMac::GetSupportedRates(), ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), ns3::RegularWifiMac::GetVhtCapabilities(), ns3::WifiRemoteStationManager::LookupState(), ns3::StaWifiMac::Receive(), ns3::ApWifiMac::Receive(), and ns3::MeshWifiInterfaceMac::Receive().
|
pure virtual |
The PHY will never become WifiPhy::IDLE before the delay returned by this method but it could become really idle later.
Implemented in ns3::YansWifiPhy.
|
static |
Return a WifiMode for DSSS at 11Mbps.
Definition at line 813 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_HR_DSSS.
Referenced by ns3::YansWifiPhy::Configure80211b(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for DSSS at 1Mbps.
Definition at line 774 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_DSSS.
Referenced by ns3::YansWifiPhy::Configure80211b(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().
|
static |
Return a WifiMode for DSSS at 2Mbps.
Definition at line 786 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_DSSS.
Referenced by ns3::YansWifiPhy::Configure80211b(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().
|
static |
Return a WifiMode for DSSS at 5.5Mbps.
Definition at line 801 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_HR_DSSS.
Referenced by ns3::YansWifiPhy::Configure80211b(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-OFDM at 12Mbps.
Definition at line 852 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-OFDM at 18Mbps.
Definition at line 864 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-OFDM at 24Mbps.
Definition at line 876 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-OFDM at 36Mbps.
Definition at line 888 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-OFDM at 48Mbps.
Definition at line 900 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-OFDM at 54Mbps.
Definition at line 912 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-OFDM at 6Mbps.
Definition at line 828 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().
|
static |
Return a WifiMode for ERP-OFDM at 9Mbps.
Definition at line 840 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MinstrelHtWifiManager::CalculateFirstMpduTxDuration(), ns3::MinstrelHtWifiManager::CalculateMpduTxDuration(), ns3::MacLow::CalculateOverallTxTime(), ns3::MacLow::CalculateTransmissionTime(), ns3::MacLow::ForwardDown(), ns3::MacLow::GetAckDuration(), ns3::MacLow::GetBlockAckDuration(), ns3::MacLow::GetCtsDuration(), ns3::MacLow::NotifyNav(), ns3::MacLow::SendCtsToSelf(), ns3::MacLow::SendDataAfterCts(), ns3::MacLow::SendDataPacket(), ns3::MacLow::SendRtsForPacket(), NodeStatistics::SetupPhy(), ns3::MinstrelWifiManager::SetupPhy(), ns3::MacLow::StartDataTxTimers(), and ns3::MacLow::StopMpduAggregation().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::CalculateOverallTxTime(), ns3::MacLow::CalculateTransmissionTime(), ns3::RegularWifiMac::GetHtCapabilities(), ns3::WifiRemoteStationManager::LookupState(), ns3::MacLow::SendDataAfterCts(), ns3::MacLow::SendDataPacket(), ns3::MacLow::SendRtsForPacket(), ns3::MacLow::StartDataTxTimers(), and ns3::MacLow::StopMpduAggregation().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MeshWifiInterfaceMac::CheckSupportedRates(), ns3::WifiRemoteStationManager::DoGetAckTxGuardInterval(), ns3::WifiRemoteStationManager::DoGetBlockAckTxGuardInterval(), ns3::WifiRemoteStationManager::DoGetCtsToSelfTxVector(), ns3::WifiRemoteStationManager::DoGetCtsTxGuardInterval(), ns3::IdealWifiManager::DoInitialize(), ns3::WifiRemoteStationManager::GetDataTxVector(), ns3::RegularWifiMac::GetHtCapabilities(), ns3::MeshWifiInterfaceMac::GetSupportedRates(), ns3::RegularWifiMac::GetVhtCapabilities(), ns3::WifiRemoteStationManager::LookupState(), and ns3::MeshWifiInterfaceMac::Receive().
|
static |
Return MCS 0 from HT MCS values.
Definition at line 1224 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), GetHtPlcpHeaderMode(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 1 from HT MCS values.
Definition at line 1232 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 10 from HT MCS values.
Definition at line 1304 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 11 from HT MCS values.
Definition at line 1312 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 12 from HT MCS values.
Definition at line 1320 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 13 from HT MCS values.
Definition at line 1328 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 14 from HT MCS values.
Definition at line 1336 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 15 from HT MCS values.
Definition at line 1344 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 16 from HT MCS values.
Definition at line 1352 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 17 from HT MCS values.
Definition at line 1360 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 18 from HT MCS values.
Definition at line 1368 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 19 from HT MCS values.
Definition at line 1376 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 2 from HT MCS values.
Definition at line 1240 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 20 from HT MCS values.
Definition at line 1384 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 21 from HT MCS values.
Definition at line 1392 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 22 from HT MCS values.
Definition at line 1400 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 23 from HT MCS values.
Definition at line 1408 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 24 from HT MCS values.
Definition at line 1416 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 25 from HT MCS values.
Definition at line 1424 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 26 from HT MCS values.
Definition at line 1432 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 27 from HT MCS values.
Definition at line 1440 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 28 from HT MCS values.
Definition at line 1448 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 29 from HT MCS values.
Definition at line 1456 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 3 from HT MCS values.
Definition at line 1248 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 30 from HT MCS values.
Definition at line 1464 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 31 from HT MCS values.
Definition at line 1472 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 4 from HT MCS values.
Definition at line 1256 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 5 from HT MCS values.
Definition at line 1264 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 6 from HT MCS values.
Definition at line 1272 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 7 from HT MCS values.
Definition at line 1280 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 8 from HT MCS values.
Definition at line 1288 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return MCS 9 from HT MCS values.
Definition at line 1296 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_HT.
Referenced by ns3::YansWifiPhy::ConfigureHtDeviceMcsSet(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
payloadMode | the WifiMode use for the transmission of the payload |
Definition at line 122 of file wifi-phy.cc.
References GetHtMcs0().
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer().
|
pure virtual |
Return the start time of the last received packet.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::NavCounterResetCtsMissed().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::RegularWifiMac::GetHtCapabilities(), and ns3::RegularWifiMac::GetVhtCapabilities().
|
pure virtual |
The WifiPhy::GetMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of MCS indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet.
mcs | index in array of supported MCS |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::AddAllSupportedMcs(), ns3::IdealWifiManager::DoInitialize(), ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::RegularWifiMac::GetHtCapabilities(), ns3::MinstrelHtWifiManager::GetHtDeviceMcsList(), ns3::RegularWifiMac::GetVhtCapabilities(), ns3::MinstrelHtWifiManager::GetVhtDeviceMcsList(), ns3::StaWifiMac::Receive(), ns3::ApWifiMac::Receive(), and ns3::WifiRemoteStationManager::SetupPhy().
|
pure virtual |
The WifiPhy::GetMembershipSelectorModes() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMembershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet.
selector | index in array of supported memberships |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet.
It is important to note that the DeviceRateSet is a superset (not necessarily proper) of the OperationalRateSet (which is logically, if not actually, a property of the associated WifiRemoteStationManager), which itself is a superset (again, not necessarily proper) of the BSSBasicRateSet.
mode | index in array of supported modes |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::AddAllSupportedModes(), ns3::MinstrelHtWifiManager::DoGetRtsTxVector(), ns3::IdealWifiManager::DoInitialize(), ns3::MeshWifiInterfaceMac::ForwardDown(), ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::MeshWifiInterfaceMac::GetSupportedRates(), ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), ns3::StaWifiMac::Receive(), ns3::ApWifiMac::Receive(), ns3::MeshWifiInterfaceMac::Receive(), ns3::WifiRemoteStationManager::SetupPhy(), NodeStatistics::SetupPhy(), and ns3::MinstrelWifiManager::SetupPhy().
|
pure virtual |
The WifiPhy::NBssMembershipSelectors() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMembershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), and ns3::StaWifiMac::Receive().
|
pure virtual |
The WifiPhy::GetNMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of MCS indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::AddAllSupportedMcs(), ns3::IdealWifiManager::DoInitialize(), ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::RegularWifiMac::GetHtCapabilities(), ns3::MinstrelHtWifiManager::GetHtDeviceMcsList(), ns3::RegularWifiMac::GetVhtCapabilities(), ns3::MinstrelHtWifiManager::GetVhtDeviceMcsList(), ns3::StaWifiMac::Receive(), and ns3::ApWifiMac::Receive().
|
pure virtual |
The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet.
It is important to note that the DeviceRateSet is a superset (not necessarily proper) of the OperationalRateSet (which is logically, if not actually, a property of the associated WifiRemoteStationManager), which itself is a superset (again, not necessarily proper) of the BSSBasicRateSet.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::AddAllSupportedModes(), ns3::MinstrelHtWifiManager::DoGetRtsTxVector(), ns3::IdealWifiManager::DoInitialize(), ns3::MeshWifiInterfaceMac::ForwardDown(), ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::MeshWifiInterfaceMac::GetSupportedRates(), ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), ns3::StaWifiMac::Receive(), ns3::ApWifiMac::Receive(), ns3::MeshWifiInterfaceMac::Receive(), NodeStatistics::SetupPhy(), and ns3::MinstrelWifiManager::SetupPhy().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::GetNumberOfTransmitAntennas().
|
static |
Return a WifiMode for OFDM at 12Mbps.
Definition at line 951 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 12Mbps with 10MHz channel spacing.
Definition at line 1074 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 12Mbps with 5MHz channel spacing.
Definition at line 1197 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 13.5Mbps with 5MHz channel spacing.
Definition at line 1209 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 18Mbps.
Definition at line 963 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 18Mbps with 10MHz channel spacing.
Definition at line 1086 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 1.5Mbps with 5MHz channel spacing.
Definition at line 1125 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().
|
static |
Return a WifiMode for OFDM at 24Mbps.
Definition at line 975 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 24Mbps with 10MHz channel spacing.
Definition at line 1098 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 27Mbps with 10MHz channel spacing.
Definition at line 1110 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 2.25Mbps with 5MHz channel spacing.
Definition at line 1137 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 36Mbps.
Definition at line 987 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 3Mbps with 10MHz channel spacing.
Definition at line 1026 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().
|
static |
Return a WifiMode for OFDM at 3Mbps with 5MHz channel spacing.
Definition at line 1149 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 48Mbps.
Definition at line 999 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 4.5Mbps with 10MHz channel spacing.
Definition at line 1038 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 4.5Mbps with 5MHz channel spacing.
Definition at line 1161 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 54Mbps.
Definition at line 1011 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 6Mbps.
Definition at line 927 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().
|
static |
Return a WifiMode for OFDM at 6Mbps with 10MHz channel spacing.
Definition at line 1050 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 6Mbps with 5MHz channel spacing.
Definition at line 1173 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 9Mbps.
Definition at line 939 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211a(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 9Mbps with 10MHz channel spacing.
Definition at line 1062 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for OFDM at 9Mbps with 5MHz channel spacing.
Definition at line 1185 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.
Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
Time ns3::WifiPhy::GetPayloadDuration | ( | uint32_t | size, |
WifiTxVector | txVector, | ||
WifiPreamble | preamble, | ||
double | frequency | ||
) |
size | the number of bytes in the packet to send |
txVector | the TXVECTOR used for the transmission of this packet |
preamble | the type of preamble to use for this packet |
frequency | the channel center frequency (MHz) |
Definition at line 398 of file wifi-phy.cc.
References ns3::NORMAL_MPDU.
Referenced by CalculateTxDuration(), and TxDurationTest::CheckPayloadDuration().
Time ns3::WifiPhy::GetPayloadDuration | ( | uint32_t | size, |
WifiTxVector | txVector, | ||
WifiPreamble | preamble, | ||
double | frequency, | ||
enum mpduType | mpdutype, | ||
uint8_t | incFlag | ||
) |
size | the number of bytes in the packet to send |
txVector | the TXVECTOR used for the transmission of this packet |
preamble | the type of preamble to use for this packet |
frequency | the channel center frequency (MHz) |
mpdutype | the type of the MPDU as defined in WifiPhy::mpduType. |
incFlag | this flag is used to indicate that the static variables need to be update or not. This function is called a couple of times for the same packet so static variables should not be increased each time |
Definition at line 404 of file wifi-phy.cc.
References ns3::WifiTxVector::GetChannelWidth(), ns3::WifiMode::GetDataRate(), ns3::WifiMode::GetMcsValue(), ns3::WifiTxVector::GetMode(), ns3::WifiMode::GetModulationClass(), ns3::Time::GetNanoSeconds(), ns3::WifiTxVector::GetNss(), ns3::WifiMode::GetUniqueName(), ns3::WifiTxVector::IsShortGuardInterval(), ns3::WifiTxVector::IsStbc(), ns3::LAST_MPDU_IN_AGGREGATE, m_totalAmpduNumSymbols, m_totalAmpduSize, ns3::MicroSeconds(), ns3::MPDU_IN_AGGREGATE, ns3::NanoSeconds(), ns3::NORMAL_MPDU, NS_ASSERT, NS_FATAL_ERROR, NS_LOG_FUNCTION, NS_LOG_LOGIC, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HR_DSSS, ns3::WIFI_MOD_CLASS_HT, ns3::WIFI_MOD_CLASS_OFDM, ns3::WIFI_MOD_CLASS_VHT, and ns3::WIFI_PREAMBLE_NONE.
|
static |
txVector | the transmission parameters used for this packet |
preamble | the type of preamble |
Definition at line 282 of file wifi-phy.cc.
References ns3::WifiTxVector::GetChannelWidth(), ns3::WifiMode::GetDataRate(), ns3::WifiTxVector::GetMode(), ns3::WifiMode::GetModulationClass(), ns3::MicroSeconds(), NS_FATAL_ERROR, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HR_DSSS, ns3::WIFI_MOD_CLASS_HT, ns3::WIFI_MOD_CLASS_OFDM, ns3::WIFI_MOD_CLASS_VHT, ns3::WIFI_PREAMBLE_HT_GF, ns3::WIFI_PREAMBLE_HT_MF, ns3::WIFI_PREAMBLE_NONE, and ns3::WIFI_PREAMBLE_SHORT.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer(), ns3::InterferenceHelper::CalculatePlcpPayloadPer(), and CalculatePlcpPreambleAndHeaderDuration().
|
static |
payloadMode | the WifiMode use for the transmission of the payload |
preamble | the type of preamble |
txVector | the transmission parameters used for this packet |
Definition at line 237 of file wifi-phy.cc.
References ns3::WifiTxVector::GetChannelWidth(), GetDsssRate1Mbps(), GetDsssRate2Mbps(), GetErpOfdmRate6Mbps(), ns3::WifiMode::GetModulationClass(), GetOfdmRate1_5MbpsBW5MHz(), GetOfdmRate3MbpsBW10MHz(), GetOfdmRate6Mbps(), NS_FATAL_ERROR, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HR_DSSS, ns3::WIFI_MOD_CLASS_HT, ns3::WIFI_MOD_CLASS_OFDM, ns3::WIFI_MOD_CLASS_VHT, and ns3::WIFI_PREAMBLE_LONG.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer().
|
static |
preamble | the type of preamble |
Definition at line 180 of file wifi-phy.cc.
References ns3::MicroSeconds(), ns3::WIFI_PREAMBLE_HT_GF, and ns3::WIFI_PREAMBLE_HT_MF.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer(), ns3::InterferenceHelper::CalculatePlcpPayloadPer(), and CalculatePlcpPreambleAndHeaderDuration().
|
static |
preamble | the type of preamble |
txVector | the transmission parameters used for this packet |
Definition at line 134 of file wifi-phy.cc.
References ns3::WifiTxVector::GetNess(), ns3::WifiTxVector::GetNss(), ns3::MicroSeconds(), ns3::WIFI_PREAMBLE_HT_GF, ns3::WIFI_PREAMBLE_HT_MF, and ns3::WIFI_PREAMBLE_VHT.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer(), ns3::InterferenceHelper::CalculatePlcpPayloadPer(), and CalculatePlcpPreambleAndHeaderDuration().
|
static |
txVector | the transmission parameters used for this packet |
preamble | the type of preamble |
Definition at line 346 of file wifi-phy.cc.
References ns3::WifiTxVector::GetChannelWidth(), ns3::WifiMode::GetDataRate(), ns3::WifiTxVector::GetMode(), ns3::WifiMode::GetModulationClass(), ns3::MicroSeconds(), NS_FATAL_ERROR, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HR_DSSS, ns3::WIFI_MOD_CLASS_HT, ns3::WIFI_MOD_CLASS_OFDM, ns3::WIFI_MOD_CLASS_VHT, ns3::WIFI_PREAMBLE_NONE, and ns3::WIFI_PREAMBLE_SHORT.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer(), ns3::InterferenceHelper::CalculatePlcpPayloadPer(), and CalculatePlcpPreambleAndHeaderDuration().
|
static |
preamble | the type of preamble |
Definition at line 195 of file wifi-phy.cc.
References ns3::MicroSeconds(), and ns3::WIFI_PREAMBLE_VHT.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer(), ns3::InterferenceHelper::CalculatePlcpPayloadPer(), and CalculatePlcpPreambleAndHeaderDuration().
|
static |
preamble | the type of preamble |
Definition at line 209 of file wifi-phy.cc.
References ns3::MicroSeconds(), and ns3::WIFI_PREAMBLE_VHT.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer(), ns3::InterferenceHelper::CalculatePlcpPayloadPer(), and CalculatePlcpPreambleAndHeaderDuration().
|
static |
preamble | the type of preamble |
Definition at line 223 of file wifi-phy.cc.
References ns3::MicroSeconds(), and ns3::WIFI_PREAMBLE_VHT.
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer(), ns3::InterferenceHelper::CalculatePlcpPayloadPer(), and CalculatePlcpPreambleAndHeaderDuration().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::StaWifiMac::GetCapabilities(), and ns3::ApWifiMac::GetShortPreambleEnabled().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MinstrelHtWifiManager::CalculateFirstMpduTxDuration(), ns3::MinstrelHtWifiManager::CalculateMpduTxDuration(), ns3::WifiRemoteStationManager::DoGetAckTxStbc(), ns3::WifiRemoteStationManager::DoGetBlockAckTxStbc(), and ns3::WifiRemoteStationManager::DoGetCtsTxStbc().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::RegularWifiMac::GetVhtCapabilities().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::IdealWifiManager::DoGetDataTxVector(), ns3::IdealWifiManager::DoInitialize(), ns3::RegularWifiMac::GetHtCapabilities(), and ns3::RegularWifiMac::GetVhtCapabilities().
|
pure virtual |
Return the maximum available transmission power level (dBm).
Implemented in ns3::YansWifiPhy.
Referenced by ns3::ParfWifiManager::SetupPhy(), and ns3::AparfWifiManager::SetupPhy().
|
pure virtual |
Return the minimum available transmission power level (dBm).
Implemented in ns3::YansWifiPhy.
Referenced by ns3::ParfWifiManager::SetupPhy(), and ns3::AparfWifiManager::SetupPhy().
|
static |
Definition at line 55 of file wifi-phy.cc.
References m_phyMonitorSniffRxTrace, m_phyMonitorSniffTxTrace, m_phyRxBeginTrace, m_phyRxDropTrace, m_phyRxEndTrace, m_phyTxBeginTrace, m_phyTxDropTrace, m_phyTxEndTrace, ns3::MakeTraceSourceAccessor(), and ns3::TypeId::SetParent().
|
static |
Return MCS 0 from VHT MCS values.
Definition at line 1483 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), and GetVhtPlcpHeaderMode().
|
static |
Return MCS 1 from VHT MCS values.
Definition at line 1491 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 2 from VHT MCS values.
Definition at line 1499 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 3 from VHT MCS values.
Definition at line 1507 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 4 from VHT MCS values.
Definition at line 1515 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 5 from VHT MCS values.
Definition at line 1523 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 6 from VHT MCS values.
Definition at line 1531 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 7 from VHT MCS values.
Definition at line 1539 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 8 from VHT MCS values.
Definition at line 1547 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
|
static |
Return MCS 9 from VHT MCS values.
Definition at line 1555 of file wifi-phy.cc.
References ns3::WifiModeFactory::CreateWifiMcs(), and ns3::WIFI_MOD_CLASS_VHT.
Referenced by ns3::YansWifiPhy::Configure80211ac(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::GetMembershipSelectorModes().
payloadMode | the WifiMode use for the transmission of the payload |
Definition at line 128 of file wifi-phy.cc.
References GetVhtMcs0().
Referenced by ns3::InterferenceHelper::CalculatePlcpHeaderPer().
|
pure virtual |
Check if the given WifiMode is supported by the PHY.
mode | the wifi mode to check |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::FastAckTimeout(), and ns3::MacLow::SuperFastAckTimeout().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::StartTransmission().
|
static |
The standard disallows certain combinations of WifiMode, number of spatial streams, and channel widths.
This method can be used to check whether this WifiTxVector contains an invalid combination.
txVector | the WifiTxVector to inspect |
Definition at line 1563 of file wifi-phy.cc.
References ns3::WifiTxVector::GetChannelWidth(), ns3::WifiTxVector::GetMode(), ns3::WifiTxVector::GetNss(), and ns3::WifiMode::GetUniqueName().
Referenced by ns3::IdealWifiManager::DoGetDataTxVector(), and ns3::MinstrelHtWifiManager::IsValidMcs().
void ns3::WifiPhy::NotifyMonitorSniffRx | ( | Ptr< const Packet > | packet, |
uint16_t | channelFreqMhz, | ||
uint16_t | channelNumber, | ||
uint32_t | rate, | ||
WifiPreamble | preamble, | ||
WifiTxVector | txVector, | ||
struct mpduInfo | aMpdu, | ||
struct signalNoiseDbm | signalNoise | ||
) |
Public method used to fire a MonitorSniffer trace for a wifi packet being received.
Implemented for encapsulation purposes.
packet | the packet being received |
channelFreqMhz | the frequency in MHz at which the packet is received. Note that in real devices this is normally the frequency to which the receiver is tuned, and this can be different than the frequency at which the packet was originally transmitted. This is because it is possible to have the receiver tuned on a given channel and still to be able to receive packets on a nearby channel. |
channelNumber | the channel on which the packet is received |
rate | the PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header) |
preamble | the preamble of the packet |
txVector | the TXVECTOR that holds rx parameters |
aMpdu | the type of the packet (0 is not A-MPDU, 1 is a MPDU that is part of an A-MPDU and 2 is the last MPDU in an A-MPDU) and the A-MPDU reference number (must be a different value for each A-MPDU but the same for each subframe within one A-MPDU) |
signalNoise | signal power and noise power in dBm |
Definition at line 759 of file wifi-phy.cc.
References m_phyMonitorSniffRxTrace.
Referenced by ns3::YansWifiPhy::EndReceive().
void ns3::WifiPhy::NotifyMonitorSniffTx | ( | Ptr< const Packet > | packet, |
uint16_t | channelFreqMhz, | ||
uint16_t | channelNumber, | ||
uint32_t | rate, | ||
WifiPreamble | preamble, | ||
WifiTxVector | txVector, | ||
struct mpduInfo | aMpdu | ||
) |
Public method used to fire a MonitorSniffer trace for a wifi packet being transmitted.
Implemented for encapsulation purposes.
packet | the packet being transmitted |
channelFreqMhz | the frequency in MHz at which the packet is transmitted. |
channelNumber | the channel on which the packet is transmitted |
rate | the PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header) |
preamble | the preamble of the packet |
txVector | the TXVECTOR that holds tx parameters |
aMpdu | the type of the packet (0 is not A-MPDU, 1 is a MPDU that is part of an A-MPDU and 2 is the last MPDU in an A-MPDU) and the A-MPDU reference number (must be a different value for each A-MPDU but the same for each subframe within one A-MPDU) |
Definition at line 765 of file wifi-phy.cc.
References m_phyMonitorSniffTxTrace.
Referenced by ns3::YansWifiPhy::SendPacket().
Public method used to fire a PhyRxBegin trace.
Implemented for encapsulation purposes.
packet | the packet being received |
Definition at line 741 of file wifi-phy.cc.
References m_phyRxBeginTrace.
Referenced by ns3::YansWifiPhy::StartReceivePreambleAndHeader().
Public method used to fire a PhyRxDrop trace.
Implemented for encapsulation purposes.
packet | the packet that was not successfully received |
Definition at line 753 of file wifi-phy.cc.
References m_phyRxDropTrace.
Referenced by ns3::YansWifiPhy::EndReceive(), ns3::YansWifiPhy::StartReceivePacket(), and ns3::YansWifiPhy::StartReceivePreambleAndHeader().
Public method used to fire a PhyRxEnd trace.
Implemented for encapsulation purposes.
packet | the packet received |
Definition at line 747 of file wifi-phy.cc.
References m_phyRxEndTrace.
Referenced by ns3::YansWifiPhy::EndReceive().
Public method used to fire a PhyTxBegin trace.
Implemented for encapsulation purposes.
packet | the packet being transmitted |
Definition at line 723 of file wifi-phy.cc.
References m_phyTxBeginTrace.
Referenced by ns3::YansWifiPhy::SendPacket().
Public method used to fire a PhyTxDrop trace.
Implemented for encapsulation purposes.
packet | the packet that was failed to transmitted |
Definition at line 735 of file wifi-phy.cc.
References m_phyTxDropTrace.
Referenced by ns3::YansWifiPhy::SendPacket().
Public method used to fire a PhyTxEnd trace.
Implemented for encapsulation purposes.
packet | the packet that was transmitted |
Definition at line 729 of file wifi-phy.cc.
References m_phyTxEndTrace.
|
pure virtual |
listener | the new listener |
Add the input listener to the list of objects to be notified of PHY-level events.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::DcfManager::SetupPhyListener(), and ns3::MacLow::SetupPhyMacLowListener().
|
pure virtual |
Resume from sleep mode.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRadioEnergyModelHelper::DoInstall().
|
pure virtual |
packet | the packet to send |
txVector | the TXVECTOR that has tx parameters such as mode, the transmission mode to use to send this packet, and txPowerLevel, a power level to use to send this packet. The real transmission power is calculated as txPowerMin + txPowerLevel * (txPowerMax - txPowerMin) / nTxLevels |
preamble | the type of preamble to use to send this packet. |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::ForwardDown(), and ns3::MacLow::SendMpdu().
|
pure virtual |
packet | the packet to send |
txVector | the TXVECTOR that has tx parameters such as mode, the transmission mode to use to send this packet, and txPowerLevel, a power level to use to send this packet. The real transmission power is calculated as txPowerMin + txPowerLevel * (txPowerMax - txPowerMin) / nTxLevels |
preamble | the type of preamble to use to send this packet. |
mpdutype | the type of the MPDU as defined in WifiPhy::mpduType. |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Set channel number.
Channel center frequency = Channel starting frequency + 5 MHz * (nch - 1)
where Starting channel frequency is standard-dependent, see SetStandard() as defined in (Section 18.3.8.4.2 "Channel numbering"; IEEE Std 802.11-2012).
id | the channel number |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::DefaultChannelScheduler::AssignDefaultCchAccess(), ns3::WaveHelper::Install(), InterferenceHelperSequenceTest::SwitchCh(), and ns3::DefaultChannelScheduler::SwitchToNextChannel().
|
pure virtual |
channelwidth | channel width |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
freq | the operating frequency on this node. |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
greenfield | Enable or disable GreenField |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
guardInterval | Enable or disable short guard interval |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
ldpc | Enable or disable LDPC |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
rx | the number of receivers on this node. |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
tx | the number of transmitters on this node. |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
callback | the callback to invoke upon erroneous packet reception. |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::ResetPhy(), and ns3::MacLow::SetPhy().
|
pure virtual |
callback | the callback to invoke upon successful packet reception. |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::ResetPhy(), and ns3::MacLow::SetPhy().
|
pure virtual |
preamble | sets whether short PLCP preamble is supported or not |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Put in sleep mode.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRadioEnergyModelHelper::DoInstall().
|
pure virtual |
stbc | Enable or disable STBC is supported |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
listener | the listener to be unregistered |
Remove the input listener from the list of objects to be notified of PHY-level events.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::DcfManager::RemovePhyListener(), and ns3::MacLow::RemovePhyMacLowListener().
|
private |
A trace source that emulates a wifi device in monitor mode sniffing a packet being received.
As a reference with the real world, firing this trace corresponds in the madwifi driver to calling the function ieee80211_input_monitor()
Definition at line 1363 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyMonitorSniffRx().
|
private |
A trace source that emulates a wifi device in monitor mode sniffing a packet being transmitted.
As a reference with the real world, firing this trace corresponds in the madwifi driver to calling the function ieee80211_input_monitor()
Definition at line 1378 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyMonitorSniffTx().
|
private |
The trace source fired when a packet begins the reception process from the medium.
Definition at line 1333 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyRxBegin().
|
private |
The trace source fired when the phy layer drops a packet it has received.
Definition at line 1348 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyRxDrop().
|
private |
The trace source fired when a packet ends the reception process from the medium.
Definition at line 1341 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyRxEnd().
|
private |
The trace source fired when a packet begins the transmission process on the medium.
Definition at line 1309 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyTxBegin().
|
private |
The trace source fired when the phy layer drops a packet as it tries to transmit it.
Definition at line 1325 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyTxDrop().
|
private |
The trace source fired when a packet ends the transmission process on the medium.
Definition at line 1317 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyTxEnd().
|
private |
Number of symbols previously transmitted for the MPDUs in an A-MPDU, used for the computation of the number of symbols needed for the last MPDU in the A-MPDU.
Definition at line 1380 of file wifi-phy.h.
Referenced by GetPayloadDuration(), and WifiPhy().
|
private |
Total size of the previously transmitted MPDUs in an A-MPDU, used for the computation of the number of symbols needed for the last MPDU in the A-MPDU.
Definition at line 1381 of file wifi-phy.h.
Referenced by GetPayloadDuration(), and WifiPhy().