A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::dot11s::PeerLink Class Reference

Peer link model for 802.11s Peer Management protocol. More...

#include <peer-link.h>

+ Inheritance diagram for ns3::dot11s::PeerLink:
+ Collaboration diagram for ns3::dot11s::PeerLink:

Public Types

enum  PeerState {
  IDLE, OPN_SNT, CNF_RCVD, OPN_RCVD,
  ESTAB, HOLDING
}
 Peer Link state: More...

Public Member Functions

 PeerLink ()
 C-tor create empty link.
 ~PeerLink ()
void DoDispose ()
void Report (std::ostream &os) const
 Statistics.
void SetBeaconInformation (Time lastBeacon, Time BeaconInterval)
 Process beacon received from peer.
void SetLinkStatusCallback (Callback< void, uint32_t, Mac48Address, bool > cb)
 Method used to detect peer link changes.
Peer link getters/setters
void SetPeerAddress (Mac48Address macaddr)
void SetPeerMeshPointAddress (Mac48Address macaddr)
void SetInterface (uint32_t interface)
void SetLocalLinkId (uint16_t id)
void SetLocalAid (uint16_t aid)
uint16_t GetPeerAid () const
void SetBeaconTimingElement (IeBeaconTiming beaconTiming)
Mac48Address GetPeerAddress () const
uint16_t GetLocalAid () const
Time GetLastBeacon () const
Time GetBeaconInterval () const
IeBeaconTiming GetBeaconTimingElement () const
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
AggregateIterator GetAggregateIterator (void) const
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)

Static Public Member Functions

static TypeId GetTypeId ()
 Support object system.

Private Types

enum  PeerEvent {
  CNCL, ACTOPN, CLS_ACPT, OPN_ACPT,
  OPN_RJCT, REQ_RJCT, CNF_ACPT, CNF_RJCT,
  TOR1, TOR2, TOC, TOH
}
 Peer link events, see 802.11s draft 11B.3.3.2. More...

Private Member Functions

 PeerLink (const PeerLink &)
void BeaconLoss ()
 Several successive beacons were lost, close link.
bool LinkIsEstab () const
 True if link is established.
bool LinkIsIdle () const
 True if link is idle. Link can be deleted in this state.
PeerLinkoperator= (const PeerLink &)
void SetMacPlugin (Ptr< PeerManagementProtocolMac > plugin)
void StateMachine (PeerEvent event, PmpReasonCode=REASON11S_RESERVED)
 State transition.
Link response to received management frames
Attention
In all this methods {local/peer}LinkID correspond to peer station, as written in received frame, e.g. I am peerLinkID and peer link is localLinkID .
void Close (uint16_t localLinkID, uint16_t peerLinkID, PmpReasonCode reason)
 Close link.
void OpenAccept (uint16_t localLinkId, IeConfiguration conf, Mac48Address peerMp)
 Accept open link.
void OpenReject (uint16_t localLinkId, IeConfiguration conf, Mac48Address peerMp, PmpReasonCode reason)
 Reject open link.
void ConfirmAccept (uint16_t localLinkId, uint16_t peerLinkId, uint16_t peerAid, IeConfiguration conf, Mac48Address peerMp)
 Confirm accept.
void ConfirmReject (uint16_t localLinkId, uint16_t peerLinkId, IeConfiguration conf, Mac48Address peerMp, PmpReasonCode reason)
 Confirm reject.
Event handlers
void ClearRetryTimer ()
void ClearConfirmTimer ()
void ClearHoldingTimer ()
void SetHoldingTimer ()
void SetRetryTimer ()
void SetConfirmTimer ()
Work with management frames
void SendPeerLinkClose (PmpReasonCode reasoncode)
void SendPeerLinkOpen ()
void SendPeerLinkConfirm ()
Timeout handlers
void HoldingTimeout ()
void RetryTimeout ()
void ConfirmTimeout ()

Private Attributes

uint16_t m_assocId
 My association ID.
Time m_beaconInterval
 Current beacon interval on corresponding interface.
IeBeaconTiming m_beaconTiming
 Beacon timing element received from the peer. Needed by BCA.
IeConfiguration m_configuration
 Mesh interface configuration.
uint32_t m_interface
 The number of interface I am associated with.
Time m_lastBeacon
 When last beacon was received.
SignalStatusCallback m_linkStatusCallback
 How to report my status change.
uint16_t m_localLinkId
 My ID of this link.
Ptr< PeerManagementProtocolMacm_macPlugin
 pointer to MAC plugin, which is responsible for peer management
uint16_t m_packetFail
 How many successive packets were failed to transmit.
Mac48Address m_peerAddress
 Peer address.
uint16_t m_peerAssocId
 Assoc Id assigned to me by peer.
uint16_t m_peerLinkId
 Peer ID of this link.
Mac48Address m_peerMeshPointAddress
PeerState m_state
 Current state.
Timers & counters used for internal state transitions
uint16_t m_dot11MeshMaxRetries
Time m_dot11MeshRetryTimeout
Time m_dot11MeshHoldingTimeout
Time m_dot11MeshConfirmTimeout
EventId m_retryTimer
EventId m_holdingTimer
EventId m_confirmTimer
uint16_t m_retryCounter
EventId m_beaconLossTimer
uint16_t m_maxBeaconLoss
uint16_t m_maxPacketFail

Friends

class PeerManagementProtocol

MLME

typedef Callback< void,
uint32_t, Mac48Address,
Mac48Address,
PeerLink::PeerState,
PeerLink::PeerState
SignalStatusCallback
 Callback type for MLME-SignalPeerLinkStatus event.
void MLMECancelPeerLink (PmpReasonCode reason)
 MLME-CancelPeerLink.request.
void MLMEActivePeerLinkOpen ()
 MLME-ActivePeerLinkOpen.request.
void MLMEPeeringRequestReject ()
 MLME-PeeringRequestReject.
void MLMESetSignalStatusCallback (SignalStatusCallback)
 Set callback.
void TransmissionSuccess ()
 Reports about transmission success/failure.
void TransmissionFailure ()

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Detailed Description

Peer link model for 802.11s Peer Management protocol.

Definition at line 43 of file peer-link.h.

Member Typedef Documentation

Callback type for MLME-SignalPeerLinkStatus event.

Definition at line 101 of file peer-link.h.

Member Enumeration Documentation

Peer link events, see 802.11s draft 11B.3.3.2.

Enumerator:
CNCL 

Cancel peer link.

ACTOPN 

Active peer link open.

CLS_ACPT 

PeerLinkClose_Accept.

OPN_ACPT 

PeerLinkOpen_Accept.

OPN_RJCT 

PeerLinkOpen_Reject.

REQ_RJCT 

PeerLinkOpenReject by internal reason.

CNF_ACPT 

PeerLinkConfirm_Accept.

CNF_RJCT 

PeerLinkConfirm_Reject.

TOR1 

Timeout of retry timer.

TOR2 

also timeout of retry timer

TOC 

Timeout of confirm timer.

TOH 

Timeout of holding (graceful closing) timer.

Definition at line 112 of file peer-link.h.

Peer Link state:

Enumerator:
IDLE 
OPN_SNT 
CNF_RCVD 
OPN_RCVD 
ESTAB 
HOLDING 

Definition at line 54 of file peer-link.h.

Constructor & Destructor Documentation

ns3::dot11s::PeerLink::PeerLink ( )

C-tor create empty link.

Definition at line 92 of file peer-link.cc.

ns3::dot11s::PeerLink::~PeerLink ( )

Definition at line 107 of file peer-link.cc.

ns3::dot11s::PeerLink::PeerLink ( const PeerLink )
private

Member Function Documentation

void ns3::dot11s::PeerLink::BeaconLoss ( )
private

Several successive beacons were lost, close link.

Definition at line 160 of file peer-link.cc.

References CNCL, and StateMachine().

Referenced by SetBeaconInformation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::ClearConfirmTimer ( )
private

Definition at line 612 of file peer-link.cc.

References ns3::EventId::Cancel(), and m_confirmTimer.

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::ClearHoldingTimer ( )
private

Definition at line 617 of file peer-link.cc.

References ns3::EventId::Cancel(), and m_holdingTimer.

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::ClearRetryTimer ( )
private

Definition at line 607 of file peer-link.cc.

References ns3::EventId::Cancel(), and m_retryTimer.

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::Close ( uint16_t  localLinkID,
uint16_t  peerLinkID,
PmpReasonCode  reason 
)
private

Close link.

Definition at line 232 of file peer-link.cc.

References CLS_ACPT, m_localLinkId, m_peerLinkId, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::ConfirmAccept ( uint16_t  localLinkId,
uint16_t  peerLinkId,
uint16_t  peerAid,
IeConfiguration  conf,
Mac48Address  peerMp 
)
private

Confirm accept.

Definition at line 285 of file peer-link.cc.

References CNF_ACPT, ns3::Mac48Address::GetBroadcast(), m_configuration, m_localLinkId, m_peerAssocId, m_peerLinkId, m_peerMeshPointAddress, NS_ASSERT, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::ConfirmReject ( uint16_t  localLinkId,
uint16_t  peerLinkId,
IeConfiguration  conf,
Mac48Address  peerMp,
PmpReasonCode  reason 
)
private

Confirm reject.

Definition at line 316 of file peer-link.cc.

References CNF_RJCT, ns3::Mac48Address::GetBroadcast(), m_configuration, m_localLinkId, m_peerLinkId, m_peerMeshPointAddress, NS_ASSERT, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::ConfirmTimeout ( )
private

Definition at line 682 of file peer-link.cc.

References StateMachine(), and TOC.

Referenced by SetConfirmTimer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::DoDispose ( void  )
virtual

This method is called by Object::Dispose or by the object's destructor, whichever comes first.

Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.

It is safe to call GetObject from within this method.

Reimplemented from ns3::Object.

Definition at line 111 of file peer-link.cc.

References ns3::EventId::Cancel(), ns3::dot11s::IeBeaconTiming::ClearTimingElement(), m_beaconLossTimer, m_beaconTiming, m_confirmTimer, m_holdingTimer, and m_retryTimer.

+ Here is the call graph for this function:

Time ns3::dot11s::PeerLink::GetBeaconInterval ( ) const

Definition at line 207 of file peer-link.cc.

References m_beaconInterval.

IeBeaconTiming ns3::dot11s::PeerLink::GetBeaconTimingElement ( ) const

Definition at line 212 of file peer-link.cc.

References m_beaconTiming.

Time ns3::dot11s::PeerLink::GetLastBeacon ( ) const

Definition at line 202 of file peer-link.cc.

References m_lastBeacon.

uint16_t ns3::dot11s::PeerLink::GetLocalAid ( ) const

Definition at line 191 of file peer-link.cc.

References m_assocId.

Mac48Address ns3::dot11s::PeerLink::GetPeerAddress ( void  ) const

Definition at line 186 of file peer-link.cc.

References m_peerAddress.

uint16_t ns3::dot11s::PeerLink::GetPeerAid ( ) const

Definition at line 196 of file peer-link.cc.

References m_peerAssocId.

TypeId ns3::dot11s::PeerLink::GetTypeId ( void  )
static

Support object system.

This method returns the TypeId associated to ns3::dot11s::PeerLink.

Attributes defined for this type:

  • RetryTimeout: Retry timeout
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +40960000.0ns
    • Flags: construct write read
  • HoldingTimeout: Holding timeout
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +40960000.0ns
    • Flags: construct write read
  • ConfirmTimeout: Confirm timeout
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +40960000.0ns
    • Flags: construct write read
  • MaxRetries: Maximum number of retries
  • MaxBeaconLoss: Maximum number of lost beacons before link will be closed
  • MaxPacketFailure: Maximum number of failed packets before link will be closed

No TraceSources defined for this type.

Reimplemented from ns3::Object.

Definition at line 37 of file peer-link.cc.

References m_dot11MeshConfirmTimeout, m_dot11MeshHoldingTimeout, m_dot11MeshMaxRetries, m_dot11MeshRetryTimeout, m_maxBeaconLoss, m_maxPacketFail, ns3::MicroSeconds(), and ns3::TypeId::SetParent().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::HoldingTimeout ( )
private

Definition at line 653 of file peer-link.cc.

References StateMachine(), and TOH.

Referenced by SetHoldingTimer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool ns3::dot11s::PeerLink::LinkIsEstab ( ) const
private

True if link is established.

Definition at line 343 of file peer-link.cc.

References ESTAB, and m_state.

bool ns3::dot11s::PeerLink::LinkIsIdle ( ) const
private

True if link is idle. Link can be deleted in this state.

Definition at line 348 of file peer-link.cc.

References IDLE, and m_state.

void ns3::dot11s::PeerLink::MLMEActivePeerLinkOpen ( )

MLME-ActivePeerLinkOpen.request.

Definition at line 222 of file peer-link.cc.

References ACTOPN, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::MLMECancelPeerLink ( PmpReasonCode  reason)

MLME-CancelPeerLink.request.

Definition at line 217 of file peer-link.cc.

References CNCL, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::MLMEPeeringRequestReject ( )

MLME-PeeringRequestReject.

Definition at line 227 of file peer-link.cc.

References ns3::dot11s::REASON11S_PEERING_CANCELLED, REQ_RJCT, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::MLMESetSignalStatusCallback ( PeerLink::SignalStatusCallback  cb)

Set callback.

Definition at line 155 of file peer-link.cc.

References m_linkStatusCallback.

void ns3::dot11s::PeerLink::OpenAccept ( uint16_t  localLinkId,
IeConfiguration  conf,
Mac48Address  peerMp 
)
private

Accept open link.

Definition at line 252 of file peer-link.cc.

References ns3::Mac48Address::GetBroadcast(), m_configuration, m_peerLinkId, m_peerMeshPointAddress, NS_ASSERT, OPN_ACPT, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::OpenReject ( uint16_t  localLinkId,
IeConfiguration  conf,
Mac48Address  peerMp,
PmpReasonCode  reason 
)
private

Reject open link.

Definition at line 267 of file peer-link.cc.

References ns3::Mac48Address::GetBroadcast(), m_configuration, m_peerLinkId, m_peerMeshPointAddress, NS_ASSERT, OPN_RJCT, and StateMachine().

+ Here is the call graph for this function:

PeerLink& ns3::dot11s::PeerLink::operator= ( const PeerLink )
private
void ns3::dot11s::PeerLink::Report ( std::ostream &  os) const
void ns3::dot11s::PeerLink::RetryTimeout ( )
private

Definition at line 664 of file peer-link.cc.

References m_dot11MeshMaxRetries, m_retryCounter, StateMachine(), TOR1, and TOR2.

Referenced by SetRetryTimer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::SendPeerLinkClose ( PmpReasonCode  reasoncode)
private

Definition at line 622 of file peer-link.cc.

References m_assocId, m_configuration, m_localLinkId, m_macPlugin, m_peerAddress, m_peerLinkId, m_peerMeshPointAddress, ns3::dot11s::PeerManagementProtocolMac::SendPeerLinkManagementFrame(), and ns3::dot11s::IePeerManagement::SetPeerClose().

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::SendPeerLinkConfirm ( )
private

Definition at line 639 of file peer-link.cc.

References m_assocId, m_configuration, m_localLinkId, m_macPlugin, m_peerAddress, m_peerLinkId, m_peerMeshPointAddress, ns3::dot11s::PeerManagementProtocolMac::SendPeerLinkManagementFrame(), and ns3::dot11s::IePeerManagement::SetPeerConfirm().

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::SendPeerLinkOpen ( )
private

Definition at line 630 of file peer-link.cc.

References m_assocId, m_configuration, m_localLinkId, m_macPlugin, m_peerAddress, m_peerMeshPointAddress, NS_ASSERT, ns3::dot11s::PeerManagementProtocolMac::SendPeerLinkManagementFrame(), and ns3::dot11s::IePeerManagement::SetPeerOpen().

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::SetBeaconInformation ( Time  lastBeacon,
Time  BeaconInterval 
)

Process beacon received from peer.

Definition at line 145 of file peer-link.cc.

References BeaconLoss(), ns3::EventId::Cancel(), ns3::Time::GetMicroSeconds(), ns3::Time::GetSeconds(), m_beaconInterval, m_beaconLossTimer, m_lastBeacon, m_maxBeaconLoss, NS_ASSERT, ns3::Simulator::Schedule(), and ns3::Seconds().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::SetBeaconTimingElement ( IeBeaconTiming  beaconTiming)

Definition at line 181 of file peer-link.cc.

References m_beaconTiming.

void ns3::dot11s::PeerLink::SetConfirmTimer ( )
private

Definition at line 676 of file peer-link.cc.

References ConfirmTimeout(), ns3::Time::GetMicroSeconds(), m_confirmTimer, m_dot11MeshConfirmTimeout, NS_ASSERT, and ns3::Simulator::Schedule().

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::SetHoldingTimer ( )
private

Definition at line 647 of file peer-link.cc.

References ns3::Time::GetMicroSeconds(), HoldingTimeout(), m_dot11MeshHoldingTimeout, m_holdingTimer, NS_ASSERT, and ns3::Simulator::Schedule().

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::SetInterface ( uint32_t  interface)

Definition at line 130 of file peer-link.cc.

References m_interface.

void ns3::dot11s::PeerLink::SetLinkStatusCallback ( Callback< void, uint32_t, Mac48Address, bool >  cb)

Method used to detect peer link changes.

Parameters
cbis a callback, which notifies, that on interface (uint32_t), peer link with address (Mac48Address) was opened (bool is true) or closed (bool is false)
void ns3::dot11s::PeerLink::SetLocalAid ( uint16_t  aid)

Definition at line 140 of file peer-link.cc.

References m_assocId.

void ns3::dot11s::PeerLink::SetLocalLinkId ( uint16_t  id)

Definition at line 135 of file peer-link.cc.

References m_localLinkId.

void ns3::dot11s::PeerLink::SetMacPlugin ( Ptr< PeerManagementProtocolMac plugin)
private

Set pointer to MAC-plugin, which is responsible for sending peer link management frames

Definition at line 353 of file peer-link.cc.

References m_macPlugin.

void ns3::dot11s::PeerLink::SetPeerAddress ( Mac48Address  macaddr)

Definition at line 120 of file peer-link.cc.

References m_peerAddress.

void ns3::dot11s::PeerLink::SetPeerMeshPointAddress ( Mac48Address  macaddr)

Definition at line 125 of file peer-link.cc.

References m_peerMeshPointAddress.

void ns3::dot11s::PeerLink::SetRetryTimer ( )
private

Definition at line 658 of file peer-link.cc.

References ns3::Time::GetMicroSeconds(), m_dot11MeshRetryTimeout, m_retryTimer, NS_ASSERT, RetryTimeout(), and ns3::Simulator::Schedule().

Referenced by StateMachine().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::dot11s::PeerLink::TransmissionFailure ( )

Definition at line 170 of file peer-link.cc.

References CNCL, m_maxPacketFail, m_packetFail, and StateMachine().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLink::TransmissionSuccess ( )

Reports about transmission success/failure.

Definition at line 165 of file peer-link.cc.

References m_packetFail.

Friends And Related Function Documentation

friend class PeerManagementProtocol
friend

Definition at line 46 of file peer-link.h.

Member Data Documentation

uint16_t ns3::dot11s::PeerLink::m_assocId
private

My association ID.

Definition at line 219 of file peer-link.h.

Referenced by GetLocalAid(), Report(), SendPeerLinkClose(), SendPeerLinkConfirm(), SendPeerLinkOpen(), and SetLocalAid().

Time ns3::dot11s::PeerLink::m_beaconInterval
private

Current beacon interval on corresponding interface.

Definition at line 226 of file peer-link.h.

Referenced by GetBeaconInterval(), and SetBeaconInformation().

EventId ns3::dot11s::PeerLink::m_beaconLossTimer
private

Definition at line 253 of file peer-link.h.

Referenced by DoDispose(), and SetBeaconInformation().

IeBeaconTiming ns3::dot11s::PeerLink::m_beaconTiming
private

Beacon timing element received from the peer. Needed by BCA.

Definition at line 238 of file peer-link.h.

Referenced by DoDispose(), GetBeaconTimingElement(), and SetBeaconTimingElement().

IeConfiguration ns3::dot11s::PeerLink::m_configuration
private

Mesh interface configuration.

Attention
Is not used now, nothing to configure :)

Definition at line 236 of file peer-link.h.

Referenced by ConfirmAccept(), ConfirmReject(), OpenAccept(), OpenReject(), SendPeerLinkClose(), SendPeerLinkConfirm(), and SendPeerLinkOpen().

EventId ns3::dot11s::PeerLink::m_confirmTimer
private

Definition at line 251 of file peer-link.h.

Referenced by ClearConfirmTimer(), DoDispose(), and SetConfirmTimer().

Time ns3::dot11s::PeerLink::m_dot11MeshConfirmTimeout
private

Definition at line 247 of file peer-link.h.

Referenced by GetTypeId(), and SetConfirmTimer().

Time ns3::dot11s::PeerLink::m_dot11MeshHoldingTimeout
private

Definition at line 246 of file peer-link.h.

Referenced by GetTypeId(), and SetHoldingTimer().

uint16_t ns3::dot11s::PeerLink::m_dot11MeshMaxRetries
private

Definition at line 244 of file peer-link.h.

Referenced by GetTypeId(), and RetryTimeout().

Time ns3::dot11s::PeerLink::m_dot11MeshRetryTimeout
private

Definition at line 245 of file peer-link.h.

Referenced by GetTypeId(), and SetRetryTimer().

EventId ns3::dot11s::PeerLink::m_holdingTimer
private

Definition at line 250 of file peer-link.h.

Referenced by ClearHoldingTimer(), DoDispose(), and SetHoldingTimer().

uint32_t ns3::dot11s::PeerLink::m_interface
private

The number of interface I am associated with.

Definition at line 206 of file peer-link.h.

Referenced by SetInterface(), and StateMachine().

Time ns3::dot11s::PeerLink::m_lastBeacon
private

When last beacon was received.

Definition at line 224 of file peer-link.h.

Referenced by GetLastBeacon(), Report(), and SetBeaconInformation().

SignalStatusCallback ns3::dot11s::PeerLink::m_linkStatusCallback
private

How to report my status change.

Definition at line 258 of file peer-link.h.

Referenced by MLMESetSignalStatusCallback(), and StateMachine().

uint16_t ns3::dot11s::PeerLink::m_localLinkId
private
Ptr<PeerManagementProtocolMac> ns3::dot11s::PeerLink::m_macPlugin
private

pointer to MAC plugin, which is responsible for peer management

Definition at line 208 of file peer-link.h.

Referenced by Report(), SendPeerLinkClose(), SendPeerLinkConfirm(), SendPeerLinkOpen(), and SetMacPlugin().

uint16_t ns3::dot11s::PeerLink::m_maxBeaconLoss
private

Definition at line 254 of file peer-link.h.

Referenced by GetTypeId(), and SetBeaconInformation().

uint16_t ns3::dot11s::PeerLink::m_maxPacketFail
private

Definition at line 255 of file peer-link.h.

Referenced by GetTypeId(), and TransmissionFailure().

uint16_t ns3::dot11s::PeerLink::m_packetFail
private

How many successive packets were failed to transmit.

Definition at line 228 of file peer-link.h.

Referenced by TransmissionFailure(), and TransmissionSuccess().

Mac48Address ns3::dot11s::PeerLink::m_peerAddress
private
uint16_t ns3::dot11s::PeerLink::m_peerAssocId
private

Assoc Id assigned to me by peer.

Definition at line 221 of file peer-link.h.

Referenced by ConfirmAccept(), and GetPeerAid().

uint16_t ns3::dot11s::PeerLink::m_peerLinkId
private

Peer ID of this link.

Definition at line 217 of file peer-link.h.

Referenced by Close(), ConfirmAccept(), ConfirmReject(), OpenAccept(), OpenReject(), Report(), SendPeerLinkClose(), and SendPeerLinkConfirm().

Mac48Address ns3::dot11s::PeerLink::m_peerMeshPointAddress
private

Mesh point address, equal to peer address in case of single interface mesh point

Definition at line 213 of file peer-link.h.

Referenced by ConfirmAccept(), ConfirmReject(), OpenAccept(), OpenReject(), Report(), SendPeerLinkClose(), SendPeerLinkConfirm(), SendPeerLinkOpen(), SetPeerMeshPointAddress(), and StateMachine().

uint16_t ns3::dot11s::PeerLink::m_retryCounter
private

Definition at line 252 of file peer-link.h.

Referenced by RetryTimeout(), and StateMachine().

EventId ns3::dot11s::PeerLink::m_retryTimer
private

Definition at line 249 of file peer-link.h.

Referenced by ClearRetryTimer(), DoDispose(), and SetRetryTimer().

PeerState ns3::dot11s::PeerLink::m_state
private

Current state.

Definition at line 231 of file peer-link.h.

Referenced by LinkIsEstab(), LinkIsIdle(), Report(), and StateMachine().


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