NS-3 based Named Data Networking (NDN) simulator
ndnSIM: NDN, CCN, CCNx, content centric networks
API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
ns3::ndn::L3RateTracer Class Reference

NDN network-layer rate tracer. More...

#include <ndn-l3-rate-tracer.h>

Inheritance diagram for ns3::ndn::L3RateTracer:
Collaboration diagram for ns3::ndn::L3RateTracer:

Public Member Functions

 L3RateTracer (boost::shared_ptr< std::ostream > os, Ptr< Node > node)
 Trace constructor that attaches to the node using node pointer. More...
 
 L3RateTracer (boost::shared_ptr< std::ostream > os, const std::string &node)
 Trace constructor that attaches to the node using node name. More...
 
virtual ~L3RateTracer ()
 Destructor.
 
virtual void PrintHeader (std::ostream &os) const
 Print head of the trace (e.g., for post-processing) More...
 
virtual void Print (std::ostream &os) const
 Print current trace data. More...
 
- Public Member Functions inherited from ns3::ndn::L3Tracer
 L3Tracer (Ptr< Node > node)
 Trace constructor that attaches to the node using node pointer. More...
 
 L3Tracer (const std::string &node)
 Trace constructor that attaches to the node using node name. More...
 
virtual ~L3Tracer ()
 Destructor.
 

Static Public Member Functions

static void InstallAll (const std::string &file, Time averagingPeriod=Seconds(0.5))
 Helper method to install tracers on all simulation nodes. More...
 
static void Install (const NodeContainer &nodes, const std::string &file, Time averagingPeriod=Seconds(0.5))
 Helper method to install tracers on the selected simulation nodes. More...
 
static void Install (Ptr< Node > node, const std::string &file, Time averagingPeriod=Seconds(0.5))
 Helper method to install tracers on a specific simulation node. More...
 
static void Destroy ()
 Explicit request to remove all statically created tracers. More...
 
static Ptr< L3RateTracerInstall (Ptr< Node > node, boost::shared_ptr< std::ostream > outputStream, Time averagingPeriod=Seconds(0.5))
 Helper method to install tracers on a specific simulation node. More...
 

Protected Member Functions

virtual void OutInterests (Ptr< const Interest >, Ptr< const Face >)
 
virtual void InInterests (Ptr< const Interest >, Ptr< const Face >)
 
virtual void DropInterests (Ptr< const Interest >, Ptr< const Face >)
 
virtual void OutNacks (Ptr< const Interest >, Ptr< const Face >)
 
virtual void InNacks (Ptr< const Interest >, Ptr< const Face >)
 
virtual void DropNacks (Ptr< const Interest >, Ptr< const Face >)
 
virtual void OutData (Ptr< const Data >, bool fromCache, Ptr< const Face >)
 
virtual void InData (Ptr< const Data >, Ptr< const Face >)
 
virtual void DropData (Ptr< const Data >, Ptr< const Face >)
 
virtual void SatisfiedInterests (Ptr< const pit::Entry >)
 
virtual void TimedOutInterests (Ptr< const pit::Entry >)
 
- Protected Member Functions inherited from ns3::ndn::L3Tracer
void Connect ()
 

Additional Inherited Members

- Protected Attributes inherited from ns3::ndn::L3Tracer
std::string m_node
 
Ptr< Node > m_nodePtr
 

Detailed Description

NDN network-layer rate tracer.

Definition at line 42 of file ndn-l3-rate-tracer.h.

Constructor & Destructor Documentation

ns3::ndn::L3RateTracer::L3RateTracer ( boost::shared_ptr< std::ostream >  os,
Ptr< Node >  node 
)

Trace constructor that attaches to the node using node pointer.

Parameters
osreference to the output stream
nodepointer to the node

Definition at line 200 of file ndn-l3-rate-tracer.cc.

ns3::ndn::L3RateTracer::L3RateTracer ( boost::shared_ptr< std::ostream >  os,
const std::string &  node 
)

Trace constructor that attaches to the node using node name.

Parameters
osreference to the output stream
nodeNamename of the node registered using Names::Add

Definition at line 207 of file ndn-l3-rate-tracer.cc.

Member Function Documentation

void ns3::ndn::L3RateTracer::Destroy ( )
static

Explicit request to remove all statically created tracers.

This method can be helpful if simulation scenario contains several independent run, or if it is desired to do a postprocessing of the resulting data

Definition at line 56 of file ndn-l3-rate-tracer.cc.

void ns3::ndn::L3RateTracer::Install ( const NodeContainer &  nodes,
const std::string &  file,
Time  averagingPeriod = Seconds (0.5) 
)
static

Helper method to install tracers on the selected simulation nodes.

Parameters
nodesNodes on which to install tracer
fileFile to which traces will be written. If filename is -, then std::out is used
averagingPeriodHow often data will be written into the trace file (default, every half second)

Definition at line 103 of file ndn-l3-rate-tracer.cc.

void ns3::ndn::L3RateTracer::Install ( Ptr< Node >  node,
const std::string &  file,
Time  averagingPeriod = Seconds (0.5) 
)
static

Helper method to install tracers on a specific simulation node.

Parameters
nodesNodes on which to install tracer
fileFile to which traces will be written. If filename is -, then std::out is used
averagingPeriodHow often data will be written into the trace file (default, every half second)

Definition at line 147 of file ndn-l3-rate-tracer.cc.

Ptr< L3RateTracer > ns3::ndn::L3RateTracer::Install ( Ptr< Node >  node,
boost::shared_ptr< std::ostream >  outputStream,
Time  averagingPeriod = Seconds (0.5) 
)
static

Helper method to install tracers on a specific simulation node.

Parameters
nodesNodes on which to install tracer
outputStreamSmart pointer to a stream
averagingPeriodHow often data will be written into the trace file (default, every half second)
Returns
a tuple of reference to output stream and list of tracers. !!! Attention !!! This tuple needs to be preserved for the lifetime of simulation, otherwise SEGFAULTs are inevitable

Definition at line 187 of file ndn-l3-rate-tracer.cc.

void ns3::ndn::L3RateTracer::InstallAll ( const std::string &  file,
Time  averagingPeriod = Seconds (0.5) 
)
static

Helper method to install tracers on all simulation nodes.

Parameters
fileFile to which traces will be written. If filename is -, then std::out is used
averagingPeriodDefines averaging period for the rate calculation, as well as how often data will be written into the trace file (default, every half second)

Definition at line 62 of file ndn-l3-rate-tracer.cc.

void ns3::ndn::L3RateTracer::Print ( std::ostream &  os) const
virtual

Print current trace data.

Parameters
osreference to output stream

Implements ns3::ndn::L3Tracer.

Definition at line 293 of file ndn-l3-rate-tracer.cc.

void ns3::ndn::L3RateTracer::PrintHeader ( std::ostream &  os) const
virtual

Print head of the trace (e.g., for post-processing)

Parameters
osreference to output stream

Implements ns3::ndn::L3Tracer.

Definition at line 237 of file ndn-l3-rate-tracer.cc.


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