a retransmission suppression decision algorithm that suppresses retransmissions using exponential backoff More...
#include <retx-suppression-exponential.hpp>
Public Types | |
typedef time::microseconds | Duration |
time granularity More... | |
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 override |
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 |
Protected Member Functions | |
time::steady_clock::TimePoint | getLastOutgoing (const pit::Entry &pitEntry) const |
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.
typedef time::microseconds nfd::fw::RetxSuppressionExponential::Duration |
time granularity
Definition at line 45 of file retx-suppression-exponential.hpp.
|
inherited |
Enumerator | |
---|---|
NEW |
Interest is new (not a retransmission) |
FORWARD |
Interest is retransmission and should be forwarded. |
SUPPRESS |
Interest is retransmission and should be suppressed. |
Definition at line 39 of file retx-suppression.hpp.
|
explicit |
Definition at line 60 of file retx-suppression-exponential.cpp.
|
overridevirtual |
determines whether Interest is a retransmission, and if so, whether it shall be forwarded or suppressed
Implements nfd::fw::RetxSuppression.
Definition at line 73 of file retx-suppression-exponential.cpp.
|
protectedinherited |
Definition at line 32 of file retx-suppression.cpp.
|
static |
Definition at line 62 of file retx-suppression-exponential.hpp.
|
static |
Definition at line 67 of file retx-suppression-exponential.hpp.
|
static |
Definition at line 66 of file retx-suppression-exponential.hpp.