26 #ifndef NFD_DAEMON_FW_RETX_SUPPRESSION_EXPONENTIAL_HPP
27 #define NFD_DAEMON_FW_RETX_SUPPRESSION_EXPONENTIAL_HPP
74 static std::unique_ptr<RetxSuppressionExponential>
81 return os <<
"RetxSuppressionExponential initial-interval=" << retxSupp.m_initialInterval.count()
82 <<
" max-interval=" << retxSupp.m_maxInterval.count()
83 <<
" multiplier=" << retxSupp.m_multiplier;
94 const float m_multiplier;
Generalization of a network interface.
A retransmission suppression decision algorithm that suppresses retransmissions using exponential bac...
friend std::ostream & operator<<(std::ostream &os, const RetxSuppressionExponential &retxSupp)
time::milliseconds Duration
Time granularity.
static std::unique_ptr< RetxSuppressionExponential > construct(const StrategyParameters ¶ms)
void incrementIntervalForOutRecord(pit::OutRecord &outRecord)
Increment the suppression interval for an out-record.
static constexpr Duration DEFAULT_MAX_INTERVAL
static constexpr Duration DEFAULT_INITIAL_INTERVAL
RetxSuppressionResult decidePerUpstream(pit::Entry &pitEntry, Face &outFace)
Determines whether Interest is a retransmission per upstream and if so, whether it shall be forwarded...
RetxSuppressionResult decidePerPitEntry(pit::Entry &pitEntry)
Determines whether Interest is a retransmission per PIT entry and if so, whether it shall be forwarde...
static constexpr float DEFAULT_MULTIPLIER
RetxSuppressionExponential(Duration initialInterval=DEFAULT_INITIAL_INTERVAL, Duration maxInterval=DEFAULT_MAX_INTERVAL, float multiplier=DEFAULT_MULTIPLIER)
Represents an entry in the Interest table (PIT).
Contains information about an Interest toward an outgoing face.
#define NFD_PUBLIC_WITH_TESTS_ELSE_PRIVATE