NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: 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>

Classes

class  PitInfo
 

Public Types

typedef time::microseconds Duration
 time granularity More...
 

Public Member Functions

 RetxSuppressionExponential (const Duration &initialInterval=DEFAULT_INITIAL_INTERVAL, float multiplier=DEFAULT_MULTIPLIER, const Duration &maxInterval=DEFAULT_MAX_INTERVAL)
 
RetxSuppressionResult decidePerPitEntry (pit::Entry &pitEntry)
 determines whether Interest is a retransmission per pit entry and if so, whether it shall be forwarded or suppressed More...
 
RetxSuppressionResult decidePerUpstream (pit::Entry &pitEntry, Face &outFace)
 determines whether Interest is a retransmission per upstream and if so, whether it shall be forwarded or suppressed More...
 
void incrementIntervalForOutRecord (pit::OutRecord &outRecord)
 Increment the suppression interval for out record. More...
 

Static Public Attributes

static const Duration DEFAULT_INITIAL_INTERVAL = 1_ms
 
static const float DEFAULT_MULTIPLIER = 2.0f
 
static const Duration DEFAULT_MAX_INTERVAL = 250_ms
 

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 41 of file retx-suppression-exponential.hpp.

Member Typedef Documentation

◆ Duration

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 57 of file retx-suppression-exponential.cpp.

Member Function Documentation

◆ decidePerPitEntry()

RetxSuppressionResult nfd::fw::RetxSuppressionExponential::decidePerPitEntry ( pit::Entry pitEntry)

◆ decidePerUpstream()

RetxSuppressionResult nfd::fw::RetxSuppressionExponential::decidePerUpstream ( pit::Entry pitEntry,
Face outFace 
)

◆ incrementIntervalForOutRecord()

void nfd::fw::RetxSuppressionExponential::incrementIntervalForOutRecord ( pit::OutRecord outRecord)

Member Data Documentation

◆ DEFAULT_INITIAL_INTERVAL

const RetxSuppressionExponential::Duration nfd::fw::RetxSuppressionExponential::DEFAULT_INITIAL_INTERVAL = 1_ms
static

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

◆ DEFAULT_MULTIPLIER

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

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

◆ DEFAULT_MAX_INTERVAL

const RetxSuppressionExponential::Duration nfd::fw::RetxSuppressionExponential::DEFAULT_MAX_INTERVAL = 250_ms
static

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


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