NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.0: NDN, CCN, CCNx, content centric networks
API Documentation
nfd::fw::RetxSuppressionExponential Class Reference

a retransmission suppression decision algorithm that suppresses retransmissions using exponential backoff More...

#include <retx-suppression-exponential.hpp>

Inheritance diagram for nfd::fw::RetxSuppressionExponential:
Collaboration diagram for nfd::fw::RetxSuppressionExponential:

Classes

class  PitInfo
 

Public Types

typedef time::microseconds Duration
 time granularity More...
 
- Public Types inherited from nfd::fw::RetxSuppression
enum  Result { NEW, FORWARD, SUPPRESS }
 

Public Member Functions

 RetxSuppressionExponential (const Duration &initialInterval=DEFAULT_INITIAL_INTERVAL, float multiplier=DEFAULT_MULTIPLIER, const Duration &maxInterval=DEFAULT_MAX_INTERVAL)
 
virtual Result decide (const Face &inFace, const Interest &interest, pit::Entry &pitEntry) const 1
 determines whether Interest is a retransmission, and if so, whether it shall be forwarded or suppressed More...
 

Static Public Attributes

static const Duration DEFAULT_INITIAL_INTERVAL
 
static const float DEFAULT_MULTIPLIER = 2.0
 
static const Duration DEFAULT_MAX_INTERVAL
 

Additional Inherited Members

- Protected Member Functions inherited from nfd::fw::RetxSuppression
time::steady_clock::TimePoint getLastOutgoing (const pit::Entry &pitEntry) const
 

Detailed Description

a retransmission suppression decision algorithm that suppresses retransmissions using exponential backoff

The i-th retransmission will be suppressed if the last transmission (out-record) occurred within MIN(initialInterval * multiplier^(i-1), maxInterval)

Definition at line 40 of file retx-suppression-exponential.hpp.

Member Typedef Documentation

§ Duration

time granularity

Definition at line 45 of file retx-suppression-exponential.hpp.

Constructor & Destructor Documentation

§ RetxSuppressionExponential()

nfd::fw::RetxSuppressionExponential::RetxSuppressionExponential ( const Duration initialInterval = DEFAULT_INITIAL_INTERVAL,
float  multiplier = DEFAULT_MULTIPLIER,
const Duration maxInterval = DEFAULT_MAX_INTERVAL 
)
explicit

Definition at line 59 of file retx-suppression-exponential.cpp.

Member Function Documentation

§ decide()

RetxSuppression::Result nfd::fw::RetxSuppressionExponential::decide ( const Face &  inFace,
const Interest interest,
pit::Entry pitEntry 
) const
virtual

Member Data Documentation

§ DEFAULT_INITIAL_INTERVAL

const RetxSuppressionExponential::Duration nfd::fw::RetxSuppressionExponential::DEFAULT_INITIAL_INTERVAL
static
Initial value:
=
time::milliseconds(1)

Definition at line 62 of file retx-suppression-exponential.hpp.

§ DEFAULT_MULTIPLIER

const float nfd::fw::RetxSuppressionExponential::DEFAULT_MULTIPLIER = 2.0
static

Definition at line 66 of file retx-suppression-exponential.hpp.

§ DEFAULT_MAX_INTERVAL

const RetxSuppressionExponential::Duration nfd::fw::RetxSuppressionExponential::DEFAULT_MAX_INTERVAL
static
Initial value:
=
time::milliseconds(250)

Definition at line 67 of file retx-suppression-exponential.hpp.


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