main class of NFD More...
#include <forwarder.hpp>
Public Member Functions | |
Forwarder () | |
~Forwarder () | |
const ForwarderCounters & | getCounters () const |
FaceTable & | getFaceTable () |
shared_ptr< Face > | getFace (FaceId id) const |
get existing Face More... | |
void | addFace (shared_ptr< Face > face) |
add new Face More... | |
void | startProcessInterest (Face &face, const Interest &interest) |
start incoming Interest processing More... | |
void | startProcessData (Face &face, const Data &data) |
start incoming Data processing More... | |
void | startProcessNack (Face &face, const lp::Nack &nack) |
start incoming Nack processing More... | |
NameTree & | getNameTree () |
Fib & | getFib () |
Pit & | getPit () |
Cs & | getCs () |
Measurements & | getMeasurements () |
StrategyChoice & | getStrategyChoice () |
DeadNonceList & | getDeadNonceList () |
NetworkRegionTable & | getNetworkRegionTable () |
void | setCsFromNdnSim (ns3::Ptr< ns3::ndn::ContentStore > cs) |
Public Attributes | |
signal::Signal< Forwarder, pit::Entry, Face, Data > | beforeSatisfyInterest |
trigger before PIT entry is satisfied More... | |
signal::Signal< Forwarder, pit::Entry > | beforeExpirePendingInterest |
trigger before PIT entry expires More... | |
Friends | |
class | fw::Strategy |
main class of NFD
Forwarder owns all faces and tables, and implements forwarding pipelines.
Definition at line 55 of file forwarder.hpp.
nfd::Forwarder::Forwarder | ( | ) |
Definition at line 44 of file forwarder.cpp.
References nfd::FaceTable::addReserved(), nfd::face::FACEID_CONTENT_STORE, getFaceTable(), and nfd::fw::installStrategies().
nfd::Forwarder::~Forwarder | ( | ) |
Definition at line 56 of file forwarder.cpp.
|
inline |
Definition at line 271 of file forwarder.hpp.
Referenced by nfd::ForwarderStatusManager::ForwarderStatusManager().
|
inline |
Definition at line 277 of file forwarder.hpp.
Referenced by Forwarder(), and nfd::fw::Strategy::getFaceTable().
|
inline |
get existing Face
shortcut to .getFaceTable().get(face)
Definition at line 283 of file forwarder.hpp.
Referenced by nfd::fw::Strategy::getFace(), and nfd::ignoreRibAndLogSections().
|
inline |
void nfd::Forwarder::startProcessInterest | ( | Face & | face, |
const Interest & | interest | ||
) |
start incoming Interest processing
face | face on which Interest is received |
interest | the incoming Interest, must be created with make_shared |
Definition at line 61 of file forwarder.cpp.
References ndn::Interest::getLink(), ndn::Interest::getName(), ndn::Interest::hasLink(), and NFD_LOG_DEBUG.
Referenced by nfd::FaceTable::addReserved().
void nfd::Forwarder::startProcessData | ( | Face & | face, |
const Data & | data | ||
) |
start incoming Data processing
face | face on which Data is received |
data | the incoming Data, must be created with make_shared |
Definition at line 80 of file forwarder.cpp.
Referenced by nfd::FaceTable::addReserved().
void nfd::Forwarder::startProcessNack | ( | Face & | face, |
const lp::Nack & | nack | ||
) |
start incoming Nack processing
face | face on which Nack is received |
nack | the incoming Nack, must be created with make_shared |
Definition at line 89 of file forwarder.cpp.
References nfd::fw::Strategy::afterReceiveInterest(), nfd::fw::Strategy::afterReceiveNack(), nfd::fw::Strategy::beforeExpirePendingInterest(), beforeExpirePendingInterest, nfd::fw::Strategy::beforeSatisfyInterest(), beforeSatisfyInterest, nfd::pit::DUPLICATE_NONCE_NONE, nfd::Pit::erase(), ndn::nfd::FACE_SCOPE_LOCAL, ndn::nfd::FACE_SCOPE_NON_LOCAL, nfd::face::FACEID_CONTENT_STORE, nfd::Pit::find(), nfd::cs::Cs::find(), nfd::Pit::findAllDataMatches(), nfd::Fib::findLongestPrefixMatch(), ndn::Link::getDelegations(), nfd::pit::FaceRecord::getFace(), ndn::Data::getFreshnessPeriod(), nfd::getGlobalRng(), ndn::lp::Nack::getInterest(), nfd::pit::FaceRecord::getLastRenewed(), ndn::Interest::getLink(), ndn::Data::getName(), ndn::Interest::getName(), ndn::Interest::getNonce(), ndn::lp::NackHeader::getReason(), ndn::lp::Nack::getReason(), ndn::Interest::getSelectedDelegation(), nfd::DeadNonceList::has(), ndn::Interest::hasLink(), ndn::Interest::hasSelectedDelegation(), nfd::Pit::insert(), nfd::cs::Cs::insert(), nfd::face::INVALID_FACEID, nfd::NetworkRegionTable::isInProducerRegion(), ndn::Name::isPrefixOf(), ndn::nfd::LINK_TYPE_MULTI_ACCESS, NFD_LOG_DEBUG, NFD_LOG_ERROR, NFD_LOG_TRACE, NFD_LOG_WARN, nfd::ForwarderCounters::nInData, nfd::ForwarderCounters::nInInterests, nfd::ForwarderCounters::nInNacks, nfd::ForwarderCounters::nOutData, nfd::ForwarderCounters::nOutInterests, nfd::ForwarderCounters::nOutNacks, ndn::time::steady_clock::now(), ndn::lp::Nack::setHeader(), ndn::Interest::setNonce(), and ndn::TagHost::setTag().
Referenced by nfd::FaceTable::addReserved().
|
inline |
Definition at line 295 of file forwarder.hpp.
Referenced by nfd::ForwarderStatusManager::ForwarderStatusManager().
|
inline |
Definition at line 301 of file forwarder.hpp.
Referenced by nfd::FaceTable::addReserved(), and nfd::ForwarderStatusManager::ForwarderStatusManager().
|
inline |
Definition at line 307 of file forwarder.hpp.
Referenced by nfd::ForwarderStatusManager::ForwarderStatusManager().
|
inline |
Definition at line 313 of file forwarder.hpp.
Referenced by nfd::ForwarderStatusManager::ForwarderStatusManager().
|
inline |
Definition at line 319 of file forwarder.hpp.
Referenced by nfd::ForwarderStatusManager::ForwarderStatusManager().
|
inline |
Definition at line 325 of file forwarder.hpp.
Referenced by nfd::fw::installStrategies().
|
inline |
Definition at line 331 of file forwarder.hpp.
|
inline |
Definition at line 337 of file forwarder.hpp.
|
inline |
Definition at line 343 of file forwarder.hpp.
|
friend |
Definition at line 267 of file forwarder.hpp.
signal::Signal<Forwarder, pit::Entry, Face, Data> nfd::Forwarder::beforeSatisfyInterest |
trigger before PIT entry is satisfied
Definition at line 138 of file forwarder.hpp.
Referenced by startProcessNack().
signal::Signal<Forwarder, pit::Entry> nfd::Forwarder::beforeExpirePendingInterest |
trigger before PIT entry expires
Definition at line 143 of file forwarder.hpp.
Referenced by startProcessNack().