ns-3
|
#include <radio-bearer-stats-calculator.h>
Public Member Functions | |
RadioBearerStatsCalculator () | |
RadioBearerStatsCalculator (std::string protocolType) | |
virtual | ~RadioBearerStatsCalculator () |
void | DoDispose () |
std::string | GetUlOutputFilename (void) |
std::string | GetDlOutputFilename (void) |
void | SetUlPdcpOutputFilename (std::string outputFilename) |
std::string | GetUlPdcpOutputFilename (void) |
void | SetDlPdcpOutputFilename (std::string outputFilename) |
std::string | GetDlPdcpOutputFilename (void) |
void | UlTxPdu (uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize) |
void | UlRxPdu (uint16_t cellId, 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 | DlRxPdu (uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay) |
uint32_t | GetUlTxPackets (uint64_t imsi, uint8_t lcid) |
uint32_t | GetUlRxPackets (uint64_t imsi, uint8_t lcid) |
uint64_t | GetUlTxData (uint64_t imsi, uint8_t lcid) |
uint64_t | GetUlRxData (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::vector< double > | GetUlPduSizeStats (uint64_t imsi, uint8_t lcid) |
uint32_t | GetDlTxPackets (uint64_t imsi, uint8_t lcid) |
uint32_t | GetDlRxPackets (uint64_t imsi, uint8_t lcid) |
uint64_t | GetDlTxData (uint64_t imsi, uint8_t lcid) |
uint64_t | GetDlRxData (uint64_t imsi, uint8_t lcid) |
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::vector< double > | GetDlPduSizeStats (uint64_t imsi, uint8_t lcid) |
![]() | |
LteStatsCalculator () | |
virtual | ~LteStatsCalculator () |
void | SetUlOutputFilename (std::string outputFilename) |
void | SetDlOutputFilename (std::string outputFilename) |
bool | ExistsImsiPath (std::string path) |
void | SetImsiPath (std::string path, uint64_t imsi) |
uint64_t | GetImsiPath (std::string path) |
bool | ExistsCellIdPath (std::string path) |
void | SetCellIdPath (std::string path, uint16_t cellId) |
uint16_t | GetCellIdPath (std::string path) |
![]() | |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Dispose (void) |
void | AggregateObject (Ptr< Object > other) |
AggregateIterator | GetAggregateIterator (void) const |
void | Start (void) |
![]() | |
SimpleRefCount (const SimpleRefCount &o) | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
uint32_t | GetReferenceCount (void) const |
![]() | |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
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. |
Calculation of statistics from the RLC layer for uplink and downlink, the data is dumped into a file periodically. Metrics considered are:
ns3::RadioBearerStatsCalculator::RadioBearerStatsCalculator | ( | ) |
Class constructor
References NS_LOG_FUNCTION.
ns3::RadioBearerStatsCalculator::RadioBearerStatsCalculator | ( | std::string | protocolType | ) |
Class constructor
References NS_LOG_FUNCTION.
|
virtual |
Class destructor
References NS_LOG_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.
imsi | IMSI of the UE who received the PDU |
rnti | C-RNTI of the UE who received the PDU |
lcid | LCID through which the PDU has been transmitted |
packetSize | size of the PDU in bytes |
delay | RLC to RLC delay in nanoseconds |
References ns3::Simulator::Now(), NS_LOG_DEBUG, and NS_LOG_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.
cellId | CellId of the attached Enb |
imsi | IMSI of the UE who is receiving the PDU |
rnti | C-RNTI of the UE who is receiving the PDU |
lcid | LCID through which the PDU has been transmitted |
packetSize | size of the PDU in bytes |
References ns3::Simulator::Now(), and NS_LOG_FUNCTION.
|
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.
References NS_LOG_FUNCTION.
uint32_t ns3::RadioBearerStatsCalculator::GetDlCellId | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the attached Enb cellId.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
double ns3::RadioBearerStatsCalculator::GetDlDelay | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the downlink RLC to RLC delay
imsi | IMSI of the UE |
lcid | LCID |
References 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.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
std::string ns3::RadioBearerStatsCalculator::GetDlOutputFilename | ( | void | ) |
Get the name of the file where the downlink statistics will be stored.
Reimplemented from ns3::LteStatsCalculator.
References GetDlPdcpOutputFilename().
std::string ns3::RadioBearerStatsCalculator::GetDlPdcpOutputFilename | ( | void | ) |
Get the name of the file where the downlink PDCP statistics will be stored.
Referenced by GetDlOutputFilename().
std::vector< double > ns3::RadioBearerStatsCalculator::GetDlPduSizeStats | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the downlink PDU size statistics: average, min, max and standard deviation.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint64_t ns3::RadioBearerStatsCalculator::GetDlRxData | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of received downlink data bytes.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint32_t ns3::RadioBearerStatsCalculator::GetDlRxPackets | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of received downlink data bytes.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint64_t ns3::RadioBearerStatsCalculator::GetDlTxData | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of transmitted downlink data bytes.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint32_t ns3::RadioBearerStatsCalculator::GetDlTxPackets | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of transmitted downlink data bytes.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
|
static |
This method returns the TypeId associated to ns3::RadioBearerStatsCalculator.
Inherited from ns3::Object
Attributes defined for this type:
No TraceSources defined for this type.
Reimplemented from ns3::LteStatsCalculator.
References ns3::Seconds(), ns3::LteStatsCalculator::SetDlOutputFilename(), SetDlPdcpOutputFilename(), ns3::TypeId::SetParent(), ns3::LteStatsCalculator::SetUlOutputFilename(), and SetUlPdcpOutputFilename().
uint32_t ns3::RadioBearerStatsCalculator::GetUlCellId | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the attached Enb cellId.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
double ns3::RadioBearerStatsCalculator::GetUlDelay | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the uplink RLC to RLC delay
imsi | IMSI of the UE |
lcid | LCID |
References 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.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
std::string ns3::RadioBearerStatsCalculator::GetUlOutputFilename | ( | void | ) |
Get the name of the file where the uplink statistics will be stored.
Reimplemented from ns3::LteStatsCalculator.
References GetUlPdcpOutputFilename().
std::string ns3::RadioBearerStatsCalculator::GetUlPdcpOutputFilename | ( | void | ) |
Get the name of the file where the uplink PDCP statistics will be stored.
Referenced by GetUlOutputFilename().
std::vector< double > ns3::RadioBearerStatsCalculator::GetUlPduSizeStats | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the uplink PDU size statistics: average, min, max and standard deviation.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint64_t ns3::RadioBearerStatsCalculator::GetUlRxData | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of received uplink data bytes.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint32_t ns3::RadioBearerStatsCalculator::GetUlRxPackets | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of received uplink packets.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint64_t ns3::RadioBearerStatsCalculator::GetUlTxData | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of transmitted uplink data bytes.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
uint32_t ns3::RadioBearerStatsCalculator::GetUlTxPackets | ( | uint64_t | imsi, |
uint8_t | lcid | ||
) |
Gets the number of transmitted uplink packets.
imsi | IMSI of the UE |
lcid | LCID |
References NS_LOG_FUNCTION.
void ns3::RadioBearerStatsCalculator::SetDlPdcpOutputFilename | ( | std::string | outputFilename | ) |
Set the name of the file where the downlink PDCP statistics will be stored.
outputFilename | string with the name of the file |
Referenced by GetTypeId().
void ns3::RadioBearerStatsCalculator::SetUlPdcpOutputFilename | ( | std::string | outputFilename | ) |
Set the name of the file where the uplink PDCP statistics will be stored.
outputFilename | string with the name of the file |
Referenced by GetTypeId().
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.
cellId | CellId of the attached Enb |
imsi | IMSI of the UE who received the PDU |
rnti | C-RNTI of the UE who received the PDU |
lcid | LCID through which the PDU has been received |
packetSize | size of the PDU in bytes |
delay | RLC to RLC delay in nanoseconds |
References ns3::Simulator::Now(), NS_LOG_DEBUG, and NS_LOG_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.
imsi | IMSI of the UE who transmitted the PDU |
rnti | C-RNTI of the UE who transmitted the PDU |
lcid | LCID through which the PDU has been transmitted |
packetSize | size of the PDU in bytes |
References ns3::Simulator::Now(), and NS_LOG_FUNCTION.