24 #include "ns3/mesh-wifi-interface-mac-plugin.h"
25 #include "ns3/hwmp-protocol.h"
29 class MeshWifiInterfaceMac;
30 class WifiActionHeader;
66 void SendPreq (std::vector<IePreq> preq);
69 void ForwardPerr (std::vector<HwmpProtocol::FailedDestination> destinations, std::vector<Mac48Address> receivers);
71 void InitiatePerr (std::vector<HwmpProtocol::FailedDestination> destinations, std::vector<Mac48Address> receivers);
90 void Report (std::ostream &)
const;
128 void Print (std::ostream & os)
const;
bool ReceiveAction(Ptr< Packet > packet, const WifiMacHeader &header)
Receive action management frame.
uint32_t GetLinkMetric(Mac48Address peerAddress) const
smart pointer class similar to boost::intrusive_ptr
void SetParent(Ptr< MeshWifiInterfaceMac > parent)
Update beacon is empty, because HWMP does not know anything about beacons.
void SendMyPreq()
Sends one PREQ when PreqMinInterval after last PREQ expires (if any PREQ exists in rhe queue) ...
void SendPrep(IePrep prep, Mac48Address receiver)
Request a destination.
void RequestDestination(Mac48Address dest, uint32_t originator_seqno, uint32_t dst_seqno)
Request a destination.
See 7.3.2.97 of 802.11s draft 2.07.
std::vector< IePreq > m_myPreq
void SendPreq(IePreq preq)
Request a destination.
static WifiActionHeader GetWifiActionHeader()
Hybrid wireless mesh protocol – a routing protocol of IEEE 802.11s draft.
See 7.3.2.96 of 802.11s draft 2.07.
Ptr< MeshWifiInterfaceMac > m_parent
std::vector< Mac48Address > receivers
HwmpProtocolMac(uint32_t, Ptr< HwmpProtocol >)
Interface MAC plugin for HWMP – 802.11s routing protocol.
Common interface for mesh point interface MAC plugins.
void Print(std::ostream &os) const
std::vector< HwmpProtocol::FailedDestination > destinations
void UpdateBeacon(MeshWifiBeacon &beacon) const
Update beacon is empty, because HWMP does not know anything about beacons.
bool UpdateOutcomingFrame(Ptr< Packet > packet, WifiMacHeader &header, Mac48Address from, Mac48Address to)
Update beacon is empty, because HWMP does not know anything about beacons.
Beacon is beacon header + list of arbitrary information elements.
Ptr< HwmpProtocol > m_protocol
int64_t AssignStreams(int64_t stream)
Update beacon is empty, because HWMP does not know anything about beacons.
bool ReceiveData(Ptr< Packet > packet, const WifiMacHeader &header)
Receive data frame.
an identifier for simulation events.
void ForwardPerr(std::vector< HwmpProtocol::FailedDestination > destinations, std::vector< Mac48Address > receivers)
Request a destination.
bool Receive(Ptr< Packet > packet, const WifiMacHeader &header)
Update beacon is empty, because HWMP does not know anything about beacons.
void Report(std::ostream &) const
Report statistics.
void InitiatePerr(std::vector< HwmpProtocol::FailedDestination > destinations, std::vector< Mac48Address > receivers)
Request a destination.
uint16_t GetChannelId() const