33 time::milliseconds(1);
36 time::milliseconds(250);
63 : m_initialInterval(initialInterval)
64 , m_multiplier(multiplier)
65 , m_maxInterval(maxInterval)
67 BOOST_ASSERT(initialInterval > time::milliseconds::zero());
68 BOOST_ASSERT(multiplier >= 1.0);
69 BOOST_ASSERT(maxInterval >= initialInterval);
static const Duration DEFAULT_INITIAL_INTERVAL
generalization of a network interface
static time_point now() noexcept
Duration suppressionInterval
if last transmission occurred within suppressionInterval, retransmission will be suppressed ...
Interest is retransmission and should be suppressed.
represents an Interest packet
static const float DEFAULT_MULTIPLIER
Interest is new (not a retransmission)
static const Duration DEFAULT_MAX_INTERVAL
time::steady_clock::TimePoint getLastOutgoing(const pit::Entry &pitEntry) const
Copyright (c) 2011-2015 Regents of the University of California.
PitInfo(const Duration &initialInterval)
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 suppress...
bool hasPendingOutRecords(const pit::Entry &pitEntry)
determine whether pitEntry has any pending out-records
std::pair< T *, bool > insertStrategyInfo(A &&... args)
insert a StrategyInfo item
time::microseconds Duration
time granularity
Copyright (c) 2014-2016, Regents of the University of California, Arizona Board of Regents...
Interest is retransmission and should be forwarded.
static constexpr int getTypeId()
contains arbitrary information forwarding strategy places on table entries