Public Member Functions | Static Public Member Functions | Protected Member Functions

ns3::UanMacCw Class Reference

CW-MAC A MAC protocol similar in idea to the 802.11 DCF with constant backoff window. More...

#include <uan-mac-cw.h>

Inheritance diagram for ns3::UanMacCw:
Inheritance graph
[legend]
Collaboration diagram for ns3::UanMacCw:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual void SetCw (uint32_t cw)
virtual void SetSlotTime (Time duration)
virtual uint32_t GetCw (void)
virtual Time GetSlotTime (void)
virtual Address GetAddress ()
virtual void SetAddress (UanAddress addr)
virtual bool Enqueue (Ptr< Packet > pkt, const Address &dest, uint16_t protocolNumber)
virtual void SetForwardUpCb (Callback< void, Ptr< Packet >, const UanAddress & > cb)
virtual void AttachPhy (Ptr< UanPhy > phy)
virtual Address GetBroadcast (void) const
virtual void Clear (void)
virtual void NotifyRxStart (void)
 Function called by UanPhy object to notify of packet reception.
virtual void NotifyRxEndOk (void)
 Function called by UanPhy object to notify of packet received successfully.
virtual void NotifyRxEndError (void)
 Function called by UanPhy object to notify of packet received in error.
virtual void NotifyCcaStart (void)
 Function called by UanPhy object to notify of channel sensed busy.
virtual void NotifyCcaEnd (void)
 Function called by UanPhy object to notify of channel no longer sensed busy.
virtual void NotifyTxStart (Time duration)
 Function called by UanPhy object to notify of outgoing transmission start.

Static Public Member Functions

static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::UanMacCw.

Protected Member Functions

virtual void DoDispose ()

Detailed Description

CW-MAC A MAC protocol similar in idea to the 802.11 DCF with constant backoff window.

For more information on this MAC protocol, see: Parrish, N.; Tracy, L.; Roy, S.; Arabshahi, P.; Fox, W., "System Design Considerations for Undersea Networks: Link and Multiple Access Protocols," Selected Areas in Communications, IEEE Journal on , vol.26, no.9, pp.1720-1730, December 2008


Member Function Documentation

virtual uint32_t ns3::UanMacCw::GetCw ( void   )  [virtual]
Returns:
Contention window size
virtual Time ns3::UanMacCw::GetSlotTime ( void   )  [virtual]
Returns:
slot time duration
static TypeId ns3::UanMacCw::GetTypeId ( void   )  [static]

This method returns the TypeId associated to ns3::UanMacCw.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/NoiseModel/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/PropagationModel/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Phy/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Transducer/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/NoiseModel/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/PropagationModel/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/NoiseModel/$ns3::UanMacCw
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/PropagationModel/$ns3::UanMacCw

Attributes defined for this type:

  • CW: The MAC parameter CW
  • SlotTime: Time slot duration for MAC backoff
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: 20000000ns
    • Flags: construct write read

TraceSources defined for this type:

  • Enqueue: A packet arrived at the MAC for transmission
  • Dequeue: A was passed down to the PHY from the MAC
  • RX: A packet was destined for this MAC and was received
virtual void ns3::UanMacCw::SetCw ( uint32_t  cw  )  [virtual]
Parameters:
cw Contention window size
virtual void ns3::UanMacCw::SetSlotTime ( Time  duration  )  [virtual]
Parameters:
duration Slot time duration

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