ASF Probing Module. More...
#include <asf-probing-module.hpp>

Public Member Functions | |
| ProbingModule (AsfMeasurements &measurements) | |
| void | scheduleProbe (const fib::Entry &fibEntry, const time::milliseconds &interval) |
| Face * | getFaceToProbe (const Face &inFace, const Interest &interest, const fib::Entry &fibEntry, const Face &faceUsed) |
| bool | isProbingNeeded (const fib::Entry &fibEntry, const Interest &interest) |
| void | afterForwardingProbe (const fib::Entry &fibEntry, const Interest &interest) |
Static Public Attributes | |
| static constexpr time::seconds | DEFAULT_PROBING_INTERVAL = time::seconds(60) |
ASF Probing Module.
Definition at line 37 of file asf-probing-module.hpp.
|
explicit |
Definition at line 39 of file asf-probing-module.cpp.
| void nfd::fw::asf::ProbingModule::scheduleProbe | ( | const fib::Entry & | fibEntry, |
| const time::milliseconds & | interval | ||
| ) |
Definition at line 46 of file asf-probing-module.cpp.
References Face, nfd::fw::asf::AsfMeasurements::getNamespaceInfo(), nfd::fib::Entry::getPrefix(), nfd::scheduler::schedule(), and nfd::fw::asf::NamespaceInfo::setIsProbingDue().
Referenced by afterForwardingProbe(), and isProbingNeeded().
| Face * nfd::fw::asf::ProbingModule::getFaceToProbe | ( | const Face & | inFace, |
| const Interest & | interest, | ||
| const fib::Entry & | fibEntry, | ||
| const Face & | faceUsed | ||
| ) |
Definition at line 66 of file asf-probing-module.cpp.
References Face, nfd::fw::asf::AsfMeasurements::getFaceInfo(), nfd::fib::Entry::getNextHops(), nfd::fw::asf::FaceInfo::getSrtt(), nfd::fw::asf::FaceInfo::hasSrttMeasurement(), nfd::fw::asf::FaceInfo::isTimeout(), and nfd::fw::wouldViolateScope().
Referenced by nfd::fw::asf::AsfStrategy::afterReceiveInterest().
| bool nfd::fw::asf::ProbingModule::isProbingNeeded | ( | const fib::Entry & | fibEntry, |
| const Interest & | interest | ||
| ) |
Definition at line 114 of file asf-probing-module.cpp.
References nfd::fw::asf::AsfMeasurements::getOrCreateNamespaceInfo(), nfd::fw::asf::NamespaceInfo::isFirstProbeScheduled(), nfd::fw::asf::NamespaceInfo::isProbingDue(), websocketpp::lib::asio::milliseconds(), scheduleProbe(), and nfd::fw::asf::NamespaceInfo::setHasFirstProbeBeenScheduled().
Referenced by nfd::fw::asf::AsfStrategy::afterReceiveInterest().
| void nfd::fw::asf::ProbingModule::afterForwardingProbe | ( | const fib::Entry & | fibEntry, |
| const Interest & | interest | ||
| ) |
Definition at line 132 of file asf-probing-module.cpp.
References Face, nfd::getGlobalRng(), nfd::fw::asf::AsfMeasurements::getOrCreateNamespaceInfo(), scheduleProbe(), and nfd::fw::asf::NamespaceInfo::setIsProbingDue().
Referenced by nfd::fw::asf::AsfStrategy::afterReceiveInterest().
|
static |
Definition at line 74 of file asf-probing-module.hpp.