A Discrete-Event Network Simulator
API
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
ns3::SubscriberStationNetDevice Class Reference

SubscriberStationNetDevice subclass of WimaxNetDevice. More...

#include "ss-net-device.h"

+ Inheritance diagram for ns3::SubscriberStationNetDevice:

Public Types

enum  EventType {
  EVENT_NONE, EVENT_WAIT_FOR_RNG_RSP, EVENT_DL_MAP_SYNC_TIMEOUT, EVENT_LOST_DL_MAP,
  EVENT_LOST_UL_MAP, EVENT_DCD_WAIT_TIMEOUT, EVENT_UCD_WAIT_TIMEOUT, EVENT_RANG_OPP_WAIT_TIMEOUT
}
 EventType enumeration. More...
 
enum  State {
  SS_STATE_IDLE, SS_STATE_SCANNING, SS_STATE_SYNCHRONIZING, SS_STATE_ACQUIRING_PARAMETERS,
  SS_STATE_WAITING_REG_RANG_INTRVL, SS_STATE_WAITING_INV_RANG_INTRVL, SS_STATE_WAITING_RNG_RSP, SS_STATE_ADJUSTING_PARAMETERS,
  SS_STATE_REGISTERED, SS_STATE_TRANSMITTING, SS_STATE_STOPPED
}
 State enumeration. More...
 
- Public Types inherited from ns3::WimaxNetDevice
enum  Direction { DIRECTION_DOWNLINK, DIRECTION_UPLINK }
 Direction enumeration. More...
 
enum  RangingStatus { RANGING_STATUS_EXPIRED, RANGING_STATUS_CONTINUE, RANGING_STATUS_ABORT, RANGING_STATUS_SUCCESS }
 RangingStatus enumeration. More...
 
typedef void(* TxRxTracedCallback) (Ptr< const Packet > packet, const Mac48Address &mac)
 TracedCallback signature for packet and Mac48Address. More...
 
- Public Types inherited from ns3::NetDevice
typedef void(* LinkChangeTracedCallback) (void)
 TracedCallback signature for link changed event. More...
 
enum  PacketType {
  PACKET_HOST = 1, NS3_PACKET_HOST = PACKET_HOST, PACKET_BROADCAST, NS3_PACKET_BROADCAST = PACKET_BROADCAST,
  PACKET_MULTICAST, NS3_PACKET_MULTICAST = PACKET_MULTICAST, PACKET_OTHERHOST, NS3_PACKET_OTHERHOST = PACKET_OTHERHOST
}
 Packet types are used as they are in Linux. More...
 
typedef Callback< bool, Ptr< NetDevice >, Ptr< const Packet >, uint16_t, const Address &, const Address &, enum PacketTypePromiscReceiveCallback
 
typedef Callback< bool, Ptr< NetDevice >, Ptr< const Packet >, uint16_t, const Address &> ReceiveCallback
 

Public Member Functions

 SubscriberStationNetDevice (void)
 
 SubscriberStationNetDevice (Ptr< Node > node, Ptr< WimaxPhy > phy)
 Constructor. More...
 
 ~SubscriberStationNetDevice (void)
 
void AddServiceFlow (ServiceFlow *sf)
 adds a new service flow More...
 
void AddServiceFlow (ServiceFlow sf)
 adds a new service flow More...
 
bool Enqueue (Ptr< Packet > packet, const MacHeaderType &hdrType, Ptr< WimaxConnection > connection)
 Enqueue a packet into a connection queue. More...
 
bool GetAreManagementConnectionsAllocated (void) const
 
bool GetAreServiceFlowsAllocated (void) const
 
Cid GetBasicCid (void) const
 
Ptr< WimaxConnectionGetBasicConnection (void) const
 
Time GetIntervalT1 (void) const
 
Time GetIntervalT12 (void) const
 
Time GetIntervalT2 (void) const
 
Time GetIntervalT20 (void) const
 
Time GetIntervalT21 (void) const
 
Time GetIntervalT3 (void) const
 
Time GetIntervalT7 (void) const
 
Ptr< IpcsClassifierGetIpcsClassifier () const
 
Ptr< SSLinkManagerGetLinkManager (void) const
 
Time GetLostDlMapInterval (void) const
 
Time GetLostUlMapInterval (void) const
 
uint8_t GetMaxContentionRangingRetries (void) const
 
Time GetMaxDcdInterval (void) const
 
Time GetMaxUcdInterval (void) const
 
WimaxPhy::ModulationType GetModulationType (void) const
 
Cid GetPrimaryCid (void) const
 
Ptr< WimaxConnectionGetPrimaryConnection (void) const
 
Ptr< SSSchedulerGetScheduler (void) const
 
Ptr< SsServiceFlowManagerGetServiceFlowManager (void) const
 
Time GetTimeToAllocation (Time deferTime)
 Get time to allocation. More...
 
bool HasServiceFlows (void) const
 
void InitSubscriberStationNetDevice (void)
 initializes the net device and sets the parameters to the default values More...
 
bool IsRegistered (void) const
 
void SendBurst (uint8_t uiuc, uint16_t nrSymbols, Ptr< WimaxConnection > connection, MacHeaderType::HeaderType packetType=MacHeaderType::HEADER_TYPE_GENERIC)
 Sends a burst on the uplink frame. More...
 
void SetAreManagementConnectionsAllocated (bool areManagementConnectionsAllocated)
 
void SetAreServiceFlowsAllocated (bool areServiceFlowsAllocated)
 
void SetBasicConnection (Ptr< WimaxConnection > basicConnection)
 
void SetIntervalT1 (Time interval1)
 
void SetIntervalT12 (Time interval12)
 
void SetIntervalT2 (Time interval2)
 
void SetIntervalT20 (Time interval20)
 
void SetIntervalT21 (Time interval21)
 
void SetIntervalT3 (Time interval3)
 
void SetIntervalT7 (Time interval7)
 
void SetIpcsPacketClassifier (Ptr< IpcsClassifier > classifier)
 Sets the packet classifier to be used. More...
 
void SetLinkManager (Ptr< SSLinkManager > linkManager)
 sets the link manager to be used More...
 
void SetLostDlMapInterval (Time lostDlMapInterval)
 
void SetLostUlMapInterval (Time lostUlMapInterval)
 
void SetMaxContentionRangingRetries (uint8_t maxContentionRangingRetries)
 
void SetMaxDcdInterval (Time maxDcdInterval)
 
void SetMaxUcdInterval (Time maxUcdInterval)
 
void SetModulationType (WimaxPhy::ModulationType modulationType)
 Set the most efficient modulation and coding scheme (MCS) supported by the device. More...
 
void SetPrimaryConnection (Ptr< WimaxConnection > primaryConnection)
 
void SetScheduler (Ptr< SSScheduler > ssScheduler)
 
void SetServiceFlowManager (Ptr< SsServiceFlowManager > sfm)
 Sets the service flow manager to be installed on the device. More...
 
void SetTimer (EventId eventId, EventId &event)
 Set timer. More...
 
void Start (void)
 Start the device. More...
 
void Stop (void)
 Stop the device. More...
 
- Public Member Functions inherited from ns3::WimaxNetDevice
 WimaxNetDevice (void)
 
virtual ~WimaxNetDevice (void)
 
virtual void AddLinkChangeCallback (Callback< void > callback)
 Add link change callback function. More...
 
void Attach (Ptr< WimaxChannel > channel)
 Attach device to channel. More...
 
void CreateDefaultConnections (void)
 Creates the initial ranging and broadcast connections. More...
 
void ForwardDown (Ptr< PacketBurst > burst, WimaxPhy::ModulationType modulationType)
 Forward a packet down the stack. More...
 
void ForwardUp (Ptr< Packet > packet, const Mac48Address &source, const Mac48Address &dest)
 Forward a packet to the next layer above the device. More...
 
virtual Address GetAddress (void) const
 Get address of the device. More...
 
Ptr< BandwidthManagerGetBandwidthManager (void) const
 Get the bandwidth manager on the device. More...
 
virtual Address GetBroadcast (void) const
 Get broadcast address. More...
 
Ptr< WimaxConnectionGetBroadcastConnection (void) const
 Get the broadcast connection. More...
 
Ptr< BurstProfileManagerGetBurstProfileManager (void) const
 Get the burst profile manager. More...
 
uint64_t GetChannel (uint8_t index) const
 Get the channel object by index. More...
 
virtual Ptr< ChannelGetChannel (void) const
 Get the channel. More...
 
Ptr< ConnectionManagerGetConnectionManager (void) const
 Get the connection manager of the device. More...
 
Dcd GetCurrentDcd (void) const
 Get the current DCD. More...
 
Ucd GetCurrentUcd (void) const
 Get the current UCD. More...
 
virtual uint32_t GetIfIndex (void) const
 Get interface index. More...
 
Ptr< WimaxConnectionGetInitialRangingConnection (void) const
 Get the initial ranging connection. More...
 
Mac48Address GetMacAddress (void) const
 Get the MAC address. More...
 
virtual uint16_t GetMtu (void) const
 Get MTU of the device. More...
 
virtual Address GetMulticast (void) const
 Get multicast address. More...
 
virtual Address GetMulticast (Ipv6Address addr) const
 Get the MAC multicast address corresponding to the IPv6 address provided. More...
 
virtual Address GetMulticast (Ipv4Address multicastGroup) const
 Make and return a MAC multicast address using the provided multicast group. More...
 
virtual std::string GetName (void) const
 Get device name. More...
 
virtual Ptr< NodeGetNode (void) const
 Get node pointer. More...
 
uint32_t GetNrFrames (void) const
 Get the number of frames. More...
 
Ptr< WimaxPhyGetPhy (void) const
 Get the physical layer object. More...
 
virtual Ptr< ChannelGetPhyChannel (void) const
 Get the channel (this method is redundant with GetChannel()) More...
 
NetDevice::PromiscReceiveCallback GetPromiscReceiveCallback (void)
 Get promiscious receive callback function. More...
 
uint16_t GetRtg (void) const
 Get receive/transmit transition gap. More...
 
uint8_t GetState (void) const
 Get the device state. More...
 
uint16_t GetTtg (void) const
 Get transmission/receive transition gap. More...
 
virtual bool IsBridge (void) const
 Return true if the net device is acting as a bridge. More...
 
virtual bool IsBroadcast (void) const
 Check if broadcast enabled. More...
 
virtual bool IsLinkUp (void) const
 Check if link is up. More...
 
virtual bool IsMulticast (void) const
 Check if multicast enabled. More...
 
virtual bool IsPointToPoint (void) const
 Check if device is a point-to-point device. More...
 
bool IsPromisc (void)
 Check if device is promiscious. More...
 
virtual Address MakeMulticastAddress (Ipv4Address multicastGroup) const
 Make multicast address. More...
 
virtual bool NeedsArp (void) const
 Check if device needs ARP. More...
 
void NotifyPromiscTrace (Ptr< Packet > p)
 Notify promiscious trace of a packet arrival. More...
 
virtual bool Send (Ptr< Packet > packet, const Address &dest, uint16_t protocolNumber)
 Send function. More...
 
virtual bool SendFrom (Ptr< Packet > packet, const Address &source, const Address &dest, uint16_t protocolNumber)
 Send a packet. More...
 
virtual void SetAddress (Address address)
 Set address of the device. More...
 
void SetBandwidthManager (Ptr< BandwidthManager > bandwidthManager)
 Set the bandwidth manager on the device. More...
 
void SetBurstProfileManager (Ptr< BurstProfileManager > burstProfileManager)
 Set the burst profile manager. More...
 
void SetChannel (Ptr< WimaxChannel > wimaxChannel)
 Set the channel object. More...
 
virtual void SetConnectionManager (Ptr< ConnectionManager > connectionManager)
 Set the connection manager of the device. More...
 
void SetCurrentDcd (Dcd dcd)
 Set the current DCD. More...
 
void SetCurrentUcd (Ucd ucd)
 Set the current UCD. More...
 
virtual void SetIfIndex (const uint32_t index)
 Set interface index. More...
 
virtual void SetLinkChangeCallback (Callback< void > callback)
 Set link change callback function. More...
 
void SetMacAddress (Mac48Address address)
 Set the MAC address. More...
 
virtual bool SetMtu (const uint16_t mtu)
 Set MTU value for the device. More...
 
virtual void SetName (const std::string name)
 Set device name. More...
 
virtual void SetNode (Ptr< Node > node)
 Set node pointer. More...
 
void SetNrFrames (uint32_t nrFrames)
 Set the number of frames. More...
 
void SetPhy (Ptr< WimaxPhy > phy)
 Set the physical layer object. More...
 
virtual void SetPromiscReceiveCallback (PromiscReceiveCallback cb)
 Set promiscious receive callback function. More...
 
void SetReceiveCallback (void)
 Set receive callback function. More...
 
virtual void SetReceiveCallback (NetDevice::ReceiveCallback cb)
 Set receive callback function. More...
 
void SetRtg (uint16_t rtg)
 Set receive/transmit transition gap. More...
 
void SetState (uint8_t state)
 Set the device state. More...
 
void SetTtg (uint16_t ttg)
 Set transmission/receive transition gap. More...
 
virtual bool SupportsSendFrom (void) const
 Check if device supports the SendFrom method. More...
 
- Public Member Functions inherited from ns3::NetDevice
virtual ~NetDevice ()
 
- Public Member Functions inherited from ns3::Object
 Object ()
 Constructor. More...
 
virtual ~Object ()
 Destructor. More...
 
void AggregateObject (Ptr< Object > other)
 Aggregate two Objects together. More...
 
void Dispose (void)
 Dispose of this Object. More...
 
AggregateIterator GetAggregateIterator (void) const
 Get an iterator to the Objects aggregated to this one. More...
 
virtual TypeId GetInstanceTypeId (void) const
 Get the most derived TypeId for this Object. More...
 
template<typename T >
Ptr< T > GetObject (void) const
 Get a pointer to the requested aggregated Object. More...
 
template<typename T >
Ptr< T > GetObject (TypeId tid) const
 Get a pointer to the requested aggregated Object by TypeId. More...
 
void Initialize (void)
 Invoke DoInitialize on all Objects aggregated to this one. More...
 
bool IsInitialized (void) const
 Check if the object has been initialized. More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 Default constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor. More...
 
void GetAttribute (std::string name, AttributeValue &value) const
 Get the value of an attribute, raising fatal errors if unsuccessful. More...
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising erros. More...
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful. More...
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors. More...
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context. More...
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context. More...
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context. More...
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::WimaxNetDevice
static TypeId GetTypeId (void)
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::NetDevice
static TypeId GetTypeId (void)
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId (void)
 Register this type. More...
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId (void)
 Get the type ID. More...
 

Public Attributes

Ptr< SSLinkManagerm_linkManager
 link manager More...
 
- Public Attributes inherited from ns3::WimaxNetDevice
TracedCallback< Ptr< const Packet >, const Mac48Address & > m_traceRx
 
TracedCallback< Ptr< const Packet >, const Mac48Address & > m_traceTx
 

Private Member Functions

void DoDispose (void)
 Destructor implementation. More...
 
void DoReceive (Ptr< Packet > packet)
 Receive a packet. More...
 
bool DoSend (Ptr< Packet > packet, const Mac48Address &source, const Mac48Address &dest, uint16_t protocolNumber)
 Send a packet. More...
 
void ProcessDcd (const Dcd &dcd)
 Process DCD. More...
 
void ProcessDlMap (const DlMap &dlmap)
 Process DL map. More...
 
void ProcessUcd (const Ucd &ucd)
 Process UCD. More...
 
void ProcessUlMap (const UlMap &ulmap)
 Process UL map. More...
 

Static Private Member Functions

static Time GetDefaultLostDlMapInterval ()
 Get default lost DL map interval. More...
 

Private Attributes

double m_allocationStartTime
 allocation start time More...
 
bool m_areManagementConnectionsAllocated
 are management connections allocated More...
 
bool m_areServiceFlowsAllocated
 are service flows allocated More...
 
Mac48Address m_baseStationId
 base station ID More...
 
Ptr< WimaxConnectionm_basicConnection
 basic connection More...
 
Ptr< IpcsClassifierm_classifier
 the classifier More...
 
uint8_t m_dcdCount
 DCD count. More...
 
EventId m_dcdWaitTimeoutEvent
 DCD wait timeout event. More...
 
OfdmDlBurstProfilem_dlBurstProfile
 DL burst profile. More...
 
Time m_intervalT1
 in seconds, wait for DCD timeout More...
 
Time m_intervalT12
 in seconds, wait for UCD descriptor More...
 
Time m_intervalT2
 in seconds, wait for broadcast ranging timeout, i.e., wait for initial ranging opportunity More...
 
Time m_intervalT20
 in seconds, time the SS searches for preambles on a given channel More...
 
Time m_intervalT21
 in seconds, time the SS searches for (decodable) DL-MAP on a given channel More...
 
Time m_intervalT3
 in milliseconds, ranging Response reception timeout following the transmission of a ranging request More...
 
Time m_intervalT7
 in seconds, wait for DSA/DSC/DSD Response timeout More...
 
EventId m_lostDlMapEvent
 lost DL map event More...
 
Time m_lostDlMapInterval
 in milliseconds, time since last received DL-MAP before downlink synchronization is considered lost, maximum is 600 More...
 
EventId m_lostUlMapEvent
 lost UL map event More...
 
Time m_lostUlMapInterval
 in milliseconds, time since last received UL-MAP before uplink synchronization is considered lost, maximum is 600 More...
 
uint8_t m_maxContentionRangingRetries
 maximum contention ranging retries More...
 
Time m_maxDcdInterval
 in seconds, maximum time between transmission of DCD messages More...
 
Time m_maxUcdInterval
 in seconds, maximum time between transmission of UCD messages More...
 
WimaxPhy::ModulationType m_modulationType
 modulation type More...
 
uint32_t m_nrDcdRecvd
 number DCD received More...
 
uint16_t m_nrDlMapElements
 number DL Map elements More...
 
uint32_t m_nrDlMapRecvd
 number DL map received More...
 
uint32_t m_nrUcdRecvd
 number UCD received More...
 
uint16_t m_nrUlMapElements
 number UL Map elements More...
 
uint32_t m_nrUlMapRecvd
 number UL map received More...
 
Ptr< WimaxConnectionm_primaryConnection
 primary connection More...
 
EventId m_rangOppWaitTimeoutEvent
 range opp wait timeout event More...
 
Ptr< SSSchedulerm_scheduler
 the scheduler More...
 
Ptr< SsServiceFlowManagerm_serviceFlowManager
 the service flow manager More...
 
TracedCallback< Ptr< const Packet > > m_ssPromiscRxTrace
 The trace source fired for packets successfully received by the device immediately before being forwarded up to higher layers (at the L2/L3 transition). More...
 
TracedCallback< Ptr< const Packet > > m_ssRxDropTrace
 The trace source fired when packets coming into the "top" of the device are dropped at the MAC layer during reception. More...
 
TracedCallback< Ptr< const Packet > > m_ssRxTrace
 The trace source fired for packets successfully received by the device immediately before being forwarded up to higher layers (at the L2/L3 transition). More...
 
TracedCallback< Ptr< const Packet > > m_ssTxDropTrace
 The trace source fired when packets coming into the "top" of the device are dropped at the MAC layer during transmission. More...
 
TracedCallback< Ptr< const Packet > > m_ssTxTrace
 The trace source fired when packets come into the "top" of the device at the L3/L2 transition, before being queued for transmission. More...
 
TracedCallback< Ptr< const Packet >, Mac48Address, const Cid & > m_traceSSRx
 trace SS receive callback More...
 
uint8_t m_ucdCount
 UCD count. More...
 
EventId m_ucdWaitTimeoutEvent
 UCD wait timeout event. More...
 
OfdmUlBurstProfilem_ulBurstProfile
 UL burst profile. More...
 

Additional Inherited Members

- Static Public Attributes inherited from ns3::WimaxNetDevice
static uint8_t m_direction = ~0
 downlink or uplink More...
 
static Time m_frameStartTime = Seconds (0)
 temp, to determine the frame start time at SS side, shall actually be determined by frame start preamble More...
 
- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 Copy an Object. More...
 
virtual void DoInitialize (void)
 Initialize() implementation. More...
 
virtual void NotifyNewAggregate (void)
 Notify all Objects aggregated to this one of a new Object being aggregated. More...
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes. More...
 
virtual void NotifyConstructionCompleted (void)
 Notifier called once the ObjectBase is fully constructed. More...
 

Detailed Description

SubscriberStationNetDevice subclass of WimaxNetDevice.


Config Paths

ns3::SubscriberStationNetDevice is accessible through the following paths with Config::Set and Config::Connect:

Attributes

Attributes defined in parent class ns3::WimaxNetDevice

TraceSources

TraceSources defined in parent class ns3::WimaxNetDevice

Size of this type is 880 bytes (on a 64-bit architecture).

Definition at line 48 of file ss-net-device.h.

Member Enumeration Documentation

◆ EventType

EventType enumeration.

Enumerator
EVENT_NONE 
EVENT_WAIT_FOR_RNG_RSP 
EVENT_DL_MAP_SYNC_TIMEOUT 
EVENT_LOST_DL_MAP 
EVENT_LOST_UL_MAP 
EVENT_DCD_WAIT_TIMEOUT 
EVENT_UCD_WAIT_TIMEOUT 
EVENT_RANG_OPP_WAIT_TIMEOUT 

Definition at line 68 of file ss-net-device.h.

◆ State

State enumeration.

Enumerator
SS_STATE_IDLE 
SS_STATE_SCANNING 
SS_STATE_SYNCHRONIZING 
SS_STATE_ACQUIRING_PARAMETERS 
SS_STATE_WAITING_REG_RANG_INTRVL 
SS_STATE_WAITING_INV_RANG_INTRVL 
SS_STATE_WAITING_RNG_RSP 
SS_STATE_ADJUSTING_PARAMETERS 
SS_STATE_REGISTERED 
SS_STATE_TRANSMITTING 
SS_STATE_STOPPED 

Definition at line 52 of file ss-net-device.h.

Constructor & Destructor Documentation

◆ SubscriberStationNetDevice() [1/2]

ns3::SubscriberStationNetDevice::SubscriberStationNetDevice ( void  )

Definition at line 210 of file ss-net-device.cc.

References InitSubscriberStationNetDevice().

◆ SubscriberStationNetDevice() [2/2]

ns3::SubscriberStationNetDevice::SubscriberStationNetDevice ( Ptr< Node node,
Ptr< WimaxPhy phy 
)

Constructor.

Parameters
nodethe node
phythe wimax phy

Definition at line 256 of file ss-net-device.cc.

References InitSubscriberStationNetDevice(), ns3::WimaxNetDevice::SetNode(), and ns3::WimaxNetDevice::SetPhy().

◆ ~SubscriberStationNetDevice()

ns3::SubscriberStationNetDevice::~SubscriberStationNetDevice ( void  )

Definition at line 263 of file ss-net-device.cc.

Member Function Documentation

◆ AddServiceFlow() [1/2]

void ns3::SubscriberStationNetDevice::AddServiceFlow ( ServiceFlow sf)

adds a new service flow

Parameters
sfpointer to service flow to add

Definition at line 582 of file ss-net-device.cc.

References GetServiceFlowManager().

◆ AddServiceFlow() [2/2]

void ns3::SubscriberStationNetDevice::AddServiceFlow ( ServiceFlow  sf)

adds a new service flow

Parameters
sfservice flow to add

Definition at line 576 of file ss-net-device.cc.

References GetServiceFlowManager().

◆ DoDispose()

void ns3::SubscriberStationNetDevice::DoDispose ( void  )
privatevirtual

Destructor implementation.

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

Subclasses are expected to implement their real destruction code in an overridden 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::WimaxNetDevice.

Definition at line 268 of file ss-net-device.cc.

References ns3::WimaxNetDevice::DoDispose(), m_basicConnection, m_classifier, m_dlBurstProfile, m_linkManager, m_primaryConnection, m_scheduler, m_serviceFlowManager, and m_ulBurstProfile.

◆ DoReceive()

void ns3::SubscriberStationNetDevice::DoReceive ( Ptr< Packet packet)
privatevirtual

Receive a packet.

Parameters
packetthe packet received

Implements ns3::WimaxNetDevice.

Definition at line 740 of file ss-net-device.cc.

References ns3::Packet::AddAtEnd(), ns3::Simulator::Cancel(), ns3::GenericMacHeader::check_hcs(), EVENT_DCD_WAIT_TIMEOUT, EVENT_LOST_DL_MAP, EVENT_LOST_UL_MAP, EVENT_RANG_OPP_WAIT_TIMEOUT, EVENT_UCD_WAIT_TIMEOUT, ns3::WimaxNetDevice::ForwardUp(), ns3::WimaxNetDevice::GetBroadcastConnection(), ns3::GenericMacHeader::GetCid(), ns3::WimaxNetDevice::GetConnectionManager(), ns3::FragmentationSubheader::GetFc(), ns3::GenericMacHeader::GetHt(), ns3::WimaxNetDevice::GetInitialRangingConnection(), ns3::WimaxNetDevice::GetMacAddress(), ns3::ServiceFlow::GetRecord(), GetServiceFlowManager(), ns3::Packet::GetSize(), ns3::WimaxNetDevice::GetState(), ns3::ManagementMessageType::GetType(), ns3::GenericMacHeader::GetType(), ns3::MacHeaderType::HEADER_TYPE_GENERIC, ns3::Cid::IsMulticast(), ns3::WimaxNetDevice::IsPromisc(), ns3::EventId::IsRunning(), list, m_baseStationId, m_basicConnection, m_dcdWaitTimeoutEvent, m_intervalT1, m_intervalT12, m_intervalT2, m_linkManager, m_lostDlMapEvent, m_lostDlMapInterval, m_lostUlMapEvent, m_lostUlMapInterval, m_primaryConnection, m_rangOppWaitTimeoutEvent, m_ssPromiscRxTrace, m_ssRxDropTrace, m_ssRxTrace, m_traceSSRx, m_ucdWaitTimeoutEvent, ns3::ManagementMessageType::MESSAGE_TYPE_DCD, ns3::ManagementMessageType::MESSAGE_TYPE_DL_MAP, ns3::ManagementMessageType::MESSAGE_TYPE_DSA_ACK, ns3::ManagementMessageType::MESSAGE_TYPE_DSA_REQ, ns3::ManagementMessageType::MESSAGE_TYPE_DSA_RSP, ns3::ManagementMessageType::MESSAGE_TYPE_REG_REQ, ns3::ManagementMessageType::MESSAGE_TYPE_REG_RSP, ns3::ManagementMessageType::MESSAGE_TYPE_RNG_REQ, ns3::ManagementMessageType::MESSAGE_TYPE_RNG_RSP, ns3::ManagementMessageType::MESSAGE_TYPE_UCD, ns3::ManagementMessageType::MESSAGE_TYPE_UL_MAP, ns3::WimaxNetDevice::NotifyPromiscTrace(), NS_ASSERT_MSG(), NS_FATAL_ERROR, NS_LOG_ERROR, NS_LOG_INFO, ProcessDcd(), ProcessDlMap(), ProcessUcd(), ProcessUlMap(), ns3::Packet::RemoveHeader(), ns3::Dcd::SetNrDlBurstProfiles(), ns3::Ucd::SetNrUlBurstProfiles(), ns3::WimaxNetDevice::SetState(), SS_STATE_ACQUIRING_PARAMETERS, SS_STATE_SYNCHRONIZING, SS_STATE_WAITING_REG_RANG_INTRVL, SS_STATE_WAITING_RNG_RSP, ns3::ServiceFlowRecord::UpdateBytesRcvd(), and ns3::ServiceFlowRecord::UpdatePktsRcvd().

◆ DoSend()

bool ns3::SubscriberStationNetDevice::DoSend ( Ptr< Packet packet,
const Mac48Address source,
const Mac48Address dest,
uint16_t  protocolNumber 
)
privatevirtual

◆ Enqueue()

bool ns3::SubscriberStationNetDevice::Enqueue ( Ptr< Packet packet,
const MacHeaderType hdrType,
Ptr< WimaxConnection connection 
)
virtual

Enqueue a packet into a connection queue.

Parameters
packetthe packet to be enqueued
hdrTypethe mac header type to be appended to the packet
connectionthe connection to be used
Returns
true if successful

Implements ns3::WimaxNetDevice.

Definition at line 657 of file ss-net-device.cc.

References ns3::Packet::AddHeader(), ns3::GenericMacHeader::GetSerializedSize(), ns3::Packet::GetSize(), ns3::MacHeaderType::GetType(), ns3::MacHeaderType::HEADER_TYPE_BANDWIDTH, ns3::MacHeaderType::HEADER_TYPE_GENERIC, m_scheduler, NS_ASSERT_MSG(), NS_LOG_INFO, ns3::GenericMacHeader::SetCid(), ns3::GenericMacHeader::SetLen(), ns3::GrantManagementSubheader::SetPm(), ns3::ServiceFlow::SF_TYPE_UGS, and ns3::Cid::TRANSPORT.

Referenced by DoSend().

◆ GetAreManagementConnectionsAllocated()

bool ns3::SubscriberStationNetDevice::GetAreManagementConnectionsAllocated ( void  ) const
Returns
true if the management connections are allocated, false otherwise

Definition at line 484 of file ss-net-device.cc.

References m_areManagementConnectionsAllocated.

◆ GetAreServiceFlowsAllocated()

bool ns3::SubscriberStationNetDevice::GetAreServiceFlowsAllocated ( void  ) const
Returns
true if the service flows are allocated, false otherwise

Definition at line 496 of file ss-net-device.cc.

References m_areServiceFlowsAllocated.

◆ GetBasicCid()

Cid ns3::SubscriberStationNetDevice::GetBasicCid ( void  ) const
Returns
the basic CID

Definition at line 454 of file ss-net-device.cc.

References m_basicConnection.

◆ GetBasicConnection()

Ptr< WimaxConnection > ns3::SubscriberStationNetDevice::GetBasicConnection ( void  ) const
Returns
the basic connection currently in use

Definition at line 436 of file ss-net-device.cc.

References m_basicConnection.

◆ GetDefaultLostDlMapInterval()

Time ns3::SubscriberStationNetDevice::GetDefaultLostDlMapInterval ( )
staticprivate

Get default lost DL map interval.

Returns
the default lost DL map interval

Definition at line 50 of file ss-net-device.cc.

References ns3::MicroSeconds().

◆ GetIntervalT1()

Time ns3::SubscriberStationNetDevice::GetIntervalT1 ( void  ) const
Returns
the wait for DCD timeout

Definition at line 340 of file ss-net-device.cc.

References m_intervalT1.

Referenced by GetTypeId().

◆ GetIntervalT12()

Time ns3::SubscriberStationNetDevice::GetIntervalT12 ( void  ) const
Returns
the wait for UCD descriptor timeout

Definition at line 388 of file ss-net-device.cc.

References m_intervalT12.

Referenced by GetTypeId().

◆ GetIntervalT2()

Time ns3::SubscriberStationNetDevice::GetIntervalT2 ( void  ) const
Returns
the wait for broadcast ranging timeout, i.e., wait for initial ranging opportunity

Definition at line 352 of file ss-net-device.cc.

References m_intervalT2.

Referenced by GetTypeId().

◆ GetIntervalT20()

Time ns3::SubscriberStationNetDevice::GetIntervalT20 ( void  ) const
Returns
the Time the SS searches for preambles on a given channel

Definition at line 400 of file ss-net-device.cc.

References m_intervalT20.

Referenced by GetTypeId().

◆ GetIntervalT21()

Time ns3::SubscriberStationNetDevice::GetIntervalT21 ( void  ) const
Returns
the time the SS searches for (decodable) DL-MAP on a given channel

Definition at line 412 of file ss-net-device.cc.

References m_intervalT21.

Referenced by GetTypeId().

◆ GetIntervalT3()

Time ns3::SubscriberStationNetDevice::GetIntervalT3 ( void  ) const
Returns
the ranging Response reception timeout following the transmission of a ranging request

Definition at line 364 of file ss-net-device.cc.

References m_intervalT3.

Referenced by GetTypeId().

◆ GetIntervalT7()

Time ns3::SubscriberStationNetDevice::GetIntervalT7 ( void  ) const
Returns
the wait for DSA/DSC/DSD Response timeout

Definition at line 376 of file ss-net-device.cc.

References m_intervalT7.

Referenced by GetTypeId().

◆ GetIpcsClassifier()

Ptr< IpcsClassifier > ns3::SubscriberStationNetDevice::GetIpcsClassifier ( ) const
Returns
a pointer to the CS packet classifier

Definition at line 520 of file ss-net-device.cc.

References m_classifier.

Referenced by GetTypeId().

◆ GetLinkManager()

Ptr< SSLinkManager > ns3::SubscriberStationNetDevice::GetLinkManager ( void  ) const
Returns
a pointer to the link manager currently used

Definition at line 533 of file ss-net-device.cc.

References m_linkManager.

Referenced by GetTypeId().

◆ GetLostDlMapInterval()

Time ns3::SubscriberStationNetDevice::GetLostDlMapInterval ( void  ) const
Returns
the time since last received DL-MAP message before downlink synchronization is considered lost

Definition at line 292 of file ss-net-device.cc.

References m_lostDlMapInterval.

Referenced by GetTypeId().

◆ GetLostUlMapInterval()

Time ns3::SubscriberStationNetDevice::GetLostUlMapInterval ( void  ) const
Returns
the time since last received UL-MAP before uplink synchronization is considered lost

Definition at line 304 of file ss-net-device.cc.

References m_lostUlMapInterval.

Referenced by GetTypeId().

◆ GetMaxContentionRangingRetries()

uint8_t ns3::SubscriberStationNetDevice::GetMaxContentionRangingRetries ( void  ) const
Returns
the Number of retries on contention Ranging Requests

Definition at line 424 of file ss-net-device.cc.

References m_maxContentionRangingRetries.

Referenced by GetTypeId().

◆ GetMaxDcdInterval()

Time ns3::SubscriberStationNetDevice::GetMaxDcdInterval ( void  ) const
Returns
the maximum time between transmission of DCD messages

Definition at line 316 of file ss-net-device.cc.

References m_maxDcdInterval.

Referenced by GetTypeId().

◆ GetMaxUcdInterval()

Time ns3::SubscriberStationNetDevice::GetMaxUcdInterval ( void  ) const
Returns
the maximum time between transmission of UCD messages

Definition at line 328 of file ss-net-device.cc.

References m_maxUcdInterval.

Referenced by GetTypeId().

◆ GetModulationType()

WimaxPhy::ModulationType ns3::SubscriberStationNetDevice::GetModulationType ( void  ) const
Returns
the most efficient modulation and coding scheme (MCS) supported by the device

Definition at line 472 of file ss-net-device.cc.

References m_modulationType.

Referenced by ns3::BurstProfileManager::GetBurstProfileToRequest().

◆ GetPrimaryCid()

Cid ns3::SubscriberStationNetDevice::GetPrimaryCid ( void  ) const
Returns
the primary CID

Definition at line 460 of file ss-net-device.cc.

References m_primaryConnection.

◆ GetPrimaryConnection()

Ptr< WimaxConnection > ns3::SubscriberStationNetDevice::GetPrimaryConnection ( void  ) const
Returns
the primary connection currently used

Definition at line 448 of file ss-net-device.cc.

References m_primaryConnection.

◆ GetScheduler()

Ptr< SSScheduler > ns3::SubscriberStationNetDevice::GetScheduler ( void  ) const
Returns
the scheduler installed on the device

Definition at line 502 of file ss-net-device.cc.

References m_scheduler.

Referenced by GetTypeId().

◆ GetServiceFlowManager()

Ptr< SsServiceFlowManager > ns3::SubscriberStationNetDevice::GetServiceFlowManager ( void  ) const
Returns
a pointer to the service flow manager installed on the device

Definition at line 545 of file ss-net-device.cc.

References m_serviceFlowManager.

Referenced by AddServiceFlow(), DoReceive(), DoSend(), and HasServiceFlows().

◆ GetTimeToAllocation()

Time ns3::SubscriberStationNetDevice::GetTimeToAllocation ( Time  deferTime)

Get time to allocation.

Parameters
deferTimedefer time
Returns
the time to allocation

Definition at line 1266 of file ss-net-device.cc.

References ns3::WimaxNetDevice::GetPhy(), m_allocationStartTime, ns3::WimaxNetDevice::m_frameStartTime, ns3::Simulator::Now(), and ns3::Seconds().

Referenced by ProcessUlMap().

◆ GetTypeId()

TypeId ns3::SubscriberStationNetDevice::GetTypeId ( void  )
static

◆ HasServiceFlows()

bool ns3::SubscriberStationNetDevice::HasServiceFlows ( void  ) const
Returns
true if the device has at least one active service flow, false otherwise

Definition at line 514 of file ss-net-device.cc.

References GetServiceFlowManager(), and ns3::ServiceFlow::SF_TYPE_ALL.

◆ InitSubscriberStationNetDevice()

void ns3::SubscriberStationNetDevice::InitSubscriberStationNetDevice ( void  )

◆ IsRegistered()

bool ns3::SubscriberStationNetDevice::IsRegistered ( void  ) const
Returns
true if the SS is registered to a BS, false otherwise

Definition at line 1260 of file ss-net-device.cc.

References ns3::WimaxNetDevice::GetState(), and SS_STATE_REGISTERED.

Referenced by DoSend(), and SendBurst().

◆ ProcessDcd()

void ns3::SubscriberStationNetDevice::ProcessDcd ( const Dcd dcd)
private

◆ ProcessDlMap()

void ns3::SubscriberStationNetDevice::ProcessDlMap ( const DlMap dlmap)
private

◆ ProcessUcd()

void ns3::SubscriberStationNetDevice::ProcessUcd ( const Ucd ucd)
private

◆ ProcessUlMap()

void ns3::SubscriberStationNetDevice::ProcessUlMap ( const UlMap ulmap)
private

◆ SendBurst()

void ns3::SubscriberStationNetDevice::SendBurst ( uint8_t  uiuc,
uint16_t  nrSymbols,
Ptr< WimaxConnection connection,
MacHeaderType::HeaderType  packetType = MacHeaderType::HEADER_TYPE_GENERIC 
)

◆ SetAreManagementConnectionsAllocated()

void ns3::SubscriberStationNetDevice::SetAreManagementConnectionsAllocated ( bool  areManagementConnectionsAllocated)
Parameters
areManagementConnectionsAllocatedtrue if the management connections are allocated, false otherwise

Definition at line 478 of file ss-net-device.cc.

References m_areManagementConnectionsAllocated.

◆ SetAreServiceFlowsAllocated()

void ns3::SubscriberStationNetDevice::SetAreServiceFlowsAllocated ( bool  areServiceFlowsAllocated)
Parameters
areServiceFlowsAllocatedtrue if the service flows are allocated, false otherwise

Definition at line 490 of file ss-net-device.cc.

References m_areServiceFlowsAllocated.

◆ SetBasicConnection()

void ns3::SubscriberStationNetDevice::SetBasicConnection ( Ptr< WimaxConnection basicConnection)
Parameters
basicConnectionthe basic connection to be used

Definition at line 430 of file ss-net-device.cc.

References m_basicConnection.

◆ SetIntervalT1()

void ns3::SubscriberStationNetDevice::SetIntervalT1 ( Time  interval1)
Parameters
interval1Wait for DCD timeout value

Definition at line 334 of file ss-net-device.cc.

References m_intervalT1.

Referenced by GetTypeId().

◆ SetIntervalT12()

void ns3::SubscriberStationNetDevice::SetIntervalT12 ( Time  interval12)
Parameters
interval12the Wait for UCD descriptor timeout

Definition at line 382 of file ss-net-device.cc.

References m_intervalT12.

Referenced by GetTypeId().

◆ SetIntervalT2()

void ns3::SubscriberStationNetDevice::SetIntervalT2 ( Time  interval2)
Parameters
interval2the wait for broadcast ranging timeout, i.e., wait for initial ranging opportunity

Definition at line 346 of file ss-net-device.cc.

References m_intervalT2.

Referenced by GetTypeId().

◆ SetIntervalT20()

void ns3::SubscriberStationNetDevice::SetIntervalT20 ( Time  interval20)
Parameters
interval20the Time the SS searches for preambles on a given channel

Definition at line 394 of file ss-net-device.cc.

References m_intervalT20.

Referenced by GetTypeId().

◆ SetIntervalT21()

void ns3::SubscriberStationNetDevice::SetIntervalT21 ( Time  interval21)
Parameters
interval21the time the SS searches for (decodable) DL-MAP on a given channel

Definition at line 406 of file ss-net-device.cc.

References m_intervalT21.

Referenced by GetTypeId().

◆ SetIntervalT3()

void ns3::SubscriberStationNetDevice::SetIntervalT3 ( Time  interval3)
Parameters
interval3the ranging Response reception timeout following the transmission of a ranging request

Definition at line 358 of file ss-net-device.cc.

References m_intervalT3.

Referenced by GetTypeId().

◆ SetIntervalT7()

void ns3::SubscriberStationNetDevice::SetIntervalT7 ( Time  interval7)
Parameters
interval7the wait for DSA/DSC/DSD Response timeout

Definition at line 370 of file ss-net-device.cc.

References m_intervalT7.

Referenced by GetTypeId().

◆ SetIpcsPacketClassifier()

void ns3::SubscriberStationNetDevice::SetIpcsPacketClassifier ( Ptr< IpcsClassifier classifier)

Sets the packet classifier to be used.

Parameters
classifierthe classifier to use

Definition at line 527 of file ss-net-device.cc.

References m_classifier.

Referenced by GetTypeId().

◆ SetLinkManager()

void ns3::SubscriberStationNetDevice::SetLinkManager ( Ptr< SSLinkManager linkManager)

sets the link manager to be used

Parameters
linkManagerlink manager to use

Definition at line 539 of file ss-net-device.cc.

References m_linkManager.

Referenced by GetTypeId().

◆ SetLostDlMapInterval()

void ns3::SubscriberStationNetDevice::SetLostDlMapInterval ( Time  lostDlMapInterval)
Parameters
lostDlMapIntervaltime since last received DL-MAP message before downlink synchronization is considered lost

Definition at line 286 of file ss-net-device.cc.

References m_lostDlMapInterval.

Referenced by GetTypeId().

◆ SetLostUlMapInterval()

void ns3::SubscriberStationNetDevice::SetLostUlMapInterval ( Time  lostUlMapInterval)
Parameters
lostUlMapIntervalTime since last received UL-MAP before uplink synchronization is considered lost

Definition at line 298 of file ss-net-device.cc.

References m_lostUlMapInterval.

Referenced by GetTypeId().

◆ SetMaxContentionRangingRetries()

void ns3::SubscriberStationNetDevice::SetMaxContentionRangingRetries ( uint8_t  maxContentionRangingRetries)
Parameters
maxContentionRangingRetriesthe Number of retries on contention Ranging Requests

Definition at line 418 of file ss-net-device.cc.

References m_maxContentionRangingRetries.

Referenced by GetTypeId().

◆ SetMaxDcdInterval()

void ns3::SubscriberStationNetDevice::SetMaxDcdInterval ( Time  maxDcdInterval)
Parameters
maxDcdIntervalMaximum time between transmission of DCD messages

Definition at line 310 of file ss-net-device.cc.

References m_maxDcdInterval.

Referenced by GetTypeId().

◆ SetMaxUcdInterval()

void ns3::SubscriberStationNetDevice::SetMaxUcdInterval ( Time  maxUcdInterval)
Parameters
maxUcdIntervalMaximum time between transmission of UCD messages

Definition at line 322 of file ss-net-device.cc.

References m_maxUcdInterval.

Referenced by GetTypeId().

◆ SetModulationType()

void ns3::SubscriberStationNetDevice::SetModulationType ( WimaxPhy::ModulationType  modulationType)

Set the most efficient modulation and coding scheme (MCS) supported by the device.

Parameters
modulationTypethe most robust MCS supported

Definition at line 466 of file ss-net-device.cc.

References m_modulationType.

◆ SetPrimaryConnection()

void ns3::SubscriberStationNetDevice::SetPrimaryConnection ( Ptr< WimaxConnection primaryConnection)
Parameters
primaryConnectionthe primary connection to be used

Definition at line 442 of file ss-net-device.cc.

References m_primaryConnection.

◆ SetScheduler()

void ns3::SubscriberStationNetDevice::SetScheduler ( Ptr< SSScheduler ssScheduler)
Parameters
ssSchedulerthe scheduler to be installed on the device

Definition at line 508 of file ss-net-device.cc.

References m_scheduler.

Referenced by GetTypeId().

◆ SetServiceFlowManager()

void ns3::SubscriberStationNetDevice::SetServiceFlowManager ( Ptr< SsServiceFlowManager sfm)

Sets the service flow manager to be installed on the device.

Parameters
sfmservice flow manager to be used

Definition at line 551 of file ss-net-device.cc.

References m_serviceFlowManager.

◆ SetTimer()

void ns3::SubscriberStationNetDevice::SetTimer ( EventId  eventId,
EventId event 
)

Set timer.

If in stopped state, the EventId passed in the first argument will be cancelled. If not, the second parameter will be set to the value of the first parameter.

Parameters
eventIdEventId to cancel or to map to the second argument
eventEventId is set to first argument if not in stopped state

Definition at line 1275 of file ss-net-device.cc.

References ns3::Simulator::Cancel(), ns3::WimaxNetDevice::GetState(), and SS_STATE_STOPPED.

◆ Start()

void ns3::SubscriberStationNetDevice::Start ( void  )
virtual

◆ Stop()

void ns3::SubscriberStationNetDevice::Stop ( void  )
virtual

Stop the device.

Implements ns3::WimaxNetDevice.

Definition at line 570 of file ss-net-device.cc.

References ns3::WimaxNetDevice::SetState(), and SS_STATE_STOPPED.

Member Data Documentation

◆ m_allocationStartTime

double ns3::SubscriberStationNetDevice::m_allocationStartTime
private

allocation start time

Definition at line 409 of file ss-net-device.h.

Referenced by GetTimeToAllocation(), InitSubscriberStationNetDevice(), and ProcessUlMap().

◆ m_areManagementConnectionsAllocated

bool ns3::SubscriberStationNetDevice::m_areManagementConnectionsAllocated
private

are management connections allocated

Definition at line 436 of file ss-net-device.h.

Referenced by GetAreManagementConnectionsAllocated(), InitSubscriberStationNetDevice(), ProcessUlMap(), and SetAreManagementConnectionsAllocated().

◆ m_areServiceFlowsAllocated

bool ns3::SubscriberStationNetDevice::m_areServiceFlowsAllocated
private

are service flows allocated

Definition at line 437 of file ss-net-device.h.

Referenced by GetAreServiceFlowsAllocated(), InitSubscriberStationNetDevice(), and SetAreServiceFlowsAllocated().

◆ m_baseStationId

Mac48Address ns3::SubscriberStationNetDevice::m_baseStationId
private

base station ID

Definition at line 405 of file ss-net-device.h.

Referenced by DoReceive(), InitSubscriberStationNetDevice(), and ProcessDlMap().

◆ m_basicConnection

Ptr<WimaxConnection> ns3::SubscriberStationNetDevice::m_basicConnection
private

◆ m_classifier

Ptr<IpcsClassifier> ns3::SubscriberStationNetDevice::m_classifier
private

◆ m_dcdCount

uint8_t ns3::SubscriberStationNetDevice::m_dcdCount
private

DCD count.

Definition at line 404 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice(), and ProcessDlMap().

◆ m_dcdWaitTimeoutEvent

EventId ns3::SubscriberStationNetDevice::m_dcdWaitTimeoutEvent
private

DCD wait timeout event.

Definition at line 420 of file ss-net-device.h.

Referenced by DoReceive().

◆ m_dlBurstProfile

OfdmDlBurstProfile* ns3::SubscriberStationNetDevice::m_dlBurstProfile
private

DL burst profile.

Definition at line 429 of file ss-net-device.h.

Referenced by DoDispose(), InitSubscriberStationNetDevice(), and ProcessDcd().

◆ m_intervalT1

Time ns3::SubscriberStationNetDevice::m_intervalT1
private

in seconds, wait for DCD timeout

Definition at line 394 of file ss-net-device.h.

Referenced by DoReceive(), GetIntervalT1(), InitSubscriberStationNetDevice(), and SetIntervalT1().

◆ m_intervalT12

Time ns3::SubscriberStationNetDevice::m_intervalT12
private

in seconds, wait for UCD descriptor

Definition at line 398 of file ss-net-device.h.

Referenced by DoReceive(), GetIntervalT12(), InitSubscriberStationNetDevice(), and SetIntervalT12().

◆ m_intervalT2

Time ns3::SubscriberStationNetDevice::m_intervalT2
private

in seconds, wait for broadcast ranging timeout, i.e., wait for initial ranging opportunity

Definition at line 395 of file ss-net-device.h.

Referenced by DoReceive(), GetIntervalT2(), InitSubscriberStationNetDevice(), and SetIntervalT2().

◆ m_intervalT20

Time ns3::SubscriberStationNetDevice::m_intervalT20
private

in seconds, time the SS searches for preambles on a given channel

Definition at line 399 of file ss-net-device.h.

Referenced by GetIntervalT20(), SetIntervalT20(), and Start().

◆ m_intervalT21

Time ns3::SubscriberStationNetDevice::m_intervalT21
private

in seconds, time the SS searches for (decodable) DL-MAP on a given channel

Definition at line 400 of file ss-net-device.h.

Referenced by GetIntervalT21(), InitSubscriberStationNetDevice(), and SetIntervalT21().

◆ m_intervalT3

Time ns3::SubscriberStationNetDevice::m_intervalT3
private

in milliseconds, ranging Response reception timeout following the transmission of a ranging request

Definition at line 396 of file ss-net-device.h.

Referenced by GetIntervalT3(), InitSubscriberStationNetDevice(), and SetIntervalT3().

◆ m_intervalT7

Time ns3::SubscriberStationNetDevice::m_intervalT7
private

in seconds, wait for DSA/DSC/DSD Response timeout

Definition at line 397 of file ss-net-device.h.

Referenced by GetIntervalT7(), InitSubscriberStationNetDevice(), and SetIntervalT7().

◆ m_linkManager

Ptr<SSLinkManager> ns3::SubscriberStationNetDevice::m_linkManager

◆ m_lostDlMapEvent

EventId ns3::SubscriberStationNetDevice::m_lostDlMapEvent
private

lost DL map event

Definition at line 418 of file ss-net-device.h.

Referenced by DoReceive().

◆ m_lostDlMapInterval

Time ns3::SubscriberStationNetDevice::m_lostDlMapInterval
private

in milliseconds, time since last received DL-MAP before downlink synchronization is considered lost, maximum is 600

Definition at line 390 of file ss-net-device.h.

Referenced by DoReceive(), GetLostDlMapInterval(), InitSubscriberStationNetDevice(), and SetLostDlMapInterval().

◆ m_lostUlMapEvent

EventId ns3::SubscriberStationNetDevice::m_lostUlMapEvent
private

lost UL map event

Definition at line 419 of file ss-net-device.h.

Referenced by DoReceive().

◆ m_lostUlMapInterval

Time ns3::SubscriberStationNetDevice::m_lostUlMapInterval
private

in milliseconds, time since last received UL-MAP before uplink synchronization is considered lost, maximum is 600

Definition at line 391 of file ss-net-device.h.

Referenced by DoReceive(), GetLostUlMapInterval(), InitSubscriberStationNetDevice(), and SetLostUlMapInterval().

◆ m_maxContentionRangingRetries

uint8_t ns3::SubscriberStationNetDevice::m_maxContentionRangingRetries
private

maximum contention ranging retries

Definition at line 401 of file ss-net-device.h.

Referenced by GetMaxContentionRangingRetries(), InitSubscriberStationNetDevice(), and SetMaxContentionRangingRetries().

◆ m_maxDcdInterval

Time ns3::SubscriberStationNetDevice::m_maxDcdInterval
private

in seconds, maximum time between transmission of DCD messages

Definition at line 392 of file ss-net-device.h.

Referenced by GetMaxDcdInterval(), InitSubscriberStationNetDevice(), and SetMaxDcdInterval().

◆ m_maxUcdInterval

Time ns3::SubscriberStationNetDevice::m_maxUcdInterval
private

in seconds, maximum time between transmission of UCD messages

Definition at line 393 of file ss-net-device.h.

Referenced by GetMaxUcdInterval(), InitSubscriberStationNetDevice(), and SetMaxUcdInterval().

◆ m_modulationType

WimaxPhy::ModulationType ns3::SubscriberStationNetDevice::m_modulationType
private

modulation type

Definition at line 434 of file ss-net-device.h.

Referenced by GetModulationType(), InitSubscriberStationNetDevice(), ProcessDcd(), ProcessUcd(), and SetModulationType().

◆ m_nrDcdRecvd

uint32_t ns3::SubscriberStationNetDevice::m_nrDcdRecvd
private

number DCD received

Definition at line 426 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice(), and ProcessDcd().

◆ m_nrDlMapElements

uint16_t ns3::SubscriberStationNetDevice::m_nrDlMapElements
private

number DL Map elements

Definition at line 412 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice().

◆ m_nrDlMapRecvd

uint32_t ns3::SubscriberStationNetDevice::m_nrDlMapRecvd
private

number DL map received

Definition at line 424 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice(), and ProcessDlMap().

◆ m_nrUcdRecvd

uint32_t ns3::SubscriberStationNetDevice::m_nrUcdRecvd
private

number UCD received

Definition at line 427 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice(), and ProcessUcd().

◆ m_nrUlMapElements

uint16_t ns3::SubscriberStationNetDevice::m_nrUlMapElements
private

number UL Map elements

Definition at line 413 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice().

◆ m_nrUlMapRecvd

uint32_t ns3::SubscriberStationNetDevice::m_nrUlMapRecvd
private

number UL map received

Definition at line 425 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice(), and ProcessUlMap().

◆ m_primaryConnection

Ptr<WimaxConnection> ns3::SubscriberStationNetDevice::m_primaryConnection
private

◆ m_rangOppWaitTimeoutEvent

EventId ns3::SubscriberStationNetDevice::m_rangOppWaitTimeoutEvent
private

range opp wait timeout event

Definition at line 422 of file ss-net-device.h.

Referenced by DoReceive().

◆ m_scheduler

Ptr<SSScheduler> ns3::SubscriberStationNetDevice::m_scheduler
private

the scheduler

Definition at line 439 of file ss-net-device.h.

Referenced by DoDispose(), Enqueue(), GetScheduler(), InitSubscriberStationNetDevice(), SendBurst(), and SetScheduler().

◆ m_serviceFlowManager

Ptr<SsServiceFlowManager> ns3::SubscriberStationNetDevice::m_serviceFlowManager
private

the service flow manager

Definition at line 440 of file ss-net-device.h.

Referenced by DoDispose(), GetServiceFlowManager(), InitSubscriberStationNetDevice(), and SetServiceFlowManager().

◆ m_ssPromiscRxTrace

TracedCallback<Ptr<const Packet> > ns3::SubscriberStationNetDevice::m_ssPromiscRxTrace
private

The trace source fired for packets successfully received by the device immediately before being forwarded up to higher layers (at the L2/L3 transition).

This is a promiscuous trace.

See also
class CallBackTraceSource

Definition at line 468 of file ss-net-device.h.

Referenced by DoReceive(), and GetTypeId().

◆ m_ssRxDropTrace

TracedCallback<Ptr<const Packet> > ns3::SubscriberStationNetDevice::m_ssRxDropTrace
private

The trace source fired when packets coming into the "top" of the device are dropped at the MAC layer during reception.

See also
class CallBackTraceSource

Definition at line 485 of file ss-net-device.h.

Referenced by DoReceive(), and GetTypeId().

◆ m_ssRxTrace

TracedCallback<Ptr<const Packet> > ns3::SubscriberStationNetDevice::m_ssRxTrace
private

The trace source fired for packets successfully received by the device immediately before being forwarded up to higher layers (at the L2/L3 transition).

This is a non- promiscuous trace.

See also
class CallBackTraceSource

Definition at line 477 of file ss-net-device.h.

Referenced by DoReceive(), and GetTypeId().

◆ m_ssTxDropTrace

TracedCallback<Ptr<const Packet> > ns3::SubscriberStationNetDevice::m_ssTxDropTrace
private

The trace source fired when packets coming into the "top" of the device are dropped at the MAC layer during transmission.

See also
class CallBackTraceSource

Definition at line 459 of file ss-net-device.h.

Referenced by DoSend(), and GetTypeId().

◆ m_ssTxTrace

TracedCallback<Ptr<const Packet> > ns3::SubscriberStationNetDevice::m_ssTxTrace
private

The trace source fired when packets come into the "top" of the device at the L3/L2 transition, before being queued for transmission.

See also
class CallBackTraceSource

Definition at line 451 of file ss-net-device.h.

Referenced by DoSend().

◆ m_traceSSRx

TracedCallback<Ptr<const Packet>, Mac48Address, const Cid &> ns3::SubscriberStationNetDevice::m_traceSSRx
private

trace SS receive callback

Definition at line 443 of file ss-net-device.h.

Referenced by DoReceive().

◆ m_ucdCount

uint8_t ns3::SubscriberStationNetDevice::m_ucdCount
private

UCD count.

Definition at line 408 of file ss-net-device.h.

Referenced by InitSubscriberStationNetDevice(), and ProcessUlMap().

◆ m_ucdWaitTimeoutEvent

EventId ns3::SubscriberStationNetDevice::m_ucdWaitTimeoutEvent
private

UCD wait timeout event.

Definition at line 421 of file ss-net-device.h.

Referenced by DoReceive().

◆ m_ulBurstProfile

OfdmUlBurstProfile* ns3::SubscriberStationNetDevice::m_ulBurstProfile
private

UL burst profile.

Definition at line 430 of file ss-net-device.h.

Referenced by DoDispose(), InitSubscriberStationNetDevice(), and ProcessUcd().


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