A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ns3::FlowMonitor::FlowStats Struct Reference

Structure that represents the measured metrics of an individual packet flow. More...

#include <flow-monitor.h>

Public Attributes

std::vector< uint64_t > bytesDropped
 
Histogram delayHistogram
 Histogram of the packet delays.
 
Time delaySum
 
Histogram flowInterruptionsHistogram
 
Histogram jitterHistogram
 Histogram of the packet jitters.
 
Time jitterSum
 
Time lastDelay
 
uint32_t lostPackets
 
std::vector< uint32_t > packetsDropped
 
Histogram packetSizeHistogram
 Histogram of the packet sizes.
 
uint64_t rxBytes
 Total number of received bytes for the flow.
 
uint32_t rxPackets
 Total number of received packets for the flow.
 
Time timeFirstRxPacket
 
Time timeFirstTxPacket
 
Time timeLastRxPacket
 
Time timeLastTxPacket
 
uint32_t timesForwarded
 
uint64_t txBytes
 Total number of transmitted bytes for the flow.
 
uint32_t txPackets
 Total number of transmitted packets for the flow.
 

Detailed Description

Structure that represents the measured metrics of an individual packet flow.

Definition at line 46 of file flow-monitor.h.

Member Data Documentation

std::vector<uint64_t> ns3::FlowMonitor::FlowStats::bytesDropped

This attribute also tracks the number of lost bytes. See also comment in attribute packetsDropped.

Definition at line 125 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportDrop().

Time ns3::FlowMonitor::FlowStats::delaySum

Contains the sum of all end-to-end delays for all received packets of the flow.

Definition at line 69 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportLastRx().

Time ns3::FlowMonitor::FlowStats::jitterSum

Contains the sum of all end-to-end delay jitter (delay variation) values for all received packets of the flow. Here we define jitter of a packet as the delay variation relatively to the last packet of the stream, i.e. $Jitter\left\{P_N\right\} = \left|Delay\left\{P_N\right\} - Delay\left\{P_{N-1}\right\}\right|$. This definition is in accordance with the Type-P-One-way-ipdv as defined in IETF RFC 3393.

Definition at line 78 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportLastRx().

uint32_t ns3::FlowMonitor::FlowStats::lostPackets

Total number of packets that are assumed to be lost, i.e. those that were transmitted but have not been reportedly received or forwarded for a long time. By default, packets missing for a period of over 10 seconds are assumed to be lost, although this value can be easily configured in runtime

Definition at line 96 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportDrop().

std::vector<uint32_t> ns3::FlowMonitor::FlowStats::packetsDropped

This attribute also tracks the number of lost packets and bytes, but discriminates the losses by a reason code. This reason code is usually an enumeration defined by the concrete FlowProbe class, and for each reason code there may be a vector entry indexed by that code and whose value is the number of packets or bytes lost due to this reason. For instance, in the Ipv4FlowProbe case the following reasons are currently defined: DROP_NO_ROUTE (no IPv4 route found for a packet), DROP_TTL_EXPIRE (a packet was dropped due to an IPv4 TTL field decremented and reaching zero), and DROP_BAD_CHECKSUM (a packet had bad IPv4 header checksum and had to be dropped).

Definition at line 121 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportDrop().

Time ns3::FlowMonitor::FlowStats::timeFirstRxPacket

Contains the absolute time when the first packet in the flow was received by an end node, i.e. the time when the flow reception starts

Definition at line 56 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportLastRx().

Time ns3::FlowMonitor::FlowStats::timeFirstTxPacket

Contains the absolute time when the first packet in the flow was transmitted, i.e. the time when the flow transmission starts

Definition at line 51 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportFirstTx().

Time ns3::FlowMonitor::FlowStats::timeLastRxPacket

Contains the absolute time when the last packet in the flow was received, i.e. the time when the flow reception ends

Definition at line 65 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportLastRx().

Time ns3::FlowMonitor::FlowStats::timeLastTxPacket

Contains the absolute time when the last packet in the flow was transmitted, i.e. the time when the flow transmission ends

Definition at line 61 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportFirstTx().

uint32_t ns3::FlowMonitor::FlowStats::timesForwarded

Contains the number of times a packet has been reportedly forwarded, summed for all received packets in the flow

Definition at line 100 of file flow-monitor.h.

Referenced by ns3::FlowMonitor::ReportLastRx().


The documentation for this struct was generated from the following file: