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

#include <radio-bearer-stats-calculator.h>

+ Inheritance diagram for ns3::RadioBearerStatsCalculator:
+ Collaboration diagram for ns3::RadioBearerStatsCalculator:

Public Member Functions

 RadioBearerStatsCalculator ()
 RadioBearerStatsCalculator (std::string protocolType)
virtual ~RadioBearerStatsCalculator ()
void DlRxPdu (uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay)
void DlTxPdu (uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize)
void DoDispose ()
uint32_t GetDlCellId (uint64_t imsi, uint8_t lcid)
double GetDlDelay (uint64_t imsi, uint8_t lcid)
std::vector< double > GetDlDelayStats (uint64_t imsi, uint8_t lcid)
std::string GetDlOutputFilename (void)
std::string GetDlPdcpOutputFilename (void)
std::vector< double > GetDlPduSizeStats (uint64_t imsi, uint8_t lcid)
uint64_t GetDlRxData (uint64_t imsi, uint8_t lcid)
uint32_t GetDlRxPackets (uint64_t imsi, uint8_t lcid)
uint64_t GetDlTxData (uint64_t imsi, uint8_t lcid)
uint32_t GetDlTxPackets (uint64_t imsi, uint8_t lcid)
uint32_t GetUlCellId (uint64_t imsi, uint8_t lcid)
double GetUlDelay (uint64_t imsi, uint8_t lcid)
std::vector< double > GetUlDelayStats (uint64_t imsi, uint8_t lcid)
std::string GetUlOutputFilename (void)
std::string GetUlPdcpOutputFilename (void)
std::vector< double > GetUlPduSizeStats (uint64_t imsi, uint8_t lcid)
uint64_t GetUlRxData (uint64_t imsi, uint8_t lcid)
uint32_t GetUlRxPackets (uint64_t imsi, uint8_t lcid)
uint64_t GetUlTxData (uint64_t imsi, uint8_t lcid)
uint32_t GetUlTxPackets (uint64_t imsi, uint8_t lcid)
void SetDlPdcpOutputFilename (std::string outputFilename)
void SetUlPdcpOutputFilename (std::string outputFilename)
void UlRxPdu (uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay)
void UlTxPdu (uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize)
- Public Member Functions inherited from ns3::LteStatsCalculator
 LteStatsCalculator ()
virtual ~LteStatsCalculator ()
bool ExistsCellIdPath (std::string path)
bool ExistsImsiPath (std::string path)
uint16_t GetCellIdPath (std::string path)
uint64_t GetImsiPath (std::string path)
void SetCellIdPath (std::string path, uint16_t cellId)
void SetDlOutputFilename (std::string outputFilename)
void SetImsiPath (std::string path, uint64_t imsi)
void SetUlOutputFilename (std::string outputFilename)
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
AggregateIterator GetAggregateIterator (void) const
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)

Static Public Member Functions

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

Private Member Functions

void CheckEpoch (void)
void ResetResults (void)
void ShowResults (void)
void StartEpoch (void)
void WriteDlResults (std::ofstream &outFile)
void WriteUlResults (std::ofstream &outFile)

Private Attributes

Uint32Map m_dlCellId
Uint64StatsMap m_dlDelay
std::string m_dlPdcpOutputFilename
Uint32StatsMap m_dlPduSize
Uint64Map m_dlRxData
Uint32Map m_dlRxPackets
Uint64Map m_dlTxData
Uint32Map m_dlTxPackets
Time m_epochDuration
bool m_firstWrite
FlowIdMap m_flowId
bool m_pendingOutput
std::string m_protocolType
Time m_startTime
Uint32Map m_ulCellId
Uint64StatsMap m_ulDelay
std::string m_ulPdcpOutputFilename
Uint32StatsMap m_ulPduSize
Uint64Map m_ulRxData
Uint32Map m_ulRxPackets
Uint64Map m_ulTxData
Uint32Map m_ulTxPackets

Additional Inherited Members

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

Detailed Description

Calculation of statistics from the RLC layer for uplink and downlink, the data is dumped into a file periodically. Metrics considered are:

  • Number of transmitted PDUs
  • Number of received PDUs
  • Number of transmitted bytes
  • Number of received bytes
  • Average, min, max and standard deviation of RLC to RLC delay
  • Average, min, max and standard deviation of RLC PDU size TODO: Actual statistics calculation implies checking the time every time a packet is send or received so it is not very efficient. The epoch implementation should be replaced by a timer to avoid this overhead.

Definition at line 55 of file radio-bearer-stats-calculator.h.

Constructor & Destructor Documentation

ns3::RadioBearerStatsCalculator::RadioBearerStatsCalculator ( )

Class constructor

Definition at line 35 of file radio-bearer-stats-calculator.cc.

References NS_LOG_FUNCTION.

ns3::RadioBearerStatsCalculator::RadioBearerStatsCalculator ( std::string  protocolType)

Class constructor

Definition at line 43 of file radio-bearer-stats-calculator.cc.

References m_protocolType, and NS_LOG_FUNCTION.

ns3::RadioBearerStatsCalculator::~RadioBearerStatsCalculator ( )
virtual

Class destructor

Definition at line 51 of file radio-bearer-stats-calculator.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

void ns3::RadioBearerStatsCalculator::CheckEpoch ( void  )
private

Definition at line 350 of file radio-bearer-stats-calculator.cc.

References m_epochDuration, m_startTime, ns3::Simulator::Now(), NS_LOG_FUNCTION, ResetResults(), ShowResults(), and StartEpoch().

Referenced by DlRxPdu(), DlTxPdu(), UlRxPdu(), and UlTxPdu().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::DlRxPdu ( uint64_t  imsi,
uint16_t  rnti,
uint8_t  lcid,
uint32_t  packetSize,
uint64_t  delay 
)

Notifies the stats calculator that an downlink reception has occurred.

Parameters
imsiIMSI of the UE who received the PDU
rntiC-RNTI of the UE who received the PDU
lcidLCID through which the PDU has been transmitted
packetSizesize of the PDU in bytes
delayRLC to RLC delay in nanoseconds

Definition at line 157 of file radio-bearer-stats-calculator.cc.

References CheckEpoch(), m_dlDelay, m_dlPduSize, m_dlRxData, m_dlRxPackets, ns3::ImsiLcidPair_t::m_imsi, ns3::ImsiLcidPair_t::m_lcId, m_pendingOutput, m_startTime, ns3::Simulator::Now(), NS_LOG_DEBUG, and NS_LOG_FUNCTION.

Referenced by ns3::DlRxPduCallback(), and ns3::LteSimpleHelperDlRxPduCallback().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::DlTxPdu ( uint16_t  cellId,
uint64_t  imsi,
uint16_t  rnti,
uint8_t  lcid,
uint32_t  packetSize 
)

Notifies the stats calculator that an downlink transmission has occurred.

Parameters
cellIdCellId of the attached Enb
imsiIMSI of the UE who is receiving the PDU
rntiC-RNTI of the UE who is receiving the PDU
lcidLCID through which the PDU has been transmitted
packetSizesize of the PDU in bytes

Definition at line 114 of file radio-bearer-stats-calculator.cc.

References CheckEpoch(), m_dlCellId, m_dlTxData, m_dlTxPackets, m_flowId, m_pendingOutput, m_startTime, ns3::Simulator::Now(), and NS_LOG_FUNCTION.

Referenced by ns3::DlTxPduCallback(), and ns3::LteSimpleHelperDlTxPduCallback().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::DoDispose ( void  )
virtual

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

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

It is safe to call GetObject from within this method.

Reimplemented from ns3::Object.

Definition at line 89 of file radio-bearer-stats-calculator.cc.

References m_pendingOutput, NS_LOG_FUNCTION, and ShowResults().

+ Here is the call graph for this function:

uint32_t ns3::RadioBearerStatsCalculator::GetDlCellId ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the attached Enb cellId.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
Enb cellId

Definition at line 506 of file radio-bearer-stats-calculator.cc.

References m_dlCellId, and NS_LOG_FUNCTION.

Referenced by WriteDlResults().

+ Here is the caller graph for this function:

double ns3::RadioBearerStatsCalculator::GetDlDelay ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the downlink RLC to RLC delay

Parameters
imsiIMSI of the UE
lcidLCID
Returns
RLC to RLC delay in seconds

Definition at line 514 of file radio-bearer-stats-calculator.cc.

References m_dlDelay, NS_LOG_ERROR, and NS_LOG_FUNCTION.

std::vector< double > ns3::RadioBearerStatsCalculator::GetDlDelayStats ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the downlink RLC to RLC statistics: average, min, max and standard deviation.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
RLC to RLC delay statistics average, min, max and standard deviation in seconds

Definition at line 528 of file radio-bearer-stats-calculator.cc.

References m_dlDelay, and NS_LOG_FUNCTION.

Referenced by WriteDlResults().

+ Here is the caller graph for this function:

std::string ns3::RadioBearerStatsCalculator::GetDlOutputFilename ( void  )

Get the name of the file where the downlink statistics will be stored.

Reimplemented from ns3::LteStatsCalculator.

Definition at line 587 of file radio-bearer-stats-calculator.cc.

References GetDlPdcpOutputFilename(), and m_protocolType.

Referenced by ShowResults().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::string ns3::RadioBearerStatsCalculator::GetDlPdcpOutputFilename ( void  )

Get the name of the file where the downlink PDCP statistics will be stored.

Definition at line 617 of file radio-bearer-stats-calculator.cc.

References m_dlPdcpOutputFilename.

Referenced by GetDlOutputFilename().

+ Here is the caller graph for this function:

std::vector< double > ns3::RadioBearerStatsCalculator::GetDlPduSizeStats ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the downlink PDU size statistics: average, min, max and standard deviation.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
PDU size statistics average, min, max and standard deviation in seconds

Definition at line 551 of file radio-bearer-stats-calculator.cc.

References m_dlPduSize, and NS_LOG_FUNCTION.

Referenced by WriteDlResults().

+ Here is the caller graph for this function:

uint64_t ns3::RadioBearerStatsCalculator::GetDlRxData ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of received downlink data bytes.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of received data bytes

Definition at line 490 of file radio-bearer-stats-calculator.cc.

References m_dlRxData, and NS_LOG_FUNCTION.

Referenced by ns3::LenaPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaMimoTestCase::GetRlcBufferSample(), and WriteDlResults().

+ Here is the caller graph for this function:

uint32_t ns3::RadioBearerStatsCalculator::GetDlRxPackets ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of received downlink data bytes.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of received data bytes

Definition at line 474 of file radio-bearer-stats-calculator.cc.

References m_dlRxPackets, and NS_LOG_FUNCTION.

Referenced by ns3::LteEpcE2eDataTestCase::DoRun(), and WriteDlResults().

+ Here is the caller graph for this function:

uint64_t ns3::RadioBearerStatsCalculator::GetDlTxData ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of transmitted downlink data bytes.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of transmitted data bytes

Definition at line 482 of file radio-bearer-stats-calculator.cc.

References m_dlTxData, and NS_LOG_FUNCTION.

Referenced by ns3::LenaPhyErrorModelTestCase::DoRun(), and WriteDlResults().

+ Here is the caller graph for this function:

uint32_t ns3::RadioBearerStatsCalculator::GetDlTxPackets ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of transmitted downlink data bytes.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of transmitted data bytes

Definition at line 466 of file radio-bearer-stats-calculator.cc.

References m_dlTxPackets, and NS_LOG_FUNCTION.

Referenced by ns3::LteEpcE2eDataTestCase::DoRun(), and WriteDlResults().

+ Here is the caller graph for this function:

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

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

Inherited from ns3::Object

Attributes defined for this type:

  • StartTime: Start time of the on going epoch.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +0.0ns
    • Flags: construct write read
  • EpochDuration: Epoch duration.
    • Set with class: TimeValue
    • Underlying type: Time
    • Initial value: +250000000.0ns
    • Flags: construct write read
  • DlRlcOutputFilename: Name of the file where the downlink results will be saved.
    • Set with class: StringValue
    • Underlying type: std::string
    • Initial value: DlRlcStats.txt
    • Flags: construct write
  • UlRlcOutputFilename: Name of the file where the uplink results will be saved.
    • Set with class: StringValue
    • Underlying type: std::string
    • Initial value: UlRlcStats.txt
    • Flags: construct write
  • DlPdcpOutputFilename: Name of the file where the downlink results will be saved.
    • Set with class: StringValue
    • Underlying type: std::string
    • Initial value: DlPdcpStats.txt
    • Flags: construct write
  • UlPdcpOutputFilename: Name of the file where the uplink results will be saved.
    • Set with class: StringValue
    • Underlying type: std::string
    • Initial value: UlPdcpStats.txt
    • Flags: construct write

No TraceSources defined for this type.

Reimplemented from ns3::LteStatsCalculator.

Definition at line 57 of file radio-bearer-stats-calculator.cc.

References m_epochDuration, m_startTime, ns3::Seconds(), ns3::LteStatsCalculator::SetDlOutputFilename(), SetDlPdcpOutputFilename(), ns3::TypeId::SetParent(), ns3::LteStatsCalculator::SetUlOutputFilename(), and SetUlPdcpOutputFilename().

+ Here is the call graph for this function:

uint32_t ns3::RadioBearerStatsCalculator::GetUlCellId ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the attached Enb cellId.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
Enb cellId

Definition at line 498 of file radio-bearer-stats-calculator.cc.

References m_ulCellId, and NS_LOG_FUNCTION.

Referenced by WriteUlResults().

+ Here is the caller graph for this function:

double ns3::RadioBearerStatsCalculator::GetUlDelay ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the uplink RLC to RLC delay

Parameters
imsiIMSI of the UE
lcidLCID
Returns
RLC to RLC delay in seconds

Definition at line 405 of file radio-bearer-stats-calculator.cc.

References m_ulDelay, NS_LOG_ERROR, and NS_LOG_FUNCTION.

std::vector< double > ns3::RadioBearerStatsCalculator::GetUlDelayStats ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the uplink RLC to RLC statistics: average, min, max and standard deviation.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
RLC to RLC delay statistics average, min, max and standard deviation in seconds

Definition at line 420 of file radio-bearer-stats-calculator.cc.

References m_ulDelay, and NS_LOG_FUNCTION.

Referenced by WriteUlResults().

+ Here is the caller graph for this function:

std::string ns3::RadioBearerStatsCalculator::GetUlOutputFilename ( void  )

Get the name of the file where the uplink statistics will be stored.

Reimplemented from ns3::LteStatsCalculator.

Definition at line 574 of file radio-bearer-stats-calculator.cc.

References GetUlPdcpOutputFilename(), and m_protocolType.

Referenced by ShowResults().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

std::string ns3::RadioBearerStatsCalculator::GetUlPdcpOutputFilename ( void  )

Get the name of the file where the uplink PDCP statistics will be stored.

Definition at line 606 of file radio-bearer-stats-calculator.cc.

References m_ulPdcpOutputFilename.

Referenced by GetUlOutputFilename().

+ Here is the caller graph for this function:

std::vector< double > ns3::RadioBearerStatsCalculator::GetUlPduSizeStats ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the uplink PDU size statistics: average, min, max and standard deviation.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
PDU size statistics average, min, max and standard deviation in seconds

Definition at line 443 of file radio-bearer-stats-calculator.cc.

References m_ulPduSize, and NS_LOG_FUNCTION.

Referenced by WriteUlResults().

+ Here is the caller graph for this function:

uint64_t ns3::RadioBearerStatsCalculator::GetUlRxData ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of received uplink data bytes.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of received data bytes

Definition at line 397 of file radio-bearer-stats-calculator.cc.

References m_ulRxData, and NS_LOG_FUNCTION.

Referenced by ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), and WriteUlResults().

+ Here is the caller graph for this function:

uint32_t ns3::RadioBearerStatsCalculator::GetUlRxPackets ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of received uplink packets.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of received uplink packets

Definition at line 381 of file radio-bearer-stats-calculator.cc.

References m_ulRxPackets, and NS_LOG_FUNCTION.

Referenced by ns3::LteEpcE2eDataTestCase::DoRun(), and WriteUlResults().

+ Here is the caller graph for this function:

uint64_t ns3::RadioBearerStatsCalculator::GetUlTxData ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of transmitted uplink data bytes.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of transmitted data bytes

Definition at line 389 of file radio-bearer-stats-calculator.cc.

References m_ulTxData, and NS_LOG_FUNCTION.

Referenced by ns3::LenaRrFfMacSchedulerTestCase::DoRun(), and WriteUlResults().

+ Here is the caller graph for this function:

uint32_t ns3::RadioBearerStatsCalculator::GetUlTxPackets ( uint64_t  imsi,
uint8_t  lcid 
)

Gets the number of transmitted uplink packets.

Parameters
imsiIMSI of the UE
lcidLCID
Returns
number of transmitted uplink packets

Definition at line 373 of file radio-bearer-stats-calculator.cc.

References m_ulTxPackets, and NS_LOG_FUNCTION.

Referenced by ns3::LteEpcE2eDataTestCase::DoRun(), and WriteUlResults().

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::ResetResults ( void  )
private

Definition at line 330 of file radio-bearer-stats-calculator.cc.

References m_dlDelay, m_dlPduSize, m_dlRxData, m_dlRxPackets, m_dlTxData, m_dlTxPackets, m_ulDelay, m_ulPduSize, m_ulRxData, m_ulRxPackets, m_ulTxData, m_ulTxPackets, and NS_LOG_FUNCTION.

Referenced by CheckEpoch().

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::SetDlPdcpOutputFilename ( std::string  outputFilename)

Set the name of the file where the downlink PDCP statistics will be stored.

Parameters
outputFilenamestring with the name of the file

Definition at line 611 of file radio-bearer-stats-calculator.cc.

References m_dlPdcpOutputFilename.

Referenced by GetTypeId().

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::SetUlPdcpOutputFilename ( std::string  outputFilename)

Set the name of the file where the uplink PDCP statistics will be stored.

Parameters
outputFilenamestring with the name of the file

Definition at line 600 of file radio-bearer-stats-calculator.cc.

References m_ulPdcpOutputFilename.

Referenced by GetTypeId().

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::ShowResults ( void  )
private

Definition at line 181 of file radio-bearer-stats-calculator.cc.

References GetDlOutputFilename(), GetUlOutputFilename(), m_firstWrite, m_pendingOutput, NS_LOG_ERROR, NS_LOG_FUNCTION, NS_LOG_INFO, WriteDlResults(), and WriteUlResults().

Referenced by CheckEpoch(), and DoDispose().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::StartEpoch ( void  )
private

Definition at line 363 of file radio-bearer-stats-calculator.cc.

References m_epochDuration, m_startTime, ns3::Simulator::Now(), and NS_LOG_FUNCTION.

Referenced by CheckEpoch().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::UlRxPdu ( uint16_t  cellId,
uint64_t  imsi,
uint16_t  rnti,
uint8_t  lcid,
uint32_t  packetSize,
uint64_t  delay 
)

Notifies the stats calculator that an uplink reception has occurred.

Parameters
cellIdCellId of the attached Enb
imsiIMSI of the UE who received the PDU
rntiC-RNTI of the UE who received the PDU
lcidLCID through which the PDU has been received
packetSizesize of the PDU in bytes
delayRLC to RLC delay in nanoseconds

Definition at line 130 of file radio-bearer-stats-calculator.cc.

References CheckEpoch(), ns3::ImsiLcidPair_t::m_imsi, ns3::ImsiLcidPair_t::m_lcId, m_pendingOutput, m_startTime, m_ulCellId, m_ulDelay, m_ulPduSize, m_ulRxData, m_ulRxPackets, ns3::Simulator::Now(), NS_LOG_DEBUG, and NS_LOG_FUNCTION.

Referenced by ns3::LteSimpleHelperUlRxPduCallback(), and ns3::UlRxPduCallback().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::UlTxPdu ( uint64_t  imsi,
uint16_t  rnti,
uint8_t  lcid,
uint32_t  packetSize 
)

Notifies the stats calculator that an uplink transmission has occurred.

Parameters
imsiIMSI of the UE who transmitted the PDU
rntiC-RNTI of the UE who transmitted the PDU
lcidLCID through which the PDU has been transmitted
packetSizesize of the PDU in bytes

Definition at line 99 of file radio-bearer-stats-calculator.cc.

References CheckEpoch(), m_flowId, m_pendingOutput, m_startTime, m_ulTxData, m_ulTxPackets, ns3::Simulator::Now(), and NS_LOG_FUNCTION.

Referenced by ns3::LteSimpleHelperUlTxPduCallback(), and ns3::UlTxPduCallback().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::RadioBearerStatsCalculator::WriteDlResults ( std::ofstream &  outFile)
private
void ns3::RadioBearerStatsCalculator::WriteUlResults ( std::ofstream &  outFile)
private

Member Data Documentation

Uint32Map ns3::RadioBearerStatsCalculator::m_dlCellId
private

Definition at line 319 of file radio-bearer-stats-calculator.h.

Referenced by DlTxPdu(), and GetDlCellId().

Uint64StatsMap ns3::RadioBearerStatsCalculator::m_dlDelay
private
std::string ns3::RadioBearerStatsCalculator::m_dlPdcpOutputFilename
private
Uint32StatsMap ns3::RadioBearerStatsCalculator::m_dlPduSize
private

Definition at line 325 of file radio-bearer-stats-calculator.h.

Referenced by DlRxPdu(), GetDlPduSizeStats(), and ResetResults().

Uint64Map ns3::RadioBearerStatsCalculator::m_dlRxData
private

Definition at line 323 of file radio-bearer-stats-calculator.h.

Referenced by DlRxPdu(), GetDlRxData(), and ResetResults().

Uint32Map ns3::RadioBearerStatsCalculator::m_dlRxPackets
private

Definition at line 321 of file radio-bearer-stats-calculator.h.

Referenced by DlRxPdu(), GetDlRxPackets(), and ResetResults().

Uint64Map ns3::RadioBearerStatsCalculator::m_dlTxData
private

Definition at line 322 of file radio-bearer-stats-calculator.h.

Referenced by DlTxPdu(), GetDlTxData(), and ResetResults().

Uint32Map ns3::RadioBearerStatsCalculator::m_dlTxPackets
private
Time ns3::RadioBearerStatsCalculator::m_epochDuration
private

Epoch duration

Definition at line 343 of file radio-bearer-stats-calculator.h.

Referenced by CheckEpoch(), GetTypeId(), StartEpoch(), WriteDlResults(), and WriteUlResults().

bool ns3::RadioBearerStatsCalculator::m_firstWrite
private

true if output files have not been opened yet

Definition at line 348 of file radio-bearer-stats-calculator.h.

Referenced by ShowResults().

FlowIdMap ns3::RadioBearerStatsCalculator::m_flowId
private

Definition at line 317 of file radio-bearer-stats-calculator.h.

Referenced by DlTxPdu(), UlTxPdu(), WriteDlResults(), and WriteUlResults().

bool ns3::RadioBearerStatsCalculator::m_pendingOutput
private

true if any output is pending

Definition at line 353 of file radio-bearer-stats-calculator.h.

Referenced by DlRxPdu(), DlTxPdu(), DoDispose(), ShowResults(), UlRxPdu(), and UlTxPdu().

std::string ns3::RadioBearerStatsCalculator::m_protocolType
private
Time ns3::RadioBearerStatsCalculator::m_startTime
private

Start time of the on going epoch

Definition at line 338 of file radio-bearer-stats-calculator.h.

Referenced by CheckEpoch(), DlRxPdu(), DlTxPdu(), GetTypeId(), StartEpoch(), UlRxPdu(), UlTxPdu(), WriteDlResults(), and WriteUlResults().

Uint32Map ns3::RadioBearerStatsCalculator::m_ulCellId
private

Definition at line 327 of file radio-bearer-stats-calculator.h.

Referenced by GetUlCellId(), and UlRxPdu().

Uint64StatsMap ns3::RadioBearerStatsCalculator::m_ulDelay
private
std::string ns3::RadioBearerStatsCalculator::m_ulPdcpOutputFilename
private
Uint32StatsMap ns3::RadioBearerStatsCalculator::m_ulPduSize
private

Definition at line 333 of file radio-bearer-stats-calculator.h.

Referenced by GetUlPduSizeStats(), ResetResults(), and UlRxPdu().

Uint64Map ns3::RadioBearerStatsCalculator::m_ulRxData
private

Definition at line 331 of file radio-bearer-stats-calculator.h.

Referenced by GetUlRxData(), ResetResults(), and UlRxPdu().

Uint32Map ns3::RadioBearerStatsCalculator::m_ulRxPackets
private

Definition at line 329 of file radio-bearer-stats-calculator.h.

Referenced by GetUlRxPackets(), ResetResults(), and UlRxPdu().

Uint64Map ns3::RadioBearerStatsCalculator::m_ulTxData
private

Definition at line 330 of file radio-bearer-stats-calculator.h.

Referenced by GetUlTxData(), ResetResults(), and UlTxPdu().

Uint32Map ns3::RadioBearerStatsCalculator::m_ulTxPackets
private

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