ns3::SatLlc Class Referenceabstract

SatLlc base class holds the UT specific SatBaseEncapsulator instances, which are responsible of fragmentation, defragmentation, encapsulation and decapsulation. More...

#include "satellite-llc.h"

+ Inheritance diagram for ns3::SatLlc:
+ Collaboration diagram for ns3::SatLlc:

Public Types

typedef std::map< Ptr< EncapKey >, Ptr< SatBaseEncapsulator >, EncapKeyCompareEncapContainer_t
 Key = Ptr<EncapKey> (source, dest, flowId) Value = Ptr<SatBaseEncapsulator> Compare class = EncapKeyCompare. More...
 
typedef Callback< Ptr< SatControlMessage >, uint32_t > ReadCtrlMsgCallback
 Callback to read control messages from container storing control messages. More...
 
typedef Callback< void, Ptr< const Packet > > ReceiveCallback
 Receive callback used for sending packet to netdevice layer. More...
 

Public Member Functions

 SatLlc ()
 Construct a SatLlc, should not be used. More...
 
 SatLlc (SatEnums::RegenerationMode_t forwardLinkRegenerationMode, SatEnums::RegenerationMode_t returnLinkRegenerationMode)
 Construct a SatLlc. More...
 
virtual ~SatLlc ()
 Destroy a SatLlc. More...
 
void AddDecap (Mac48Address source, Mac48Address dest, uint8_t flowId, Ptr< SatBaseEncapsulator > dec)
 Add an decapsulator entry for the LLC. More...
 
void AddEncap (Mac48Address source, Mac48Address dest, uint8_t flowId, Ptr< SatBaseEncapsulator > enc)
 Add an encapsulator entry for the LLC. More...
 
virtual bool BuffersEmpty () const
 Are buffers empty? More...
 
virtual bool ControlBuffersEmpty () const
 Are buffers empty? More...
 
virtual bool Enque (Ptr< Packet > packet, Address dest, uint8_t flowId)
 Called from higher layer (SatNetDevice) to enque packet to LLC. More...
 
virtual uint32_t GetNBytesInQueue () const
 Get the total number of (new) bytes in all encapsulators. More...
 
virtual uint32_t GetNBytesInQueue (Mac48Address utAddress) const =0
 Get the number of (new) bytes at LLC queue for a certain UT. More...
 
virtual uint32_t GetNPacketsInQueue () const
 Get the total number of (new) packets in all encapsulators. More...
 
virtual uint32_t GetNPacketsInQueue (Mac48Address utAddress) const =0
 Get the number of (new) packets at LLC queues for a certain UT. More...
 
virtual void GetSchedulingContexts (std::vector< Ptr< SatSchedulingObject >> &output) const =0
 Create and fill the scheduling objects based on LLC layer information. More...
 
virtual Ptr< Packet > NotifyTxOpportunity (uint32_t bytes, Mac48Address utAddr, uint8_t flowId, uint32_t &bytesLeft, uint32_t &nextMinTxO)=0
 Called from lower layer (MAC) to inform a Tx opportunity of certain amount of bytes. More...
 
virtual void Receive (Ptr< Packet > packet, Mac48Address source, Mac48Address dest)
 Receive user data packet from lower layer. More...
 
virtual void ReceiveHigherLayerPdu (Ptr< Packet > packet, Mac48Address source, Mac48Address dest)
 Receive HL PDU from encapsulator/decapsulator entity. More...
 
void SetAdditionalHeaderSize (uint32_t additionalHeaderSize)
 Set the additional header size. More...
 
void SetCtrlMsgCallback (SatBaseEncapsulator::SendCtrlCallback cb)
 
virtual void SetGwAddress (Mac48Address address)
 Set the GW address. More...
 
virtual void SetNodeInfo (Ptr< SatNodeInfo > nodeInfo)
 Set the node info. More...
 
void SetReadCtrlCallback (SatLlc::ReadCtrlMsgCallback cb)
 Method to set read control message callback. More...
 
void SetReceiveCallback (SatLlc::ReceiveCallback cb)
 Set Receive callback to forward packet to upper layer. More...
 
virtual void SetSatelliteAddress (Mac48Address address)
 Set the SAT address. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 Derived from Object. More...
 

Protected Member Functions

virtual void CreateDecap (Ptr< EncapKey > key)=0
 Virtual method to create a new decapsulator 'on-a-need-basis' dynamically. More...
 
virtual void CreateEncap (Ptr< EncapKey > key)=0
 Virtual method to create a new encapsulator 'on-a-need-basis' dynamically. More...
 
virtual void DoDispose ()
 Dispose of this class instance. More...
 
virtual SatEnums::SatLinkDir_t GetSatLinkRxDir ()
 Get the link RX direction. More...
 
virtual SatEnums::SatLinkDir_t GetSatLinkTxDir ()
 Get the link TX direction. More...
 
virtual void ReceiveAck (Ptr< SatArqAckMessage > ack, Mac48Address source, Mac48Address dest)
 Receive a control msg (ARQ ACK) from lower layer. More...
 

Protected Attributes

uint32_t m_additionalHeaderSize
 Additional header size to add to encapsulation/decapsulation. More...
 
EncapContainer_t m_decaps
 Map of decapsulator base pointers. More...
 
EncapContainer_t m_encaps
 Map of encapsulator base pointers. More...
 
SatEnums::RegenerationMode_t m_forwardLinkRegenerationMode
 Regeneration mode on forward link. More...
 
bool m_fwdLinkArqEnabled
 Is FWD link ARQ enabled. More...
 
Mac48Address m_gwAddress
 GW address. More...
 
Ptr< SatNodeInfom_nodeInfo
 Node info containing node related information, such as node type, node id and MAC address (of the SatNetDevice) More...
 
TracedCallback< Time, SatEnums::SatPacketEvent_t, SatEnums::SatNodeType_t, uint32_t, Mac48Address, SatEnums::SatLogLevel_t, SatEnums::SatLinkDir_t, std::string > m_packetTrace
 Trace callback used for packet tracing: More...
 
SatLlc::ReadCtrlMsgCallback m_readCtrlCallback
 The read control message callback. More...
 
SatEnums::RegenerationMode_t m_returnLinkRegenerationMode
 Regeneration mode on return link. More...
 
bool m_rtnLinkArqEnabled
 Is RTN link ARQ enabled. More...
 
ReceiveCallback m_rxCallback
 The upper layer package receive callback. More...
 
Mac48Address m_satelliteAddress
 SAT address, used in case of network regeneration. More...
 
SatBaseEncapsulator::SendCtrlCallback m_sendCtrlCallback
 Callback to send control messages. More...
 

Detailed Description

SatLlc base class holds the UT specific SatBaseEncapsulator instances, which are responsible of fragmentation, defragmentation, encapsulation and decapsulation.

Encapsulator class is thus capable of working in both transmission and reception side of the system. The SatLlc base class holds base pointers of the encapsulators, but the actual encapsulator types depend on the simulation direction:

At GW:

At UT

Fragmentation is not allowed for control packets, thus the basic functionality of just buffering control packets without encapsulation, decapsulation, fragmentation and packing is implemented to the SatBaseEncapsulator class.

SatLlc is a pure virtual class, thus it is not supposed to be instantiated. A proper version of the SatLlc is inherited: SatUtLlc at the UT and SatGwLlc at the GW. There is no LLC layer at the satellite.

Definition at line 129 of file satellite-llc.h.

Member Typedef Documentation

◆ EncapContainer_t

Key = Ptr<EncapKey> (source, dest, flowId) Value = Ptr<SatBaseEncapsulator> Compare class = EncapKeyCompare.

Definition at line 162 of file satellite-llc.h.

◆ ReadCtrlMsgCallback

typedef Callback<Ptr<SatControlMessage>, uint32_t> ns3::SatLlc::ReadCtrlMsgCallback

Callback to read control messages from container storing control messages.

Real length of the control messages are simulated in a packet, but not structure.

Parameters
uint32_tID of the message to read.
Returns
Pointer to read packet. (NULL if not found).

Definition at line 176 of file satellite-llc.h.

◆ ReceiveCallback

typedef Callback<void, Ptr<const Packet> > ns3::SatLlc::ReceiveCallback

Receive callback used for sending packet to netdevice layer.

Parameters
packetthe packet received

Definition at line 168 of file satellite-llc.h.

Constructor & Destructor Documentation

◆ SatLlc() [1/2]

ns3::SatLlc::SatLlc ( )

Construct a SatLlc, should not be used.

Definition at line 65 of file satellite-llc.cc.

◆ SatLlc() [2/2]

ns3::SatLlc::SatLlc ( SatEnums::RegenerationMode_t  forwardLinkRegenerationMode,
SatEnums::RegenerationMode_t  returnLinkRegenerationMode 
)

Construct a SatLlc.

Parameters
forwardLinkRegenerationModeForward link regeneration model
returnLinkRegenerationModeReturn link regeneration model

Definition at line 81 of file satellite-llc.cc.

◆ ~SatLlc()

ns3::SatLlc::~SatLlc ( )
virtual

Destroy a SatLlc.

This is the destructor for the SatLlc.

Definition at line 97 of file satellite-llc.cc.

Member Function Documentation

◆ AddDecap()

void ns3::SatLlc::AddDecap ( Mac48Address  source,
Mac48Address  dest,
uint8_t  flowId,
Ptr< SatBaseEncapsulator dec 
)

Add an decapsulator entry for the LLC.

This is called from the helpers at initialization phase.

Parameters
sourceSource MAC address
destDestination MAC address
flowIdFlow id of this encapsulator queue
decDecapsulator pointer

Definition at line 346 of file satellite-llc.cc.

References m_decaps.

◆ AddEncap()

void ns3::SatLlc::AddEncap ( Mac48Address  source,
Mac48Address  dest,
uint8_t  flowId,
Ptr< SatBaseEncapsulator enc 
)

Add an encapsulator entry for the LLC.

This is called from the helpers at initialization phase.

Parameters
sourceSource MAC address
destDestination MAC address
flowIdFlow id of this encapsulator queue
encEncapsulator pointer

Definition at line 315 of file satellite-llc.cc.

References m_encaps.

◆ BuffersEmpty()

bool ns3::SatLlc::BuffersEmpty ( ) const
virtual

Are buffers empty?

Returns
Boolean to indicate whether the buffers are empty or not.

Definition at line 391 of file satellite-llc.cc.

References m_encaps.

Referenced by ns3::SatUtHelper::InstallDvb().

+ Here is the caller graph for this function:

◆ ControlBuffersEmpty()

bool ns3::SatLlc::ControlBuffersEmpty ( ) const
virtual

Are buffers empty?

Returns
Boolean to indicate whether the buffers are empty or not.

Definition at line 404 of file satellite-llc.cc.

References ns3::SatEnums::CONTROL_FID, and m_encaps.

Referenced by ns3::SatUtHelper::InstallDvb().

+ Here is the caller graph for this function:

◆ CreateDecap()

virtual void ns3::SatLlc::CreateDecap ( Ptr< EncapKey key)
protectedpure virtual

Virtual method to create a new decapsulator 'on-a-need-basis' dynamically.

Method is implemented in the inherited class which knows which type of decapsulator to create. This is a pure virtual method to be implemented to inherited classes.

Parameters
keyEncapsulator key class

Implemented in ns3::SatUtLlc, ns3::SatGwLlc, ns3::SatGeoUserLlc, ns3::SatGeoLlc, and ns3::SatGeoFeederLlc.

Referenced by Receive().

+ Here is the caller graph for this function:

◆ CreateEncap()

virtual void ns3::SatLlc::CreateEncap ( Ptr< EncapKey key)
protectedpure virtual

Virtual method to create a new encapsulator 'on-a-need-basis' dynamically.

Method is implemented in the inherited class which knows which type of encapsulator to create. This is a pure virtual method to be implemented to inherited classes.

Parameters
keyEncapsulator key class

Implemented in ns3::SatUtLlc, ns3::SatGwLlc, ns3::SatGeoUserLlc, ns3::SatGeoLlc, and ns3::SatGeoFeederLlc.

Referenced by Enque().

+ Here is the caller graph for this function:

◆ DoDispose()

void ns3::SatLlc::DoDispose ( void  )
protectedvirtual

Dispose of this class instance.

Reimplemented in ns3::SatUtLlc, ns3::SatGwLlc, ns3::SatGeoUserLlc, ns3::SatGeoLlc, and ns3::SatGeoFeederLlc.

Definition at line 103 of file satellite-llc.cc.

References m_decaps, m_encaps, and m_rxCallback.

Referenced by ns3::SatGwLlc::DoDispose(), and ns3::SatUtLlc::DoDispose().

+ Here is the caller graph for this function:

◆ Enque()

bool ns3::SatLlc::Enque ( Ptr< Packet >  packet,
Address  dest,
uint8_t  flowId 
)
virtual

Called from higher layer (SatNetDevice) to enque packet to LLC.

Parameters
packetpacket sent from above down to SatMac
destDestination MAC address of the packet
flowIdFlow identifier
Returns
Boolean indicating whether the enque operation succeeded

Encapsulator not found, thus create a new one. This method is implemented in the inherited classes, which knows which type of encapsulator to create.

Reimplemented in ns3::SatUtLlc, ns3::SatGwLlc, and ns3::SatGeoLlc.

Definition at line 128 of file satellite-llc.cc.

References CreateEncap(), ns3::SatUtils::GetPacketInfo(), GetSatLinkTxDir(), ns3::SatEnums::LL_LLC, m_encaps, m_nodeInfo, m_packetTrace, ns3::SatEnums::PACKET_ENQUE, ns3::SatAddressE2ETag::SetE2EDestAddress(), and ns3::SatAddressE2ETag::SetE2ESourceAddress().

+ Here is the call graph for this function:

◆ GetNBytesInQueue() [1/2]

uint32_t ns3::SatLlc::GetNBytesInQueue ( ) const
virtual

Get the total number of (new) bytes in all encapsulators.

Method checks only the SatQueue for packets, thus it does not count possible packets buffered at the encapsulator (e.g. in case of ARQ).

Returns
Total number of bytes currently queued in all the encapsulators.

Definition at line 420 of file satellite-llc.cc.

References m_encaps.

◆ GetNBytesInQueue() [2/2]

virtual uint32_t ns3::SatLlc::GetNBytesInQueue ( Mac48Address  utAddress) const
pure virtual

Get the number of (new) bytes at LLC queue for a certain UT.

Method checks only the SatQueue for packets, thus it does not count possible packets buffered at the encapsulator (e.g. in case of ARQ). This is a pure virtual method to be implemented to inherited classes.

Parameters
utAddressthe MAC address that identifies a particular UT node.
Returns
Number of bytes currently queued in the encapsulator(s) associated with the UT.

Implemented in ns3::SatUtLlc, ns3::SatGwLlc, and ns3::SatGeoLlc.

◆ GetNPacketsInQueue() [1/2]

uint32_t ns3::SatLlc::GetNPacketsInQueue ( ) const
virtual

Get the total number of (new) packets in all encapsulators.

Method checks only the SatQueue for packets, thus it does not count possible packets buffered at the encapsulator (e.g. in case of ARQ).

Returns
Total number of packets currently queued in all the encapsulators.

Definition at line 438 of file satellite-llc.cc.

References m_encaps.

◆ GetNPacketsInQueue() [2/2]

virtual uint32_t ns3::SatLlc::GetNPacketsInQueue ( Mac48Address  utAddress) const
pure virtual

Get the number of (new) packets at LLC queues for a certain UT.

Method checks only the SatQueue for packets, thus it does not count possible packets buffered at the encapsulator (e.g. in case of ARQ). This is a pure virtual method to be implemented to inherited classes.

Parameters
utAddressthe MAC address that identifies a particular UT node.
Returns
Number of packets currently queued in the encapsulator(s) associated with the UT.

Implemented in ns3::SatUtLlc, ns3::SatGwLlc, and ns3::SatGeoLlc.

◆ GetSatLinkRxDir()

SatEnums::SatLinkDir_t ns3::SatLlc::GetSatLinkRxDir ( )
protectedvirtual

Get the link RX direction.

Must be implemented by child clases.

Returns
The link RX direction

Reimplemented in ns3::SatUtLlc, and ns3::SatGwLlc.

Definition at line 263 of file satellite-llc.cc.

References ns3::SatEnums::LD_UNDEFINED.

Referenced by Receive().

+ Here is the caller graph for this function:

◆ GetSatLinkTxDir()

SatEnums::SatLinkDir_t ns3::SatLlc::GetSatLinkTxDir ( )
protectedvirtual

Get the link TX direction.

Must be implemented by child clases.

Returns
The link TX direction

Reimplemented in ns3::SatUtLlc, and ns3::SatGwLlc.

Definition at line 257 of file satellite-llc.cc.

References ns3::SatEnums::LD_UNDEFINED.

Referenced by ns3::SatGeoLlc::Enque(), and Enque().

+ Here is the caller graph for this function:

◆ GetSchedulingContexts()

virtual void ns3::SatLlc::GetSchedulingContexts ( std::vector< Ptr< SatSchedulingObject >> &  output) const
pure virtual

Create and fill the scheduling objects based on LLC layer information.

Scheduling objects may be used at the MAC layer to assist in scheduling. This is a pure virtual method to be implemented to inherited classes.

Parameters
outputreference to an output vector that will be filled with pointer to scheduling objects

Implemented in ns3::SatUtLlc, ns3::SatGwLlc, and ns3::SatGeoLlc.

Referenced by ns3::SatGeoHelper::AttachChannelsFeeder(), ns3::SatGeoHelper::AttachChannelsUser(), ns3::SatGwHelper::InstallDvb(), and ns3::SatUtHelper::InstallDvb().

+ Here is the caller graph for this function:

◆ GetTypeId()

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

Derived from Object.

Definition at line 44 of file satellite-llc.cc.

References m_fwdLinkArqEnabled, m_packetTrace, and m_rtnLinkArqEnabled.

◆ NotifyTxOpportunity()

virtual Ptr<Packet> ns3::SatLlc::NotifyTxOpportunity ( uint32_t  bytes,
Mac48Address  utAddr,
uint8_t  flowId,
uint32_t &  bytesLeft,
uint32_t &  nextMinTxO 
)
pure virtual

Called from lower layer (MAC) to inform a Tx opportunity of certain amount of bytes.

Note, that this method is not to be used in this class, but the real implementation is located in inherited classes.

Parameters
bytesSize of the Tx opportunity
utAddrMAC address of the UT with the Tx opportunity
flowIdFlow identifier
&bytesLeftBytes left after TxOpportunity
&nextMinTxOMinimum TxO after this TxO
Returns
Pointer to packet to be transmitted

Implemented in ns3::SatUtLlc, ns3::SatGwLlc, and ns3::SatGeoLlc.

◆ Receive()

void ns3::SatLlc::Receive ( Ptr< Packet >  packet,
Mac48Address  source,
Mac48Address  dest 
)
virtual

Receive user data packet from lower layer.

Parameters
packetPointer to packet received.
sourceMAC address of the source
destMAC address of the destination

Decapsulator not found, thus create a new one. This method is implemented in the inherited classes, which knows which type of decapsulator to create.

Definition at line 182 of file satellite-llc.cc.

References ns3::SatEnums::CONTROL_FID, CreateDecap(), ns3::SatFlowIdTag::GetFlowId(), ns3::SatUtils::GetPacketInfo(), GetSatLinkRxDir(), ns3::SatEnums::LL_LLC, m_decaps, m_nodeInfo, m_packetTrace, ns3::SatEnums::NT_SAT, and ns3::SatEnums::PACKET_RECV.

Referenced by ns3::SatGeoHelper::AttachChannelsFeeder(), ns3::SatGeoHelper::AttachChannelsUser(), ns3::SatGwHelper::InstallDvb(), and ns3::SatUtHelper::InstallDvb().

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

◆ ReceiveAck()

void ns3::SatLlc::ReceiveAck ( Ptr< SatArqAckMessage ack,
Mac48Address  source,
Mac48Address  dest 
)
protectedvirtual

Receive a control msg (ARQ ACK) from lower layer.

Parameters
ackARQ ACK message
sourceSource MAC address
destDestination MAC address

Note, that the received ACK is forwarded to the proper encapsulator instead of a decapsulator. The source and destination MAC addresses reflect to the ACK direction, thus they are turned around to represent the other direction when mapping it to the encapsulator.

Definition at line 230 of file satellite-llc.cc.

References m_encaps.

Referenced by ns3::SatGeoLlc::ReceiveHigherLayerPdu(), and ReceiveHigherLayerPdu().

+ Here is the caller graph for this function:

◆ ReceiveHigherLayerPdu()

void ns3::SatLlc::ReceiveHigherLayerPdu ( Ptr< Packet >  packet,
Mac48Address  source,
Mac48Address  dest 
)
virtual

Receive HL PDU from encapsulator/decapsulator entity.

Parameters
packetPointer to packet received.
sourceMAC address of the source
destMAC address of the destination

Reimplemented in ns3::SatGeoLlc.

Definition at line 269 of file satellite-llc.cc.

References ns3::SatControlMsgTag::GetMsgId(), ns3::SatControlMsgTag::GetMsgType(), m_readCtrlCallback, m_rxCallback, ReceiveAck(), and ns3::SatControlMsgTag::SAT_ARQ_ACK.

Referenced by ns3::SatGeoFeederLlc::CreateDecap(), ns3::SatGeoLlc::CreateDecap(), ns3::SatGeoUserLlc::CreateDecap(), ns3::SatGwLlc::CreateDecap(), and ns3::SatUtLlc::CreateDecap().

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

◆ SetAdditionalHeaderSize()

void ns3::SatLlc::SetAdditionalHeaderSize ( uint32_t  additionalHeaderSize)

Set the additional header size.

Parameters
Theadditional header size

Definition at line 485 of file satellite-llc.cc.

References m_additionalHeaderSize.

◆ SetCtrlMsgCallback()

void ns3::SatLlc::SetCtrlMsgCallback ( SatBaseEncapsulator::SendCtrlCallback  cb)
Parameters
cbcallback to send control messages.

Definition at line 463 of file satellite-llc.cc.

References m_sendCtrlCallback.

◆ SetGwAddress()

void ns3::SatLlc::SetGwAddress ( Mac48Address  address)
virtual

Set the GW address.

Parameters
addressGW MAC address

Reimplemented in ns3::SatUtLlc.

Definition at line 471 of file satellite-llc.cc.

References m_gwAddress.

Referenced by ns3::SatUtLlc::SetGwAddress().

+ Here is the caller graph for this function:

◆ SetNodeInfo()

void ns3::SatLlc::SetNodeInfo ( Ptr< SatNodeInfo nodeInfo)
virtual

Set the node info.

Parameters
nodeInfocontaining node specific information

Reimplemented in ns3::SatUtLlc.

Definition at line 377 of file satellite-llc.cc.

References m_nodeInfo.

Referenced by ns3::SatUtLlc::SetNodeInfo().

+ Here is the caller graph for this function:

◆ SetReadCtrlCallback()

void ns3::SatLlc::SetReadCtrlCallback ( SatLlc::ReadCtrlMsgCallback  cb)

Method to set read control message callback.

Parameters
cbcallback to invoke whenever a control message is wanted to read.

Definition at line 456 of file satellite-llc.cc.

References m_readCtrlCallback.

◆ SetReceiveCallback()

void ns3::SatLlc::SetReceiveCallback ( SatLlc::ReceiveCallback  cb)

Set Receive callback to forward packet to upper layer.

Parameters
cbcallback to invoke whenever a packet has been received and must be forwarded to the higher layers.

Definition at line 384 of file satellite-llc.cc.

References m_rxCallback.

◆ SetSatelliteAddress()

void ns3::SatLlc::SetSatelliteAddress ( Mac48Address  address)
virtual

Set the SAT address.

Parameters
addressSAT MAC address

Definition at line 478 of file satellite-llc.cc.

References m_satelliteAddress.

Member Data Documentation

◆ m_additionalHeaderSize

◆ m_decaps

◆ m_encaps

◆ m_forwardLinkRegenerationMode

SatEnums::RegenerationMode_t ns3::SatLlc::m_forwardLinkRegenerationMode
protected

Regeneration mode on forward link.

Definition at line 467 of file satellite-llc.h.

Referenced by ns3::SatGeoFeederLlc::CreateDecap(), ns3::SatGeoUserLlc::CreateEncap(), ns3::SatGwLlc::CreateEncap(), and ns3::SatGwLlc::Enque().

◆ m_fwdLinkArqEnabled

bool ns3::SatLlc::m_fwdLinkArqEnabled
protected

◆ m_gwAddress

Mac48Address ns3::SatLlc::m_gwAddress
protected

◆ m_nodeInfo

Ptr<SatNodeInfo> ns3::SatLlc::m_nodeInfo
protected

◆ m_packetTrace

TracedCallback<Time, SatEnums::SatPacketEvent_t, SatEnums::SatNodeType_t, uint32_t, Mac48Address, SatEnums::SatLogLevel_t, SatEnums::SatLinkDir_t, std::string> ns3::SatLlc::m_packetTrace
protected

◆ m_readCtrlCallback

SatLlc::ReadCtrlMsgCallback ns3::SatLlc::m_readCtrlCallback
protected

The read control message callback.

Definition at line 455 of file satellite-llc.h.

Referenced by ns3::SatGeoLlc::ReceiveHigherLayerPdu(), ReceiveHigherLayerPdu(), and SetReadCtrlCallback().

◆ m_returnLinkRegenerationMode

SatEnums::RegenerationMode_t ns3::SatLlc::m_returnLinkRegenerationMode
protected

◆ m_rtnLinkArqEnabled

bool ns3::SatLlc::m_rtnLinkArqEnabled
protected

◆ m_rxCallback

ReceiveCallback ns3::SatLlc::m_rxCallback
protected

The upper layer package receive callback.

Definition at line 450 of file satellite-llc.h.

Referenced by DoDispose(), ReceiveHigherLayerPdu(), and SetReceiveCallback().

◆ m_satelliteAddress

Mac48Address ns3::SatLlc::m_satelliteAddress
protected

SAT address, used in case of network regeneration.

Definition at line 440 of file satellite-llc.h.

Referenced by ns3::SatGwLlc::Enque(), ns3::SatUtLlc::Enque(), ns3::SatUtLlc::NotifyTxOpportunity(), and SetSatelliteAddress().

◆ m_sendCtrlCallback

SatBaseEncapsulator::SendCtrlCallback ns3::SatLlc::m_sendCtrlCallback
protected

Callback to send control messages.

Note, that this is not actually used by the LLC but the encapsulators. It is just stored here.

Definition at line 462 of file satellite-llc.h.

Referenced by ns3::SatGeoLlc::CreateDecap(), ns3::SatGwLlc::CreateDecap(), ns3::SatUtLlc::CreateDecap(), and SetCtrlMsgCallback().


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