NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
nfd::Forwarder Class Reference

main class of NFD More...

#include <forwarder.hpp>

Collaboration diagram for nfd::Forwarder:

Public Member Functions

 Forwarder ()
 
 ~Forwarder ()
 
const ForwarderCountersgetCounters () const
 
FaceTablegetFaceTable ()
 
FacegetFace (FaceId id) const
 get existing Face More...
 
void addFace (shared_ptr< Face > face)
 add new Face More...
 
fw::UnsolicitedDataPolicygetUnsolicitedDataPolicy () const
 
void setUnsolicitedDataPolicy (unique_ptr< fw::UnsolicitedDataPolicy > policy)
 
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...
 
NameTreegetNameTree ()
 
FibgetFib ()
 
PitgetPit ()
 
CsgetCs ()
 
MeasurementsgetMeasurements ()
 
StrategyChoicegetStrategyChoice ()
 
DeadNonceListgetDeadNonceList ()
 
NetworkRegionTablegetNetworkRegionTable ()
 
void setCsFromNdnSim (ns3::Ptr< ns3::ndn::ContentStore > cs)
 

Public Attributes

signal::Signal< Forwarder, pit::Entry, Face, DatabeforeSatisfyInterest
 trigger before PIT entry is satisfied More...
 
signal::Signal< Forwarder, pit::EntrybeforeExpirePendingInterest
 trigger before PIT entry expires More...
 

Friends

class fw::Strategy
 

Detailed Description

main class of NFD

Forwarder owns all faces and tables, and implements forwarding pipelines.

Definition at line 54 of file forwarder.hpp.

Constructor & Destructor Documentation

◆ Forwarder()

◆ ~Forwarder()

nfd::Forwarder::~Forwarder ( )
default

Member Function Documentation

◆ getCounters()

const ForwarderCounters& nfd::Forwarder::getCounters ( ) const
inline

Definition at line 63 of file forwarder.hpp.

◆ getFaceTable()

FaceTable& nfd::Forwarder::getFaceTable ( )
inline

Definition at line 70 of file forwarder.hpp.

Referenced by Forwarder(), and nfd::fw::Strategy::getFaceTable().

◆ getFace()

Face* nfd::Forwarder::getFace ( FaceId  id) const
inline

get existing Face

shortcut to .getFaceTable().get(face)

Definition at line 80 of file forwarder.hpp.

References nfd::FaceTable::get().

Referenced by nfd::fw::Strategy::getFace().

◆ addFace()

void nfd::Forwarder::addFace ( shared_ptr< Face face)
inline

add new Face

shortcut to .getFaceTable().add(face)

Definition at line 90 of file forwarder.hpp.

References nfd::FaceTable::add().

◆ getUnsolicitedDataPolicy()

fw::UnsolicitedDataPolicy& nfd::Forwarder::getUnsolicitedDataPolicy ( ) const
inline

Definition at line 96 of file forwarder.hpp.

◆ setUnsolicitedDataPolicy()

void nfd::Forwarder::setUnsolicitedDataPolicy ( unique_ptr< fw::UnsolicitedDataPolicy policy)
inline

Definition at line 102 of file forwarder.hpp.

Referenced by nfd::TablesConfigSection::ensureConfigured().

◆ startProcessInterest()

void nfd::Forwarder::startProcessInterest ( Face face,
const Interest interest 
)
inline

start incoming Interest processing

Parameters
faceface on which Interest is received
interestthe incoming Interest, must be well-formed and created with make_shared

Definition at line 114 of file forwarder.hpp.

Referenced by Forwarder().

◆ startProcessData()

void nfd::Forwarder::startProcessData ( Face face,
const Data data 
)
inline

start incoming Data processing

Parameters
faceface on which Data is received
datathe incoming Data, must be well-formed and created with make_shared

Definition at line 124 of file forwarder.hpp.

Referenced by Forwarder().

◆ startProcessNack()

void nfd::Forwarder::startProcessNack ( Face face,
const lp::Nack nack 
)
inline

start incoming Nack processing

Parameters
faceface on which Nack is received
nackthe incoming Nack, must be well-formed

Definition at line 134 of file forwarder.hpp.

Referenced by Forwarder().

◆ getNameTree()

NameTree& nfd::Forwarder::getNameTree ( )
inline

Definition at line 140 of file forwarder.hpp.

◆ getFib()

Fib& nfd::Forwarder::getFib ( )
inline

Definition at line 146 of file forwarder.hpp.

Referenced by nfd::fw::Strategy::lookupFib().

◆ getPit()

Pit& nfd::Forwarder::getPit ( )
inline

Definition at line 152 of file forwarder.hpp.

◆ getCs()

Cs& nfd::Forwarder::getCs ( )
inline

Definition at line 158 of file forwarder.hpp.

Referenced by nfd::TablesConfigSection::ensureConfigured().

◆ getMeasurements()

Measurements& nfd::Forwarder::getMeasurements ( )
inline

Definition at line 164 of file forwarder.hpp.

◆ getStrategyChoice()

StrategyChoice& nfd::Forwarder::getStrategyChoice ( )
inline

Definition at line 170 of file forwarder.hpp.

◆ getDeadNonceList()

DeadNonceList& nfd::Forwarder::getDeadNonceList ( )
inline

Definition at line 176 of file forwarder.hpp.

◆ getNetworkRegionTable()

NetworkRegionTable& nfd::Forwarder::getNetworkRegionTable ( )
inline

Definition at line 182 of file forwarder.hpp.

Referenced by nfd::fw::Strategy::lookupFib().

◆ setCsFromNdnSim()

void nfd::Forwarder::setCsFromNdnSim ( ns3::Ptr< ns3::ndn::ContentStore cs)
inline

Definition at line 189 of file forwarder.hpp.

Friends And Related Function Documentation

◆ fw::Strategy

friend class fw::Strategy
friend

Definition at line 330 of file forwarder.hpp.

Member Data Documentation

◆ beforeSatisfyInterest

signal::Signal<Forwarder, pit::Entry, Face, Data> nfd::Forwarder::beforeSatisfyInterest

trigger before PIT entry is satisfied

See also
Strategy::beforeSatisfyInterest

Definition at line 198 of file forwarder.hpp.

◆ beforeExpirePendingInterest

signal::Signal<Forwarder, pit::Entry> nfd::Forwarder::beforeExpirePendingInterest

trigger before PIT entry expires

See also
Strategy::beforeExpirePendingInterest

Definition at line 203 of file forwarder.hpp.


The documentation for this class was generated from the following files: