a forwarding strategy controlled by client application More...
#include <client-control-strategy.hpp>
Public Member Functions | |
ClientControlStrategy (Forwarder &forwarder, const Name &name=STRATEGY_NAME) | |
virtual | ~ClientControlStrategy () |
virtual void | afterReceiveInterest (const Face &inFace, const Interest &interest, shared_ptr< fib::Entry > fibEntry, shared_ptr< pit::Entry > pitEntry) 1 |
trigger after Interest is received More... | |
Public Member Functions inherited from nfd::fw::BestRouteStrategy | |
BestRouteStrategy (Forwarder &forwarder, const Name &name=STRATEGY_NAME) | |
virtual | ~BestRouteStrategy () |
Public Member Functions inherited from nfd::fw::Strategy | |
Strategy (Forwarder &forwarder, const Name &name) | |
construct a strategy instance More... | |
virtual | ~Strategy () |
const Name & | getName () const |
a Name that represent the Strategy program More... | |
virtual void | beforeSatisfyInterest (shared_ptr< pit::Entry > pitEntry, const Face &inFace, const Data &data) |
trigger before PIT entry is satisfied More... | |
virtual void | beforeExpirePendingInterest (shared_ptr< pit::Entry > pitEntry) |
trigger before PIT entry expires More... | |
virtual void | afterReceiveNack (const Face &inFace, const lp::Nack &nack, shared_ptr< fib::Entry > fibEntry, shared_ptr< pit::Entry > pitEntry) |
trigger after Nack is received More... | |
Static Public Attributes | |
static const Name | STRATEGY_NAME |
Static Public Attributes inherited from nfd::fw::BestRouteStrategy | |
static const Name | STRATEGY_NAME |
Additional Inherited Members | |
Protected Member Functions inherited from nfd::fw::Strategy | |
void | sendInterest (shared_ptr< pit::Entry > pitEntry, shared_ptr< Face > outFace, bool wantNewNonce=false) |
send Interest to outFace More... | |
void | rejectPendingInterest (shared_ptr< pit::Entry > pitEntry) |
decide that a pending Interest cannot be forwarded More... | |
void | sendNack (shared_ptr< pit::Entry > pitEntry, const Face &outFace, const lp::NackHeader &header) |
send Nack to outFace More... | |
void | sendNacks (shared_ptr< pit::Entry > pitEntry, const lp::NackHeader &header, std::initializer_list< const Face *> exceptFaces=std::initializer_list< const Face *>()) |
send Nack to every face that has an in-record, except those in exceptFaces More... | |
MeasurementsAccessor & | getMeasurements () |
shared_ptr< Face > | getFace (FaceId id) |
const FaceTable & | getFaceTable () |
Protected Attributes inherited from nfd::fw::Strategy | |
signal::Signal< FaceTable, shared_ptr< Face > > & | afterAddFace |
signal::Signal< FaceTable, shared_ptr< Face > > & | beforeRemoveFace |
a forwarding strategy controlled by client application
The consumer may specify the nexthop for an Interest in NDNLPv2 NextHopFaceId field. If NextHopFaceId field is omitted, the Interest is forwarded to the FIB nexthop with lowest routing cost.
Definition at line 40 of file client-control-strategy.hpp.
nfd::fw::ClientControlStrategy::ClientControlStrategy | ( | Forwarder & | forwarder, |
const Name & | name = STRATEGY_NAME |
||
) |
Definition at line 38 of file client-control-strategy.cpp.
|
virtual |
Definition at line 43 of file client-control-strategy.cpp.
|
virtual |
trigger after Interest is received
The Interest:
The strategy should decide whether and where to forward this Interest.
Reimplemented from nfd::fw::BestRouteStrategy.
Definition at line 48 of file client-control-strategy.cpp.
References nfd::fw::BestRouteStrategy::afterReceiveInterest(), nfd::fw::Strategy::getFace(), ndn::Interest::getName(), ndn::TagHost::getTag(), NFD_LOG_WARN, nfd::fw::Strategy::rejectPendingInterest(), and nfd::fw::Strategy::sendInterest().
|
static |
Definition at line 55 of file client-control-strategy.hpp.