26 #ifndef NFD_DAEMON_FW_ASF_PROBING_MODULE_HPP
27 #define NFD_DAEMON_FW_ASF_PROBING_MODULE_HPP
60 return m_probingInterval;
65 using FaceInfoFacePair = std::pair<FaceInfo*, Face*>;
67 struct FaceInfoCompare
70 operator()(
const FaceInfoFacePair& leftPair,
const FaceInfoFacePair& rightPair)
const
72 const FaceInfo& lhs = *leftPair.first;
73 const FaceInfo& rhs = *rightPair.first;
81 using FaceInfoFacePairSet = std::set<FaceInfoFacePair, FaceInfoCompare>;
84 chooseFace(
const FaceInfoFacePairSet& rankedFaces);
87 getProbingProbability(uint64_t rank, uint64_t rankSum, uint64_t nFaces);
94 time::milliseconds m_probingInterval;
Generalization of a network interface.
Represents an entry in the FIB.
Helper class to retrieve and create strategy measurements.
Strategy information for each face in a namespace.
time::nanoseconds getSrtt() const
Face * getFaceToProbe(const Face &inFace, const Interest &interest, const fib::Entry &fibEntry, const Face &faceUsed)
bool isProbingNeeded(const fib::Entry &fibEntry, const Name &interestName)
time::milliseconds getProbingInterval() const
static constexpr time::milliseconds MIN_PROBING_INTERVAL
void afterForwardingProbe(const fib::Entry &fibEntry, const Name &interestName)
void setProbingInterval(time::milliseconds probingInterval)
void scheduleProbe(const fib::Entry &fibEntry, time::milliseconds interval)
ProbingModule(AsfMeasurements &measurements)
static constexpr time::milliseconds DEFAULT_PROBING_INTERVAL