ns3::SatStatsRtnAppThroughputHelper Class Reference

Produce return link application-level throughput statistics from a satellite module simulation. More...

#include "satellite-stats-throughput-helper.h"

+ Inheritance diagram for ns3::SatStatsRtnAppThroughputHelper:
+ Collaboration diagram for ns3::SatStatsRtnAppThroughputHelper:

Public Member Functions

 SatStatsRtnAppThroughputHelper (Ptr< const SatHelper > satHelper)
 
virtual ~SatStatsRtnAppThroughputHelper ()
 / Destructor. More...
 
void Ipv4Callback (Ptr< const Packet > packet, const Address &from)
 Receive inputs from trace sources and determine the right collector to forward the inputs to. More...
 
- Public Member Functions inherited from ns3::SatStatsThroughputHelper
 SatStatsThroughputHelper (Ptr< const SatHelper > satHelper)
 
virtual ~SatStatsThroughputHelper ()
 / Destructor. More...
 
bool GetAveragingMode () const
 
void InstallProbes ()
 Set up several probes or other means of listeners and connect them to the first-level collectors. More...
 
void RxCallback (Ptr< const Packet > packet, const Address &from)
 Receive inputs from trace sources and determine the right collector to forward the inputs to. More...
 
void SetAveragingMode (bool averagingMode)
 
- Public Member Functions inherited from ns3::SatStatsHelper
 SatStatsHelper (Ptr< const SatHelper > satHelper)
 Creates a new helper instance. More...
 
virtual ~SatStatsHelper ()
 / Destructor. More...
 
IdentifierType_t GetIdentifierType () const
 
std::string GetName () const
 
OutputType_t GetOutputType () const
 
Ptr< const SatHelperGetSatHelper () const
 
void Install ()
 Install the probes, collectors, and aggregators necessary to produce the statistics output. More...
 
bool IsInstalled () const
 
void SetIdentifierType (IdentifierType_t identifierType)
 
void SetName (std::string name)
 
void SetOutputType (OutputType_t outputType)
 

Static Public Member Functions

static TypeId GetTypeId ()
 inherited from ObjectBase base class More...
 
- Static Public Member Functions inherited from ns3::SatStatsThroughputHelper
static TypeId GetTypeId ()
 inherited from ObjectBase base class More...
 
- Static Public Member Functions inherited from ns3::SatStatsHelper
static std::string GetIdentifierTypeName (IdentifierType_t identifierType)
 
static std::string GetOutputTypeName (OutputType_t outputType)
 
static TypeId GetTypeId ()
 inherited from ObjectBase base class More...
 

Protected Member Functions

void DoInstallProbes ()
 
- Protected Member Functions inherited from ns3::SatStatsThroughputHelper
void DoInstall ()
 Install the probes, collectors, and aggregators necessary to produce the statistics output. More...
 
void SaveAddressAndIdentifier (Ptr< Node > utNode)
 Save the address and the proper identifier from the given UT node. More...
 
- Protected Member Functions inherited from ns3::SatStatsHelper
Ptr< DataCollectionObject > CreateAggregator (std::string aggregatorTypeId, std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue())
 Create the aggregator according to the output type. More...
 
uint32_t CreateCollectorPerIdentifier (CollectorMap &collectorMap) const
 Create one collector instance for each identifier in the simulation. More...
 
virtual std::string GetDistributionHeading (std::string dataLabel) const
 
uint32_t GetGwId (Ptr< Node > gwNode) const
 
uint32_t GetIdentifierForBeam (uint32_t satId, uint32_t beamId) const
 
uint32_t GetIdentifierForGroup (uint32_t groupId) const
 
uint32_t GetIdentifierForGw (Ptr< Node > gwNode) const
 
uint32_t GetIdentifierForIsl (Ptr< Node > satNodeSrc, Ptr< Node > satNodeDst) const
 
uint32_t GetIdentifierForSat (Ptr< Node > satNode) const
 
uint32_t GetIdentifierForUt (Ptr< Node > utNode) const
 
uint32_t GetIdentifierForUtUser (Ptr< Node > utUserNode) const
 
virtual std::string GetIdentifierHeading (std::string dataLabel) const
 
virtual std::string GetOutputFileName () const
 Compute the path and file name where statistics output should be written to. More...
 
virtual std::string GetOutputPath () const
 
uint32_t GetSatId (Ptr< Node > satNode) const
 
virtual std::string GetTimeHeading (std::string dataLabel) const
 
uint32_t GetUtId (Ptr< Node > utNode) const
 
uint32_t GetUtUserId (Ptr< Node > utUserNode) const
 

Private Member Functions

void SaveIpv4AddressAndIdentifier (Ptr< Node > utUserNode)
 Save the IPv4 address and the proper identifier from the given UT user node. More...
 

Additional Inherited Members

- Public Types inherited from ns3::SatStatsHelper
enum  IdentifierType_t {
  IDENTIFIER_GLOBAL = 0 , IDENTIFIER_GW , IDENTIFIER_BEAM , IDENTIFIER_UT ,
  IDENTIFIER_UT_USER , IDENTIFIER_SLICE , IDENTIFIER_GROUP , IDENTIFIER_SAT ,
  IDENTIFIER_ISL
}
 Possible categorization of statistics output. More...
 
enum  OutputType_t {
  OUTPUT_NONE = 0 , OUTPUT_SCALAR_FILE , OUTPUT_SCATTER_FILE , OUTPUT_HISTOGRAM_FILE ,
  OUTPUT_PDF_FILE , OUTPUT_CDF_FILE , OUTPUT_SCALAR_PLOT , OUTPUT_SCATTER_PLOT ,
  OUTPUT_HISTOGRAM_PLOT , OUTPUT_PDF_PLOT , OUTPUT_CDF_PLOT
}
 Possible types and formats of statistics output. More...
 
- Static Protected Member Functions inherited from ns3::SatStatsHelper
static NetDeviceContainer GetGwSatNetDevice (Ptr< Node > gwNode)
 
static Ptr< NetDevice > GetSatSatGeoNetDevice (Ptr< Node > satNode)
 
static Ptr< NetDevice > GetUtSatNetDevice (Ptr< Node > utNode)
 
- Protected Attributes inherited from ns3::SatStatsThroughputHelper
Ptr< DataCollectionObject > m_aggregator
 The aggregator created by this helper. More...
 
Ptr< DistributionCollector > m_averagingCollector
 The final collector utilized in averaged output (histogram, PDF, and CDF). More...
 
CollectorMap m_conversionCollectors
 Maintains a list of first-level collectors created by this helper. More...
 
std::map< const Address, uint32_t > m_identifierMap
 Map of address and the identifier associated with it (for return link). More...
 
CollectorMap m_terminalCollectors
 Maintains a list of second-level collectors created by this helper. More...
 

Detailed Description

Produce return link application-level throughput statistics from a satellite module simulation.

For a more convenient usage in simulation script, it is recommended to use the corresponding methods in SatStatsHelperContainer class.

Otherwise, the following example can be used:

Ptr<SatStatsRtnAppThroughputHelper> s = Create<SatStatsRtnAppThroughputHelper> (satHelper);
s->SetName ("name");
s->SetIdentifierType (SatStatsHelper::IDENTIFIER_GLOBAL);
s->Install ();

Definition at line 470 of file satellite-stats-throughput-helper.h.

Constructor & Destructor Documentation

◆ SatStatsRtnAppThroughputHelper()

ns3::SatStatsRtnAppThroughputHelper::SatStatsRtnAppThroughputHelper ( Ptr< const SatHelper satHelper)

Definition at line 1195 of file satellite-stats-throughput-helper.cc.

◆ ~SatStatsRtnAppThroughputHelper()

ns3::SatStatsRtnAppThroughputHelper::~SatStatsRtnAppThroughputHelper ( )
virtual

/ Destructor.

Definition at line 1201 of file satellite-stats-throughput-helper.cc.

Member Function Documentation

◆ DoInstallProbes()

void ns3::SatStatsRtnAppThroughputHelper::DoInstallProbes ( )
protectedvirtual

Implements ns3::SatStatsThroughputHelper.

Definition at line 1215 of file satellite-stats-throughput-helper.cc.

References ns3::SatStatsHelper::GetSatHelper(), Ipv4Callback(), and SaveIpv4AddressAndIdentifier().

+ Here is the call graph for this function:

◆ GetTypeId()

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

inherited from ObjectBase base class

Definition at line 1207 of file satellite-stats-throughput-helper.cc.

◆ Ipv4Callback()

void ns3::SatStatsRtnAppThroughputHelper::Ipv4Callback ( Ptr< const Packet >  packet,
const Address &  from 
)

Receive inputs from trace sources and determine the right collector to forward the inputs to.

Parameters
packetreceived packet data.
fromthe InetSocketAddress of the sender of the packet.

Definition at line 1259 of file satellite-stats-throughput-helper.cc.

References ns3::SatStatsThroughputHelper::m_conversionCollectors, and ns3::SatStatsThroughputHelper::m_identifierMap.

Referenced by DoInstallProbes().

+ Here is the caller graph for this function:

◆ SaveIpv4AddressAndIdentifier()

void ns3::SatStatsRtnAppThroughputHelper::SaveIpv4AddressAndIdentifier ( Ptr< Node >  utUserNode)
private

Save the IPv4 address and the proper identifier from the given UT user node.

Parameters
utUserNodea UT user node.

Any addresses found in the given node will be saved in the m_identifierMap member variable.

Definition at line 1300 of file satellite-stats-throughput-helper.cc.

References ns3::SatStatsHelper::GetIdentifierForUtUser(), and ns3::SatStatsThroughputHelper::m_identifierMap.

Referenced by DoInstallProbes().

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

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