NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.0: NDN, CCN, CCNx, content centric networks
API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nfd::fw Namespace Reference

Classes

class  BestRouteStrategy
 Best Route strategy version 1. More...
 
class  BestRouteStrategy2
 Best Route strategy version 2. More...
 
class  BroadcastStrategy
 a forwarding strategy that forwards Interest to all nexthops More...
 
class  ClientControlStrategy
 a forwarding strategy that forwards Interests according to NextHopFaceId field in LocalControlHeader More...
 
class  NccStrategy
 a forwarding strategy similar to CCNx 0.7.2 More...
 
class  Strategy
 represents a forwarding strategy More...
 
class  StrategyInfo
 contains arbitrary information forwarding strategy places on table entries More...
 

Functions

shared_ptr< StrategymakeDefaultStrategy (Forwarder &forwarder)
 
template<typename S >
void installStrategy (Forwarder &forwarder)
 
void installStrategies (Forwarder &forwarder)
 
static bool predicate_PitEntry_canForwardTo_NextHop (shared_ptr< pit::Entry > pitEntry, const fib::NextHop &nexthop)
 
static bool predicate_NextHop_eligible (const shared_ptr< pit::Entry > &pitEntry, const fib::NextHop &nexthop, FaceId currentDownstream, bool wantUnused=false, time::steady_clock::TimePoint now=time::steady_clock::TimePoint::min())
 determines whether a NextHop is eligible More...
 
static bool compare_OutRecord_lastRenewed (const pit::OutRecord &a, const pit::OutRecord &b)
 
static
fib::NextHopList::const_iterator 
findEligibleNextHopWithEarliestOutRecord (const shared_ptr< pit::Entry > &pitEntry, const fib::NextHopList &nexthops, FaceId currentDownstream)
 pick an eligible NextHop with earliest OutRecord More...
 

Variables

 BestRouteStrategy2
 
 ClientControlStrategy
 
 Strategy
 

Function Documentation

static bool nfd::fw::compare_OutRecord_lastRenewed ( const pit::OutRecord &  a,
const pit::OutRecord &  b 
)
inlinestatic
static fib::NextHopList::const_iterator nfd::fw::findEligibleNextHopWithEarliestOutRecord ( const shared_ptr< pit::Entry > &  pitEntry,
const fib::NextHopList &  nexthops,
FaceId  currentDownstream 
)
inlinestatic

pick an eligible NextHop with earliest OutRecord

Note
It is assumed that every nexthop has an OutRecord

Definition at line 86 of file best-route-strategy2.cpp.

References predicate_NextHop_eligible().

Referenced by nfd::fw::BestRouteStrategy2::afterReceiveInterest().

void nfd::fw::installStrategies ( Forwarder &  forwarder)

Definition at line 52 of file available-strategies.cpp.

Referenced by nfd::Forwarder::Forwarder().

template<typename S >
void nfd::fw::installStrategy ( Forwarder &  forwarder)
inline
shared_ptr< Strategy > nfd::fw::makeDefaultStrategy ( Forwarder &  forwarder)

Definition at line 36 of file available-strategies.cpp.

static bool nfd::fw::predicate_NextHop_eligible ( const shared_ptr< pit::Entry > &  pitEntry,
const fib::NextHop &  nexthop,
FaceId  currentDownstream,
bool  wantUnused = false,
time::steady_clock::TimePoint  now = time::steady_clock::TimePoint::min() 
)
inlinestatic

determines whether a NextHop is eligible

Parameters
currentDownstreamincoming FaceId of current Interest
wantUnusedif true, NextHop must not have unexpired OutRecord
nowtime::steady_clock::now(), ignored if !wantUnused

Definition at line 49 of file best-route-strategy2.cpp.

References nfd::fib::NextHop::getFace().

Referenced by nfd::fw::BestRouteStrategy2::afterReceiveInterest(), and findEligibleNextHopWithEarliestOutRecord().

static bool nfd::fw::predicate_PitEntry_canForwardTo_NextHop ( shared_ptr< pit::Entry >  pitEntry,
const fib::NextHop &  nexthop 
)
inlinestatic

Variable Documentation