A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
LR-WPAN models

This section documents the API of the IEEE 802.15.4-related models. More...

+ Collaboration diagram for LR-WPAN models:

Modules

 LrWpan module tests
 
 LrWpanConstants
 Contains common parameters about LR-WPAN that can be reused in multiple files.
 

Classes

class  ns3::BeaconPayloadHeader
 Implements the header for the MAC payload beacon frame according to the IEEE 802.15.4-2011 Std. More...
 
class  ns3::CapabilityField
 Represent the Capability Information Field. More...
 
class  ns3::CommandPayloadHeader
 Implements the header for the MAC payload command frame according to the IEEE 802.15.4-2011 Std. More...
 
class  ns3::GtsFields
 Represent the GTS information fields. More...
 
class  ns3::LrWpanCsmaCa
 This class is a helper for the LrWpanMac to manage the Csma/CA state machine according to IEEE 802.15.4-2006, section 7.5.1.4. More...
 
struct  ns3::LrWpanEdPower
 Helper structure to manage the power measurement during ED. More...
 
class  ns3::LrWpanErrorModel
 Model the error rate for IEEE 802.15.4 2.4 GHz AWGN channel for OQPSK the model description can be found in IEEE Std 802.15.4-2006, section E.4.1.7. More...
 
class  ns3::LrWpanHelper
 helps to manage and create IEEE 802.15.4 NetDevice objects More...
 
class  ns3::LrWpanInterferenceHelper
 This class provides helper functions for LrWpan interference handling. More...
 
class  ns3::LrWpanLqiTag
 Represent the LQI (Link Quality Estination). More...
 
class  ns3::LrWpanMac
 Class that implements the LR-WPAN MAC state machine. More...
 
class  ns3::LrWpanMacHeader
 Represent the Mac Header with the Frame Control and Sequence Number fields. More...
 
struct  ns3::LrWpanMacPibAttributes
 IEEE802.15.4-2011 PHY PIB Attributes Table 52 in section 6.4.2. More...
 
class  ns3::LrWpanMacTrailer
 Represent the Mac Trailer with the Frame Check Sequence field. More...
 
class  ns3::LrWpanNetDevice
 Network layer to device interface. More...
 
class  ns3::LrWpanPhy
 Make LrWpanPhy a SpectrumPhy so we can enable the eventual modeling of device interference. More...
 
struct  ns3::LrWpanPhyDataAndSymbolRates
 This data structure provides the Bit rate and Symbol rate for a given channel See IEEE802.15.4-2006 Table 1 and 2 in section 6.1.1 and 6.1.2. More...
 
struct  ns3::LrWpanPhyPibAttributes
 IEEE802.15.4-2006 PHY PIB Attributes Table 23 in section 6.4.2. More...
 
struct  ns3::LrWpanPhyPpduHeaderSymbolNumber
 This data structure provides number of symbols for the PPDU headers: SHR and PHR See IEEE802.15.4-2006 Figure 16, Table 19 and 20 in section 6.3. More...
 
class  ns3::LrWpanSpectrumModelInitializer
 Helper class used to automatically initialize the LrWpan Spectrum Model objects. More...
 
struct  ns3::LrWpanSpectrumSignalParameters
 Signal parameters for LrWpan. More...
 
class  ns3::LrWpanSpectrumValueHelper
 This class defines all functions to create spectrum model for LrWpan. More...
 
struct  ns3::McpsDataConfirmParams
 MCPS-DATA.confirm params. More...
 
struct  ns3::McpsDataIndicationParams
 MCPS-DATA.indication params. More...
 
struct  ns3::McpsDataRequestParams
 MCPS-DATA.request params. More...
 
struct  ns3::MlmeAssociateConfirmParams
 MLME-ASSOCIATE.confirm params. More...
 
struct  ns3::MlmeAssociateIndicationParams
 MLME-ASSOCIATE.indication params. More...
 
struct  ns3::MlmeAssociateRequestParams
 MLME-ASSOCIATE.request params. More...
 
struct  ns3::MlmeAssociateResponseParams
 MLME-ASSOCIATE.response params. More...
 
struct  ns3::MlmeBeaconNotifyIndicationParams
 MLME-BEACON-NOTIFY.indication params. More...
 
struct  ns3::MlmeCommStatusIndicationParams
 MLME-COMM-STATUS.indication params. More...
 
struct  ns3::MlmeOrphanIndicationParams
 MLME-ORPHAN.indication params. More...
 
struct  ns3::MlmeOrphanResponseParams
 MLME-ORPHAN.response params. More...
 
struct  ns3::MlmePollConfirmParams
 MLME-START.confirm params. More...
 
struct  ns3::MlmePollRequestParams
 MLME-POLL.request params. More...
 
struct  ns3::MlmeScanConfirmParams
 MLME-SCAN.confirm params. More...
 
struct  ns3::MlmeScanRequestParams
 MLME-SCAN.request params. More...
 
struct  ns3::MlmeSetConfirmParams
 MLME-SET.confirm params. More...
 
struct  ns3::MlmeStartConfirmParams
 MLME-START.confirm params. More...
 
struct  ns3::MlmeStartRequestParams
 MLME-START.request params. More...
 
struct  ns3::MlmeSyncLossIndicationParams
 MLME-SYNC-LOSS.indication params. More...
 
struct  ns3::MlmeSyncRequestParams
 MLME-SYNC.request params. More...
 
struct  ns3::PanDescriptor
 PAN Descriptor, Table 17 IEEE 802.15.4-2011. More...
 
class  ns3::PendingAddrFields
 Represent the Pending Address Specification field. More...
 
class  ns3::SuperframeField
 Represent the Superframe Specification information field. More...
 

Typedefs

typedef void(* ns3::TracedValueCallback::LrWpanMacState) (LrWpanMacState oldValue, LrWpanMacState newValue)
 TracedValue callback signature for LrWpanMacState.
 
typedef Callback< void, LrWpanMacStatens3::LrWpanMacStateCallback
 This method informs the MAC whether the channel is idle or busy.
 
typedef Callback< void, uint32_tns3::LrWpanMacTransCostCallback
 This method informs the transaction cost in a slotted CSMA-CA data transmission.
 
typedef void(* ns3::TracedValueCallback::LrWpanPhyEnumeration) (LrWpanPhyEnumeration oldValue, LrWpanPhyEnumeration newValue)
 TracedValue callback signature for LrWpanPhyEnumeration.
 
typedef Callback< void, McpsDataConfirmParamsns3::McpsDataConfirmCallback
 This callback is called after a McpsDataRequest has been called from the higher layer.
 
typedef Callback< void, McpsDataIndicationParams, Ptr< Packet > > ns3::McpsDataIndicationCallback
 This callback is called after a Mcps has successfully received a frame and wants to deliver it to the higher layer.
 
typedef Callback< void, MlmeAssociateConfirmParamsns3::MlmeAssociateConfirmCallback
 This callback is called after a MlmeAssociateRequest has been called from the higher layer.
 
typedef Callback< void, MlmeAssociateIndicationParamsns3::MlmeAssociateIndicationCallback
 This callback is called after a Mlme has successfully received a command frame and wants to deliver it to the higher layer.
 
typedef Callback< void, MlmeBeaconNotifyIndicationParamsns3::MlmeBeaconNotifyIndicationCallback
 This callback is called after a Mlme has successfully received a beacon frame and wants to deliver it to the higher layer.
 
typedef Callback< void, MlmeCommStatusIndicationParamsns3::MlmeCommStatusIndicationCallback
 This callback is called by the MLME and issued to its next higher layer following a transmission instigated through a response primitive.
 
typedef Callback< void, LrWpanMlmeGetConfirmStatus, LrWpanMacPibAttributeIdentifier, Ptr< LrWpanMacPibAttributes > > ns3::MlmeGetConfirmCallback
 This callback is called after a MlmeGetRequest has been called from the higher layer to get a PIB.
 
typedef Callback< void, MlmeOrphanIndicationParamsns3::MlmeOrphanIndicationCallback
 This callback is called by the MLME and issued to its next higher layer following the reception of a orphan notification.
 
typedef Callback< void, MlmePollConfirmParamsns3::MlmePollConfirmCallback
 This callback is called after a Mlme-Poll.Request has been called from the higher layer.
 
typedef Callback< void, MlmeScanConfirmParamsns3::MlmeScanConfirmCallback
 This callback is called after a MlmeScanRequest has been called from the higher layer.
 
typedef Callback< void, MlmeSetConfirmParamsns3::MlmeSetConfirmCallback
 This callback is called after a MlmeSetRequest has been called from the higher layer to set a PIB.
 
typedef Callback< void, MlmeStartConfirmParamsns3::MlmeStartConfirmCallback
 This callback is called after a MlmeStartRequest has been called from the higher layer.
 
typedef Callback< void, MlmeSyncLossIndicationParamsns3::MlmeSyncLossIndicationCallback
 This callback is called to indicate the loss of synchronization with a coordinator.
 
typedef Callback< void, LrWpanPhyEnumerationns3::PdDataConfirmCallback
 This method implements the PD SAP: PdDataConfirm.
 
typedef Callback< void, uint32_t, Ptr< Packet >, uint8_t > ns3::PdDataIndicationCallback
 This method implements the PD SAP: PdDataIndication.
 
typedef Callback< void, LrWpanPhyEnumerationns3::PlmeCcaConfirmCallback
 This method implements the PD SAP: PlmeCcaConfirm.
 
typedef Callback< void, LrWpanPhyEnumeration, uint8_t > ns3::PlmeEdConfirmCallback
 This method implements the PD SAP: PlmeEdConfirm.
 
typedef Callback< void, LrWpanPhyEnumeration, LrWpanPibAttributeIdentifier, Ptr< LrWpanPhyPibAttributes > > ns3::PlmeGetAttributeConfirmCallback
 This method implements the PD SAP: PlmeGetAttributeConfirm.
 
typedef Callback< void, LrWpanPhyEnumeration, LrWpanPibAttributeIdentifierns3::PlmeSetAttributeConfirmCallback
 This method implements the PD SAP: PlmeSetAttributeConfirm.
 
typedef Callback< void, LrWpanPhyEnumerationns3::PlmeSetTRXStateConfirmCallback
 This method implements the PD SAP: PlmeSetTRXStateConfirm.
 
typedef void(* ns3::TracedValueCallback::SuperframeStatus) (SuperframeStatus oldValue, SuperframeStatus newValue)
 TracedValue callback signature for SuperframeStatus.
 

Enumerations

enum  ns3::DeviceType { ns3::RFD = 0 , ns3::FFD = 1 }
 The device Capabilities. More...
 
enum  ns3::LrWpanAddressMode { ns3::NO_PANID_ADDR = 0 , ns3::ADDR_MODE_RESERVED = 1 , ns3::SHORT_ADDR = 2 , ns3::EXT_ADDR = 3 }
 table 80 of 802.15.4 More...
 
enum  ns3::LrWpanAssociationStatus {
  ns3::ASSOCIATED = 0 , ns3::PAN_AT_CAPACITY = 1 , ns3::PAN_ACCESS_DENIED = 2 , ns3::ASSOCIATED_WITHOUT_ADDRESS = 0xfe ,
  ns3::DISASSOCIATED = 0xff
}
 table 83 of 802.15.4 More...
 
enum  ns3::LrWpanMacPibAttributeIdentifier {
  ns3::macBeaconPayload = 0 , ns3::macBeaconPayloadLength = 1 , ns3::macShortAddress = 2 , ns3::macExtendedAddress = 3 ,
  ns3::macPanId = 4 , ns3::unsupported = 255
}
 IEEE802.15.4-2011 MAC PIB Attribute Identifiers Table 52 in section 6.4.2. More...
 
enum  ns3::LrWpanMacState {
  ns3::MAC_IDLE , ns3::MAC_CSMA , ns3::MAC_SENDING , ns3::MAC_ACK_PENDING ,
  ns3::CHANNEL_ACCESS_FAILURE , ns3::CHANNEL_IDLE , ns3::SET_PHY_TX_ON , ns3::MAC_GTS ,
  ns3::MAC_INACTIVE , ns3::MAC_CSMA_DEFERRED
}
 MAC states. More...
 
enum  ns3::LrWpanMcpsDataConfirmStatus {
  ns3::IEEE_802_15_4_SUCCESS = 0 , ns3::IEEE_802_15_4_TRANSACTION_OVERFLOW = 1 , ns3::IEEE_802_15_4_TRANSACTION_EXPIRED = 2 , ns3::IEEE_802_15_4_CHANNEL_ACCESS_FAILURE = 3 ,
  ns3::IEEE_802_15_4_INVALID_ADDRESS = 4 , ns3::IEEE_802_15_4_INVALID_GTS = 5 , ns3::IEEE_802_15_4_NO_ACK = 6 , ns3::IEEE_802_15_4_COUNTER_ERROR = 7 ,
  ns3::IEEE_802_15_4_FRAME_TOO_LONG = 8 , ns3::IEEE_802_15_4_UNAVAILABLE_KEY = 9 , ns3::IEEE_802_15_4_UNSUPPORTED_SECURITY = 10 , ns3::IEEE_802_15_4_INVALID_PARAMETER = 11
}
 Table 42 of 802.15.4-2006. More...
 
enum  ns3::LrWpanMlmeAssociateConfirmStatus {
  ns3::MLMEASSOC_SUCCESS = 0 , ns3::MLMEASSOC_FULL_CAPACITY = 1 , ns3::MLMEASSOC_ACCESS_DENIED = 2 , ns3::MLMEASSOC_CHANNEL_ACCESS_FAILURE = 3 ,
  ns3::MLMEASSOC_NO_ACK = 4 , ns3::MLMEASSOC_NO_DATA = 5 , ns3::MLMEASSOC_COUNTER_ERROR = 6 , ns3::MLMEASSOC_FRAME_TOO_LONG = 7 ,
  ns3::MLMEASSOC_UNSUPPORTED_LEGACY = 8 , ns3::MLMEASSOC_INVALID_PARAMETER = 9
}
 Table 12 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmeCommStatus {
  ns3::MLMECOMMSTATUS_SUCCESS = 0 , ns3::MLMECOMMSTATUS_TRANSACTION_OVERFLOW = 1 , ns3::MLMECOMMSTATUS_TRANSACTION_EXPIRED = 2 , ns3::MLMECOMMSTATUS_CHANNEL_ACCESS_FAILURE = 3 ,
  ns3::MLMECOMMSTATUS_NO_ACK = 4 , ns3::MLMECOMMSTATUS_COUNTER_ERROR = 5 , ns3::MLMECOMMSTATUS_FRAME_TOO_LONG = 6 , ns3::MLMECOMMSTATUS_INVALID_PARAMETER = 7
}
 Table 18 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmeGetConfirmStatus { ns3::MLMEGET_SUCCESS = 0 , ns3::MLMEGET_UNSUPPORTED_ATTRIBUTE = 1 }
 Table 20 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmePollConfirmStatus {
  ns3::MLMEPOLL_SUCCESS = 0 , ns3::MLMEPOLL_CHANNEL_ACCESS_FAILURE = 2 , ns3::MLMEPOLL_NO_ACK = 3 , ns3::MLMEPOLL_NO_DATA = 4 ,
  ns3::MLMEPOLL_COUNTER_ERROR = 5 , ns3::MLMEPOLL_FRAME_TOO_LONG = 6 , ns3::MLMEPOLL_UNAVAILABLE_KEY = 7 , ns3::MLMEPOLL_UNSUPPORTED_SECURITY = 8 ,
  ns3::MLMEPOLL_INVALID_PARAMETER = 9
}
 Table 39 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmeScanConfirmStatus {
  ns3::MLMESCAN_SUCCESS = 0 , ns3::MLMESCAN_LIMIT_REACHED = 1 , ns3::MLMESCAN_NO_BEACON = 2 , ns3::MLMESCAN_SCAN_IN_PROGRESS = 3 ,
  ns3::MLMESCAN_COUNTER_ERROR = 4 , ns3::MLMESCAN_FRAME_TOO_LONG = 5 , ns3::MLMESCAN_UNAVAILABLE_KEY = 6 , ns3::MLMESCAN_UNSUPPORTED_SECURITY = 7 ,
  ns3::MLMESCAN_INVALID_PARAMETER = 8
}
 Table 31 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmeScanType { ns3::MLMESCAN_ED = 0x00 , ns3::MLMESCAN_ACTIVE = 0x01 , ns3::MLMESCAN_PASSIVE = 0x02 , ns3::MLMESCAN_ORPHAN = 0x03 }
 Table 30 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmeSetConfirmStatus {
  ns3::MLMESET_SUCCESS = 0 , ns3::MLMESET_READ_ONLY = 1 , ns3::MLMESET_UNSUPPORTED_ATTRIBUTE = 2 , ns3::MLMESET_INVALID_INDEX = 3 ,
  ns3::MLMESET_INVALID_PARAMETER = 4
}
 Table 33 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanMlmeStartConfirmStatus {
  ns3::MLMESTART_SUCCESS = 0 , ns3::MLMESTART_NO_SHORT_ADDRESS = 1 , ns3::MLMESTART_SUPERFRAME_OVERLAP = 2 , ns3::MLMESTART_TRACKING_OFF = 3 ,
  ns3::MLMESTART_INVALID_PARAMETER = 4 , ns3::MLMESTART_COUNTER_ERROR = 5 , ns3::MLMESTART_FRAME_TOO_LONG = 6 , ns3::MLMESTART_UNAVAILABLE_KEY = 7 ,
  ns3::MLMESTART_UNSUPPORTED_SECURITY = 8 , ns3::MLMESTART_CHANNEL_ACCESS_FAILURE = 9
}
 Table 35 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanPhyEnumeration {
  ns3::IEEE_802_15_4_PHY_BUSY = 0x00 , ns3::IEEE_802_15_4_PHY_BUSY_RX = 0x01 , ns3::IEEE_802_15_4_PHY_BUSY_TX = 0x02 , ns3::IEEE_802_15_4_PHY_FORCE_TRX_OFF = 0x03 ,
  ns3::IEEE_802_15_4_PHY_IDLE = 0x04 , ns3::IEEE_802_15_4_PHY_INVALID_PARAMETER = 0x05 , ns3::IEEE_802_15_4_PHY_RX_ON = 0x06 , ns3::IEEE_802_15_4_PHY_SUCCESS = 0x07 ,
  ns3::IEEE_802_15_4_PHY_TRX_OFF = 0x08 , ns3::IEEE_802_15_4_PHY_TX_ON = 0x09 , ns3::IEEE_802_15_4_PHY_UNSUPPORTED_ATTRIBUTE = 0xa , ns3::IEEE_802_15_4_PHY_READ_ONLY = 0xb ,
  ns3::IEEE_802_15_4_PHY_UNSPECIFIED = 0xc
}
 IEEE802.15.4-2006 PHY Emumerations Table 18 in section 6.2.3. More...
 
enum  ns3::LrWpanPhyOption {
  ns3::IEEE_802_15_4_868MHZ_BPSK , ns3::IEEE_802_15_4_915MHZ_BPSK , ns3::IEEE_802_15_4_950MHZ_BPSK , ns3::IEEE_802_15_4_868MHZ_ASK ,
  ns3::IEEE_802_15_4_915MHZ_ASK , ns3::IEEE_802_15_4_780MHZ_OQPSK , ns3::IEEE_802_15_4_868MHZ_OQPSK , ns3::IEEE_802_15_4_915MHZ_OQPSK ,
  ns3::IEEE_802_15_4_2_4GHZ_OQPSK , ns3::IEEE_802_15_4_INVALID_PHY_OPTION
}
 This Phy option will be used to index various Tables in IEEE802.15.4-2011. More...
 
enum  ns3::LrWpanPibAttributeIdentifier {
  ns3::phyCurrentChannel = 0x00 , ns3::phyChannelsSupported = 0x01 , ns3::phyTransmitPower = 0x02 , ns3::phyCCAMode = 0x03 ,
  ns3::phyCurrentPage = 0x04 , ns3::phyMaxFrameDuration = 0x05 , ns3::phySHRDuration = 0x06 , ns3::phySymbolsPerOctet = 0x07
}
 IEEE802.15.4-2006 PHY PIB Attribute Identifiers Table 23 in section 6.4.2. More...
 
enum  ns3::LrWpanSyncLossReason { ns3::MLMESYNCLOSS_PAN_ID_CONFLICT = 0 , ns3::MLMESYNCLOSS_REALIGMENT = 1 , ns3::MLMESYNCLOSS_BEACON_LOST = 2 , ns3::MLMESYNCLOSS_SUPERFRAME_OVERLAP = 3 }
 Table 37 of IEEE 802.15.4-2011. More...
 
enum  ns3::LrWpanTxOption { ns3::TX_OPTION_NONE = 0 , ns3::TX_OPTION_ACK = 1 , ns3::TX_OPTION_GTS = 2 , ns3::TX_OPTION_INDIRECT = 4 }
 Tx options. More...
 
enum  ns3::PendingPrimitiveStatus {
  ns3::MLME_NONE = 0 , ns3::MLME_START_REQ = 1 , ns3::MLME_SCAN_REQ = 2 , ns3::MLME_ASSOC_REQ = 3 ,
  ns3::MLME_SYNC_REQ = 4
}
 Indicates a pending MAC primitive. More...
 
enum  ns3::SuperframeStatus { ns3::BEACON , ns3::CAP , ns3::CFP , ns3::INACTIVE }
 Superframe status. More...
 
enum  ns3::SuperframeType { ns3::OUTGOING = 0 , ns3::INCOMING = 1 }
 Superframe type. More...
 

Variables

class ns3::LrWpanSpectrumModelInitializer ns3::g_LrWpanSpectrumModelInitializerInstance
 Global object used to initialize the LrWpan Spectrum Model.
 

Detailed Description

This section documents the API of the IEEE 802.15.4-related models.

For a generic functional description, please refer to the ns-3 manual.

Typedef Documentation

◆ LrWpanMacState

typedef void(* ns3::TracedValueCallback::LrWpanMacState) (LrWpanMacState oldValue, LrWpanMacState newValue)

TracedValue callback signature for LrWpanMacState.

Parameters
[in]oldValueoriginal value of the traced variable
[in]newValuenew value of the traced variable

Definition at line 134 of file lr-wpan-mac.h.

◆ LrWpanMacStateCallback

This method informs the MAC whether the channel is idle or busy.

Definition at line 40 of file lr-wpan-csmaca.h.

◆ LrWpanMacTransCostCallback

This method informs the transaction cost in a slotted CSMA-CA data transmission.

i.e. Reports number of symbols (time) it would take slotted CSMA-CA to process the current transaction. 1 Transaction = 2 CCA + frame transmission (PPDU) + turnaroudtime or Ack time (optional) + IFS See IEEE 802.15.4-2011 (Sections 5.1.1.1 and 5.1.1.4)

Definition at line 49 of file lr-wpan-csmaca.h.

◆ LrWpanPhyEnumeration

typedef void(* ns3::TracedValueCallback::LrWpanPhyEnumeration) (LrWpanPhyEnumeration oldValue, LrWpanPhyEnumeration newValue)

TracedValue callback signature for LrWpanPhyEnumeration.

Parameters
[in]oldValueoriginal value of the traced variable
[in]newValuenew value of the traced variable

Definition at line 134 of file lr-wpan-phy.h.

◆ McpsDataConfirmCallback

This callback is called after a McpsDataRequest has been called from the higher layer.

It returns a status of the outcome of the transmission request

Definition at line 707 of file lr-wpan-mac.h.

◆ McpsDataIndicationCallback

This callback is called after a Mcps has successfully received a frame and wants to deliver it to the higher layer.

Todo:
for now, we do not deliver all of the parameters in section 802.15.4-2006 7.1.1.3.1 but just send up the packet.

Definition at line 718 of file lr-wpan-mac.h.

◆ MlmeAssociateConfirmCallback

This callback is called after a MlmeAssociateRequest has been called from the higher layer.

It returns a status of the outcome of the association request

Definition at line 775 of file lr-wpan-mac.h.

◆ MlmeAssociateIndicationCallback

This callback is called after a Mlme has successfully received a command frame and wants to deliver it to the higher layer.

Security related parameters and not handle. See 802.15.4-2011 6.2.2.2.

Definition at line 786 of file lr-wpan-mac.h.

◆ MlmeBeaconNotifyIndicationCallback

This callback is called after a Mlme has successfully received a beacon frame and wants to deliver it to the higher layer.

Todo:
for now, we do not deliver all of the parameters in section 802.15.4-2006 6.2.4.1 but just send up the packet.

Definition at line 738 of file lr-wpan-mac.h.

◆ MlmeCommStatusIndicationCallback

This callback is called by the MLME and issued to its next higher layer following a transmission instigated through a response primitive.

Security related parameters and not handle. See 802.15.4-2011 6.2.4.2

Definition at line 797 of file lr-wpan-mac.h.

◆ MlmeGetConfirmCallback

This callback is called after a MlmeGetRequest has been called from the higher layer to get a PIB.

It returns a status of the outcome of the write attempt.

Definition at line 830 of file lr-wpan-mac.h.

◆ MlmeOrphanIndicationCallback

This callback is called by the MLME and issued to its next higher layer following the reception of a orphan notification.

Security related parameters and not handle. See 802.15.4-2011 6.2.7.1

Definition at line 808 of file lr-wpan-mac.h.

◆ MlmePollConfirmCallback

This callback is called after a Mlme-Poll.Request has been called from the higher layer.

It returns a status of the outcome of the transmission request

Definition at line 758 of file lr-wpan-mac.h.

◆ MlmeScanConfirmCallback

This callback is called after a MlmeScanRequest has been called from the higher layer.

It returns a status of the outcome of the scan.

Definition at line 766 of file lr-wpan-mac.h.

◆ MlmeSetConfirmCallback

This callback is called after a MlmeSetRequest has been called from the higher layer to set a PIB.

It returns a status of the outcome of the write attempt.

Definition at line 817 of file lr-wpan-mac.h.

◆ MlmeStartConfirmCallback

This callback is called after a MlmeStartRequest has been called from the higher layer.

It returns a status of the outcome of the transmission request

Definition at line 727 of file lr-wpan-mac.h.

◆ MlmeSyncLossIndicationCallback

This callback is called to indicate the loss of synchronization with a coordinator.

Todo:
for now, we do not deliver all of the parameters in section See IEEE 802.15.4-2011 6.2.13.2.

Definition at line 749 of file lr-wpan-mac.h.

◆ PdDataConfirmCallback

This method implements the PD SAP: PdDataConfirm.

Parameters
statusthe status to be transmitted

Definition at line 191 of file lr-wpan-phy.h.

◆ PdDataIndicationCallback

This method implements the PD SAP: PdDataIndication.

Parameters
psduLengthnumber of bytes in the PSDU
pthe packet to be transmitted
lqiLink quality (LQI) value measured during reception of the PPDU

Definition at line 182 of file lr-wpan-phy.h.

◆ PlmeCcaConfirmCallback

This method implements the PD SAP: PlmeCcaConfirm.

Parameters
statusthe status of CCA

Definition at line 200 of file lr-wpan-phy.h.

◆ PlmeEdConfirmCallback

This method implements the PD SAP: PlmeEdConfirm.

Parameters
statusthe status of ED
energyLevelthe energy level of ED

Definition at line 210 of file lr-wpan-phy.h.

◆ PlmeGetAttributeConfirmCallback

This method implements the PD SAP: PlmeGetAttributeConfirm.

Parameters
statusthe status of PlmeGetAttributeRequest
idthe identifier of attribute
attributethe pointer to attribute struct

Definition at line 225 of file lr-wpan-phy.h.

◆ PlmeSetAttributeConfirmCallback

This method implements the PD SAP: PlmeSetAttributeConfirm.

Parameters
statusthe status of PlmeSetAttributeRequest
idthe identifier of attribute

Definition at line 245 of file lr-wpan-phy.h.

◆ PlmeSetTRXStateConfirmCallback

This method implements the PD SAP: PlmeSetTRXStateConfirm.

Parameters
statusthe status of PlmeSetTRXStateRequest

Definition at line 234 of file lr-wpan-phy.h.

◆ SuperframeStatus

typedef void(* ns3::TracedValueCallback::SuperframeStatus) (SuperframeStatus oldValue, SuperframeStatus newValue)

TracedValue callback signature for SuperframeStatus.

Parameters
[in]oldValueoriginal value of the traced variable
[in]newValuenew value of the traced variable

Definition at line 143 of file lr-wpan-mac.h.

Enumeration Type Documentation

◆ DeviceType

The device Capabilities.

Enumerator
RFD 

Reduced Functional Device (RFD)

FFD 

Full Functional Device (FFD)

Definition at line 42 of file lr-wpan-fields.h.

◆ LrWpanAddressMode

table 80 of 802.15.4

Enumerator
NO_PANID_ADDR 
ADDR_MODE_RESERVED 
SHORT_ADDR 
EXT_ADDR 

Definition at line 152 of file lr-wpan-mac.h.

◆ LrWpanAssociationStatus

table 83 of 802.15.4

Enumerator
ASSOCIATED 
PAN_AT_CAPACITY 
PAN_ACCESS_DENIED 
ASSOCIATED_WITHOUT_ADDRESS 
DISASSOCIATED 

Definition at line 165 of file lr-wpan-mac.h.

◆ LrWpanMacPibAttributeIdentifier

IEEE802.15.4-2011 MAC PIB Attribute Identifiers Table 52 in section 6.4.2.

Enumerator
macBeaconPayload 
macBeaconPayloadLength 
macShortAddress 
macExtendedAddress 
macPanId 
unsupported 

Definition at line 343 of file lr-wpan-mac.h.

◆ LrWpanMacState

MAC states.

Enumerator
MAC_IDLE 

MAC_IDLE.

MAC_CSMA 

MAC_CSMA.

MAC_SENDING 

MAC_SENDING.

MAC_ACK_PENDING 

MAC_ACK_PENDING.

CHANNEL_ACCESS_FAILURE 

CHANNEL_ACCESS_FAILURE.

CHANNEL_IDLE 

CHANNEL_IDLE.

SET_PHY_TX_ON 

SET_PHY_TX_ON.

MAC_GTS 

MAC_GTS.

MAC_INACTIVE 

MAC_INACTIVE.

MAC_CSMA_DEFERRED 

MAC_CSMA_DEFERRED.

Definition at line 72 of file lr-wpan-mac.h.

◆ LrWpanMcpsDataConfirmStatus

Table 42 of 802.15.4-2006.

Enumerator
IEEE_802_15_4_SUCCESS 
IEEE_802_15_4_TRANSACTION_OVERFLOW 
IEEE_802_15_4_TRANSACTION_EXPIRED 
IEEE_802_15_4_CHANNEL_ACCESS_FAILURE 
IEEE_802_15_4_INVALID_ADDRESS 
IEEE_802_15_4_INVALID_GTS 
IEEE_802_15_4_NO_ACK 
IEEE_802_15_4_COUNTER_ERROR 
IEEE_802_15_4_FRAME_TOO_LONG 
IEEE_802_15_4_UNAVAILABLE_KEY 
IEEE_802_15_4_UNSUPPORTED_SECURITY 
IEEE_802_15_4_INVALID_PARAMETER 

Definition at line 192 of file lr-wpan-mac.h.

◆ LrWpanMlmeAssociateConfirmStatus

Table 12 of IEEE 802.15.4-2011.

Enumerator
MLMEASSOC_SUCCESS 
MLMEASSOC_FULL_CAPACITY 
MLMEASSOC_ACCESS_DENIED 
MLMEASSOC_CHANNEL_ACCESS_FAILURE 
MLMEASSOC_NO_ACK 
MLMEASSOC_NO_DATA 
MLMEASSOC_COUNTER_ERROR 
MLMEASSOC_FRAME_TOO_LONG 
MLMEASSOC_UNSUPPORTED_LEGACY 
MLMEASSOC_INVALID_PARAMETER 

Definition at line 250 of file lr-wpan-mac.h.

◆ LrWpanMlmeCommStatus

Table 18 of IEEE 802.15.4-2011.

Enumerator
MLMECOMMSTATUS_SUCCESS 
MLMECOMMSTATUS_TRANSACTION_OVERFLOW 
MLMECOMMSTATUS_TRANSACTION_EXPIRED 
MLMECOMMSTATUS_CHANNEL_ACCESS_FAILURE 
MLMECOMMSTATUS_NO_ACK 
MLMECOMMSTATUS_COUNTER_ERROR 
MLMECOMMSTATUS_FRAME_TOO_LONG 
MLMECOMMSTATUS_INVALID_PARAMETER 

Definition at line 282 of file lr-wpan-mac.h.

◆ LrWpanMlmeGetConfirmStatus

Table 20 of IEEE 802.15.4-2011.

Enumerator
MLMEGET_SUCCESS 
MLMEGET_UNSUPPORTED_ATTRIBUTE 

Definition at line 331 of file lr-wpan-mac.h.

◆ LrWpanMlmePollConfirmStatus

Table 39 of IEEE 802.15.4-2011.

Enumerator
MLMEPOLL_SUCCESS 
MLMEPOLL_CHANNEL_ACCESS_FAILURE 
MLMEPOLL_NO_ACK 
MLMEPOLL_NO_DATA 
MLMEPOLL_COUNTER_ERROR 
MLMEPOLL_FRAME_TOO_LONG 
MLMEPOLL_UNAVAILABLE_KEY 
MLMEPOLL_UNSUPPORTED_SECURITY 
MLMEPOLL_INVALID_PARAMETER 

Definition at line 299 of file lr-wpan-mac.h.

◆ LrWpanMlmeScanConfirmStatus

Table 31 of IEEE 802.15.4-2011.

Enumerator
MLMESCAN_SUCCESS 
MLMESCAN_LIMIT_REACHED 
MLMESCAN_NO_BEACON 
MLMESCAN_SCAN_IN_PROGRESS 
MLMESCAN_COUNTER_ERROR 
MLMESCAN_FRAME_TOO_LONG 
MLMESCAN_UNAVAILABLE_KEY 
MLMESCAN_UNSUPPORTED_SECURITY 
MLMESCAN_INVALID_PARAMETER 

Definition at line 232 of file lr-wpan-mac.h.

◆ LrWpanMlmeScanType

Table 30 of IEEE 802.15.4-2011.

Enumerator
MLMESCAN_ED 
MLMESCAN_ACTIVE 
MLMESCAN_PASSIVE 
MLMESCAN_ORPHAN 

Definition at line 179 of file lr-wpan-mac.h.

◆ LrWpanMlmeSetConfirmStatus

Table 33 of IEEE 802.15.4-2011.

Enumerator
MLMESET_SUCCESS 
MLMESET_READ_ONLY 
MLMESET_UNSUPPORTED_ATTRIBUTE 
MLMESET_INVALID_INDEX 
MLMESET_INVALID_PARAMETER 

Definition at line 317 of file lr-wpan-mac.h.

◆ LrWpanMlmeStartConfirmStatus

Table 35 of IEEE 802.15.4-2011.

Enumerator
MLMESTART_SUCCESS 
MLMESTART_NO_SHORT_ADDRESS 
MLMESTART_SUPERFRAME_OVERLAP 
MLMESTART_TRACKING_OFF 
MLMESTART_INVALID_PARAMETER 
MLMESTART_COUNTER_ERROR 
MLMESTART_FRAME_TOO_LONG 
MLMESTART_UNAVAILABLE_KEY 
MLMESTART_UNSUPPORTED_SECURITY 
MLMESTART_CHANNEL_ACCESS_FAILURE 

Definition at line 213 of file lr-wpan-mac.h.

◆ LrWpanPhyEnumeration

IEEE802.15.4-2006 PHY Emumerations Table 18 in section 6.2.3.

Enumerator
IEEE_802_15_4_PHY_BUSY 
IEEE_802_15_4_PHY_BUSY_RX 
IEEE_802_15_4_PHY_BUSY_TX 
IEEE_802_15_4_PHY_FORCE_TRX_OFF 
IEEE_802_15_4_PHY_IDLE 
IEEE_802_15_4_PHY_INVALID_PARAMETER 
IEEE_802_15_4_PHY_RX_ON 
IEEE_802_15_4_PHY_SUCCESS 
IEEE_802_15_4_PHY_TRX_OFF 
IEEE_802_15_4_PHY_TX_ON 
IEEE_802_15_4_PHY_UNSUPPORTED_ATTRIBUTE 
IEEE_802_15_4_PHY_READ_ONLY 
IEEE_802_15_4_PHY_UNSPECIFIED 

Definition at line 108 of file lr-wpan-phy.h.

◆ LrWpanPhyOption

This Phy option will be used to index various Tables in IEEE802.15.4-2011.

Enumerator
IEEE_802_15_4_868MHZ_BPSK 
IEEE_802_15_4_915MHZ_BPSK 
IEEE_802_15_4_950MHZ_BPSK 
IEEE_802_15_4_868MHZ_ASK 
IEEE_802_15_4_915MHZ_ASK 
IEEE_802_15_4_780MHZ_OQPSK 
IEEE_802_15_4_868MHZ_OQPSK 
IEEE_802_15_4_915MHZ_OQPSK 
IEEE_802_15_4_2_4GHZ_OQPSK 
IEEE_802_15_4_INVALID_PHY_OPTION 

Definition at line 88 of file lr-wpan-phy.h.

◆ LrWpanPibAttributeIdentifier

IEEE802.15.4-2006 PHY PIB Attribute Identifiers Table 23 in section 6.4.2.

Enumerator
phyCurrentChannel 
phyChannelsSupported 
phyTransmitPower 
phyCCAMode 
phyCurrentPage 
phyMaxFrameDuration 
phySHRDuration 
phySymbolsPerOctet 

Definition at line 142 of file lr-wpan-phy.h.

◆ LrWpanSyncLossReason

Table 37 of IEEE 802.15.4-2011.

Enumerator
MLMESYNCLOSS_PAN_ID_CONFLICT 
MLMESYNCLOSS_REALIGMENT 
MLMESYNCLOSS_BEACON_LOST 
MLMESYNCLOSS_SUPERFRAME_OVERLAP 

Definition at line 269 of file lr-wpan-mac.h.

◆ LrWpanTxOption

Tx options.

Enumerator
TX_OPTION_NONE 

TX_OPTION_NONE.

TX_OPTION_ACK 

TX_OPTION_ACK.

TX_OPTION_GTS 

TX_OPTION_GTS.

TX_OPTION_INDIRECT 

TX_OPTION_INDIRECT.

Definition at line 59 of file lr-wpan-mac.h.

◆ PendingPrimitiveStatus

Indicates a pending MAC primitive.

Enumerator
MLME_NONE 

No pending primitive.

MLME_START_REQ 

Pending MLME-START.request primitive.

MLME_SCAN_REQ 

Pending MLME-SCAN.request primitive.

MLME_ASSOC_REQ 

Pending MLME-ASSOCIATION.request primitive.

MLME_SYNC_REQ 

Pending MLME-SYNC.request primitive.

Definition at line 115 of file lr-wpan-mac.h.

◆ SuperframeStatus

Superframe status.

Enumerator
BEACON 

The Beacon transmission or reception Period.

CAP 

Contention Access Period.

CFP 

Contention Free Period.

INACTIVE 

Inactive Period or unslotted CSMA-CA.

Definition at line 91 of file lr-wpan-mac.h.

◆ SuperframeType

Superframe type.

Enumerator
OUTGOING 

Outgoing Superframe.

INCOMING 

Incoming Superframe.

Definition at line 104 of file lr-wpan-mac.h.

Variable Documentation

◆ g_LrWpanSpectrumModelInitializerInstance

class ns3::LrWpanSpectrumModelInitializer ns3::g_LrWpanSpectrumModelInitializerInstance

Global object used to initialize the LrWpan Spectrum Model.