a forwarding strategy that forwards Interest to all FIB nexthops More...
#include <multicast-strategy.hpp>
Public Member Functions | |
MulticastStrategy (Forwarder &forwarder, const Name &name=STRATEGY_NAME) | |
virtual void | afterReceiveInterest (const Face &inFace, const Interest &interest, const shared_ptr< pit::Entry > &pitEntry) override |
trigger after Interest is received More... | |
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 |
virtual void | beforeSatisfyInterest (const shared_ptr< pit::Entry > &pitEntry, const Face &inFace, const Data &data) |
trigger before PIT entry is satisfied More... | |
virtual void | beforeExpirePendingInterest (const shared_ptr< pit::Entry > &pitEntry) |
trigger before PIT entry expires More... | |
virtual void | afterReceiveNack (const Face &inFace, const lp::Nack &nack, const shared_ptr< pit::Entry > &pitEntry) |
trigger after Nack is received More... | |
Static Public Attributes | |
static const Name | STRATEGY_NAME |
Additional Inherited Members | |
Protected Member Functions inherited from nfd::fw::Strategy | |
void | sendInterest (const shared_ptr< pit::Entry > &pitEntry, Face &outFace, const Interest &interest) |
send Interest to outFace More... | |
DEPRECATED (void sendInterest(const shared_ptr< pit::Entry > &pitEntry, Face &outFace, bool wantNewNonce=false)) | |
send Interest to outFace More... | |
void | rejectPendingInterest (const shared_ptr< pit::Entry > &pitEntry) |
decide that a pending Interest cannot be forwarded More... | |
void | sendNack (const shared_ptr< pit::Entry > &pitEntry, const Face &outFace, const lp::NackHeader &header) |
send Nack to outFace More... | |
void | sendNacks (const 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... | |
const fib::Entry & | lookupFib (const pit::Entry &pitEntry) const |
performs a FIB lookup, considering Link object if present More... | |
MeasurementsAccessor & | getMeasurements () |
Face * | getFace (FaceId id) const |
const FaceTable & | getFaceTable () const |
Protected Attributes inherited from nfd::fw::Strategy | |
signal::Signal< FaceTable, Face & > & | afterAddFace |
signal::Signal< FaceTable, Face & > & | beforeRemoveFace |
a forwarding strategy that forwards Interest to all FIB nexthops
Definition at line 36 of file multicast-strategy.hpp.
nfd::fw::MulticastStrategy::MulticastStrategy | ( | Forwarder & | forwarder, |
const Name & | name = STRATEGY_NAME |
||
) |
Definition at line 35 of file multicast-strategy.cpp.
|
overridevirtual |
trigger after Interest is received
The Interest:
The strategy should decide whether and where to forward this Interest.
Implements nfd::fw::Strategy.
Definition at line 41 of file multicast-strategy.cpp.
References nfd::fw::canForwardToLegacy(), nfd::fib::Entry::getNextHops(), nfd::fw::hasPendingOutRecords(), nfd::fw::Strategy::lookupFib(), nfd::fw::Strategy::rejectPendingInterest(), nfd::fw::Strategy::sendInterest(), and nfd::fw::wouldViolateScope().
|
static |
Definition at line 46 of file multicast-strategy.hpp.