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::RttEstimator Class Referenceabstract

Base class for all RTT Estimators. More...

#include <ndn-rtt-estimator.h>

Inheritance diagram for ns3::ndn::RttEstimator:
Collaboration diagram for ns3::ndn::RttEstimator:

Public Member Functions

 RttEstimator (const RttEstimator &)
 
virtual TypeId GetInstanceTypeId (void) const
 
virtual void SentSeq (SequenceNumber32 seq, uint32_t size)
 Note that a particular sequence has been sent. More...
 
virtual Time AckSeq (SequenceNumber32 ackSeq)
 Note that a particular ack sequence has been received. More...
 
virtual void ClearSent ()
 Clear all history entries.
 
virtual void Measurement (Time t)=0
 Add a new measurement to the estimator. More...
 
virtual Time RetransmitTimeout ()=0
 Returns the estimated RTO. More...
 
virtual Ptr< RttEstimatorCopy () const =0
 
virtual void IncreaseMultiplier ()
 Increase the estimation multiplier up to MaxMultiplier.
 
virtual void ResetMultiplier ()
 Resets the estimation multiplier to 1.
 
virtual void Reset ()
 Resets the estimation to its initial state.
 
void SetMinRto (Time minRto)
 Sets the Minimum RTO. More...
 
Time GetMinRto (void) const
 Get the Minimum RTO. More...
 
void SetMaxRto (Time maxRto)
 Sets the Maximum RTO. More...
 
Time GetMaxRto (void) const
 Get the Maximum RTO. More...
 
void SetCurrentEstimate (Time estimate)
 Sets the current RTT estimate (forcefully). More...
 
Time GetCurrentEstimate (void) const
 gets the current RTT estimate. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 

Protected Attributes

Time m_currentEstimatedRtt
 
Time m_minRto
 
Time m_maxRto
 
uint32_t m_nSamples
 
uint16_t m_multiplier
 
RttHistory_t m_history
 

Detailed Description

Base class for all RTT Estimators.

Definition at line 61 of file ndn-rtt-estimator.h.

Member Function Documentation

Time ns3::ndn::RttEstimator::AckSeq ( SequenceNumber32  ackSeq)
virtual

Note that a particular ack sequence has been received.

Parameters
ackSeqthe ack sequence number.
Returns
The measured RTT for this ack.

Reimplemented in ns3::ndn::RttMeanDeviation.

Definition at line 195 of file ndn-rtt-estimator.cc.

References Measurement(), and ResetMultiplier().

Time ns3::ndn::RttEstimator::GetCurrentEstimate ( void  ) const

gets the current RTT estimate.

Returns
The current RTT estimate.

Definition at line 108 of file ndn-rtt-estimator.cc.

Time ns3::ndn::RttEstimator::GetMaxRto ( void  ) const

Get the Maximum RTO.

Returns
The maximum RTO returned by the estimator.

Definition at line 96 of file ndn-rtt-estimator.cc.

Time ns3::ndn::RttEstimator::GetMinRto ( void  ) const

Get the Minimum RTO.

Returns
The minimum RTO returned by the estimator.

Definition at line 84 of file ndn-rtt-estimator.cc.

virtual void ns3::ndn::RttEstimator::Measurement ( Time  t)
pure virtual

Add a new measurement to the estimator.

Pure virtual function.

Parameters
tthe new RTT measure.

Implemented in ns3::ndn::RttMeanDeviation.

Referenced by AckSeq().

virtual Time ns3::ndn::RttEstimator::RetransmitTimeout ( )
pure virtual

Returns the estimated RTO.

Pure virtual function.

Returns
the estimated RTO.

Implemented in ns3::ndn::RttMeanDeviation.

void ns3::ndn::RttEstimator::SentSeq ( SequenceNumber32  seq,
uint32_t  size 
)
virtual

Note that a particular sequence has been sent.

Parameters
seqthe packet sequence number.
sizethe packet size.

Reimplemented in ns3::ndn::RttMeanDeviation.

Definition at line 167 of file ndn-rtt-estimator.cc.

void ns3::ndn::RttEstimator::SetCurrentEstimate ( Time  estimate)

Sets the current RTT estimate (forcefully).

Parameters
estimateThe current RTT estimate.

Definition at line 102 of file ndn-rtt-estimator.cc.

void ns3::ndn::RttEstimator::SetMaxRto ( Time  maxRto)

Sets the Maximum RTO.

Parameters
minRtoThe maximum RTO returned by the estimator.

Definition at line 90 of file ndn-rtt-estimator.cc.

void ns3::ndn::RttEstimator::SetMinRto ( Time  minRto)

Sets the Minimum RTO.

Parameters
minRtoThe minimum RTO returned by the estimator.

Definition at line 78 of file ndn-rtt-estimator.cc.


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