A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::MeshWifiBeacon Class Reference

Beacon is beacon header + list of arbitrary information elements. More...

#include "mesh-wifi-beacon.h"

+ Collaboration diagram for ns3::MeshWifiBeacon:

Public Member Functions

 MeshWifiBeacon (Ssid ssid, AllSupportedRates rates, uint64_t us)
 C-tor.
 
void AddInformationElement (Ptr< WifiInformationElement > ie)
 Add information element.
 
MgtBeaconHeader BeaconHeader () const
 Read standard Wifi beacon header.
 
WifiMacHeader CreateHeader (Mac48Address address, Mac48Address mpAddress)
 Create Wifi header for beacon frame.
 
Ptr< PacketCreatePacket ()
 Create frame = { beacon header + all information elements sorted by ElementId () }.
 
Time GetBeaconInterval () const
 Returns the beacon interval of Wifi beacon.
 

Private Attributes

MeshInformationElementVector m_elements
 List of information elements added.
 
MgtBeaconHeader m_header
 Beacon header.
 

Detailed Description

Beacon is beacon header + list of arbitrary information elements.

It is supposed that distinct mesh protocols can use beacons to transport their own information elements.

Definition at line 30 of file mesh-wifi-beacon.h.

Constructor & Destructor Documentation

◆ MeshWifiBeacon()

ns3::MeshWifiBeacon::MeshWifiBeacon ( Ssid ssid,
AllSupportedRates rates,
uint64_t us )

C-tor.

Parameters
ssidis SSID for beacon header
ratesis a set of supported rates
usbeacon interval in microseconds

Definition at line 17 of file mesh-wifi-beacon.cc.

References ns3::AllSupportedRates::extendedRates, m_header, ns3::AllSupportedRates::rates, and ns3::MgtProbeResponseHeader::SetBeaconIntervalUs().

+ Here is the call graph for this function:

Member Function Documentation

◆ AddInformationElement()

void ns3::MeshWifiBeacon::AddInformationElement ( Ptr< WifiInformationElement > ie)

Add information element.

Parameters
iethe Wifi information element

Definition at line 26 of file mesh-wifi-beacon.cc.

References ns3::MeshInformationElementVector::AddInformationElement(), and m_elements.

Referenced by ns3::dot11s::PeerManagementProtocolMac::UpdateBeacon().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ BeaconHeader()

MgtBeaconHeader ns3::MeshWifiBeacon::BeaconHeader ( ) const
inline

Read standard Wifi beacon header.

Returns
the management beacon header

Definition at line 47 of file mesh-wifi-beacon.h.

References m_header.

Referenced by CreatePacket().

+ Here is the caller graph for this function:

◆ CreateHeader()

WifiMacHeader ns3::MeshWifiBeacon::CreateHeader ( Mac48Address address,
Mac48Address mpAddress )

Create Wifi header for beacon frame.

Parameters
addressis sender address
mpAddressis mesh point address
Returns
the WifiMacHeader

Definition at line 47 of file mesh-wifi-beacon.cc.

References ns3::Mac48Address::GetBroadcast(), ns3::WifiMacHeader::SetAddr1(), ns3::WifiMacHeader::SetAddr2(), ns3::WifiMacHeader::SetAddr3(), ns3::WifiMacHeader::SetDsNotFrom(), ns3::WifiMacHeader::SetDsNotTo(), ns3::WifiMacHeader::SetType(), and ns3::WIFI_MAC_MGT_BEACON.

Referenced by ns3::MeshWifiInterfaceMac::SendBeacon().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CreatePacket()

Ptr< Packet > ns3::MeshWifiBeacon::CreatePacket ( )

Create frame = { beacon header + all information elements sorted by ElementId () }.

Returns
the frame

Definition at line 38 of file mesh-wifi-beacon.cc.

References BeaconHeader(), ns3::Create(), and m_elements.

Referenced by ns3::MeshWifiInterfaceMac::SendBeacon().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetBeaconInterval()

Time ns3::MeshWifiBeacon::GetBeaconInterval ( ) const

Returns the beacon interval of Wifi beacon.

Returns
the beacon interval time

Definition at line 32 of file mesh-wifi-beacon.cc.

References ns3::MgtProbeResponseHeader::GetBeaconIntervalUs(), m_header, and ns3::MicroSeconds().

Referenced by ns3::dot11s::PeerManagementProtocolMac::UpdateBeacon().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_elements

MeshInformationElementVector ns3::MeshWifiBeacon::m_elements
private

List of information elements added.

Definition at line 84 of file mesh-wifi-beacon.h.

Referenced by AddInformationElement(), and CreatePacket().

◆ m_header

MgtBeaconHeader ns3::MeshWifiBeacon::m_header
private

Beacon header.

Definition at line 82 of file mesh-wifi-beacon.h.

Referenced by MeshWifiBeacon(), BeaconHeader(), and GetBeaconInterval().


The documentation for this class was generated from the following files: