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

Classes

class  ClientToNlsrReadvertisePolicy
 a policy to readvertise routes registered by end hosts into NLSR More...
 
class  FibUpdate
 represents a FIB update More...
 
class  FibUpdater
 computes FibUpdates based on updates to the RIB and sends them to NFD More...
 
class  HostToGatewayReadvertisePolicy
 a policy to readvertise routes registered by local applications into remote gateway More...
 
class  NfdRibReadvertiseDestination
 a readvertise destination using NFD RIB management protocol More...
 
class  Readvertise
 readvertise a subset of routes to a destination according to a policy More...
 
struct  ReadvertiseAction
 a decision made by readvertise policy More...
 
class  ReadvertiseDestination
 a destination to readvertise into More...
 
class  ReadvertisedRoute
 state of a readvertised route More...
 
class  ReadvertisePolicy
 a policy to decide whether to readvertise a route, and what prefix to readvertise More...
 
class  Rib
 represents the Routing Information Base More...
 
class  RibEntry
 Represents a RIB entry, which contains one or more Routes with the same prefix. More...
 
class  RibManager
 Serve commands and datasets in NFD RIB management protocol. More...
 
struct  RibRouteRef
 references a route More...
 
class  RibUpdate
 RibUpdate. More...
 
class  RibUpdateBatch
 Represents a collection of RibUpdates to be applied to a single FaceId. More...
 
class  Route
 represents a route for a name prefix More...
 
class  Service
 initializes and executes NFD-RIB service thread More...
 

Typedefs

using ReadvertisedRouteContainer = std::set< ReadvertisedRoute >
 
typedef std::list< RibUpdateRibUpdateList
 

Functions

std::ostream & operator<< (std::ostream &os, const FibUpdate &update)
 
static time::milliseconds randomizeTimer (time::milliseconds baseTimer)
 
bool operator< (const ReadvertisedRoute &lhs, const ReadvertisedRoute &rhs)
 
std::ostream & operator<< (std::ostream &os, const RibEntry &entry)
 
std::ostream & operator<< (std::ostream &os, RibManager::SlAnnounceResult res)
 
std::ostream & operator<< (std::ostream &os, const RibUpdate::Action action)
 
std::ostream & operator<< (std::ostream &os, const RibUpdate &update)
 
bool operator< (const RibRouteRef &lhs, const RibRouteRef &rhs)
 
static bool sortRoutes (const Route &lhs, const Route &rhs)
 
std::ostream & operator<< (std::ostream &os, const Rib &rib)
 
static time::steady_clock::TimePoint computeExpiration (const ndn::PrefixAnnouncement &ann)
 
bool operator== (const Route &lhs, const Route &rhs)
 
std::ostream & operator<< (std::ostream &os, const Route &route)
 
bool operator!= (const Route &lhs, const Route &rhs)
 
bool compareFaceIdAndOrigin (const Route &lhs, const Route &rhs)
 
bool compareFaceId (const Route &route, const uint64_t faceId)
 

Variables

 FibUpdater
 
static const name::Component IGNORE_COMPONENT ("nrd")
 
static const time::seconds DEFAULT_REFRESH_INTERVAL = 25_s
 
 NfdRibReadvertiseDestination
 
 ReadvertiseDestination
 
 Readvertise
 
 RibEntry
 
 RibManager
 
static const std::string MGMT_MODULE_NAME = "rib"
 
static const Name LOCALHOST_TOP_PREFIX = "/localhost/nfd"
 
static const time::seconds ACTIVE_FACE_FETCH_INTERVAL = 5_min
 
 Rib
 
const uint64_t PA_ROUTE_COST = 2048
 cost of route created by prefix announcement More...
 
 RibService
 
static const std::string CFG_SECTION = "rib"
 
static const std::string CFG_LOCALHOST_SECURITY = "localhost_security"
 
static const std::string CFG_LOCALHOP_SECURITY = "localhop_security"
 
static const std::string CFG_PREFIX_PROPAGATE = "auto_prefix_propagate"
 
static const std::string CFG_READVERTISE_NLSR = "readvertise_nlsr"
 
static const Name READVERTISE_NLSR_PREFIX = "/localhost/nlsr"
 
static const uint64_t PROPAGATE_DEFAULT_COST = 15
 
static const time::milliseconds PROPAGATE_DEFAULT_TIMEOUT = 10_s
 

Typedef Documentation

◆ ReadvertisedRouteContainer

Definition at line 64 of file readvertised-route.hpp.

◆ RibUpdateList

typedef std::list<RibUpdate> nfd::rib::RibUpdateList

Definition at line 36 of file rib-update-batch.hpp.

Function Documentation

◆ operator<<() [1/7]

std::ostream& nfd::rib::operator<< ( std::ostream &  os,
const FibUpdate update 
)
inline

◆ randomizeTimer()

static time::milliseconds nfd::rib::randomizeTimer ( time::milliseconds  baseTimer)
static

Definition at line 39 of file readvertise.cpp.

References nfd::getGlobalRng().

◆ operator<() [1/2]

bool nfd::rib::operator< ( const ReadvertisedRoute lhs,
const ReadvertisedRoute rhs 
)
inline

Definition at line 59 of file readvertised-route.hpp.

References nfd::rib::ReadvertisedRoute::prefix.

◆ operator<<() [2/7]

std::ostream & nfd::rib::operator<< ( std::ostream &  os,
const RibEntry entry 
)

Definition at line 275 of file rib-entry.cpp.

References nfd::rib::RibEntry::getName().

◆ operator<<() [3/7]

◆ operator<<() [4/7]

std::ostream & nfd::rib::operator<< ( std::ostream &  os,
const RibUpdate::Action  action 
)

◆ operator<<() [5/7]

std::ostream & nfd::rib::operator<< ( std::ostream &  os,
const RibUpdate update 
)

◆ operator<() [2/2]

bool nfd::rib::operator< ( const RibRouteRef lhs,
const RibRouteRef rhs 
)

Definition at line 36 of file rib.cpp.

References nfd::rib::RibRouteRef::entry, and nfd::rib::RibRouteRef::route.

◆ sortRoutes()

static bool nfd::rib::sortRoutes ( const Route lhs,
const Route rhs 
)
inlinestatic

Definition at line 43 of file rib.cpp.

References nfd::rib::Route::faceId.

◆ operator<<() [6/7]

std::ostream & nfd::rib::operator<< ( std::ostream &  os,
const Rib rib 
)

Definition at line 518 of file rib.cpp.

◆ computeExpiration()

◆ operator==()

bool nfd::rib::operator== ( const Route lhs,
const Route rhs 
)

◆ operator<<() [7/7]

std::ostream & nfd::rib::operator<< ( std::ostream &  os,
const Route route 
)

◆ operator!=()

bool nfd::rib::operator!= ( const Route lhs,
const Route rhs 
)
inline

Definition at line 111 of file route.hpp.

◆ compareFaceIdAndOrigin()

bool nfd::rib::compareFaceIdAndOrigin ( const Route lhs,
const Route rhs 
)
inline

Definition at line 117 of file route.hpp.

References nfd::rib::Route::faceId, and nfd::rib::Route::origin.

Referenced by nfd::rib::RibEntry::findRoute().

◆ compareFaceId()

bool nfd::rib::compareFaceId ( const Route route,
const uint64_t  faceId 
)
inline

Variable Documentation

◆ FibUpdater

Definition at line 34 of file fib-updater.cpp.

◆ IGNORE_COMPONENT

const name::Component nfd::rib::IGNORE_COMPONENT("nrd")
static

◆ DEFAULT_REFRESH_INTERVAL

const time::seconds nfd::rib::DEFAULT_REFRESH_INTERVAL = 25_s
static

◆ NfdRibReadvertiseDestination

◆ ReadvertiseDestination

◆ Readvertise

Definition at line 33 of file readvertise.cpp.

◆ RibEntry

Definition at line 34 of file rib-entry.cpp.

◆ RibManager

Definition at line 41 of file rib-manager.cpp.

◆ MGMT_MODULE_NAME

const std::string nfd::rib::MGMT_MODULE_NAME = "rib"
static

Definition at line 43 of file rib-manager.cpp.

◆ LOCALHOST_TOP_PREFIX

const Name nfd::rib::LOCALHOST_TOP_PREFIX = "/localhost/nfd"
static

Definition at line 44 of file rib-manager.cpp.

Referenced by nfd::rib::RibManager::registerWithNfd().

◆ ACTIVE_FACE_FETCH_INTERVAL

const time::seconds nfd::rib::ACTIVE_FACE_FETCH_INTERVAL = 5_min
static

Definition at line 45 of file rib-manager.cpp.

Referenced by nfd::rib::RibManager::registerWithNfd().

◆ Rib

Definition at line 33 of file rib.cpp.

◆ PA_ROUTE_COST

const uint64_t nfd::rib::PA_ROUTE_COST = 2048

cost of route created by prefix announcement

Definition at line 32 of file route.cpp.

◆ RibService

nfd::rib::RibService

Definition at line 46 of file service.cpp.

◆ CFG_SECTION

const std::string nfd::rib::CFG_SECTION = "rib"
static

Definition at line 48 of file service.cpp.

◆ CFG_LOCALHOST_SECURITY

const std::string nfd::rib::CFG_LOCALHOST_SECURITY = "localhost_security"
static

Definition at line 49 of file service.cpp.

◆ CFG_LOCALHOP_SECURITY

const std::string nfd::rib::CFG_LOCALHOP_SECURITY = "localhop_security"
static

Definition at line 50 of file service.cpp.

◆ CFG_PREFIX_PROPAGATE

const std::string nfd::rib::CFG_PREFIX_PROPAGATE = "auto_prefix_propagate"
static

Definition at line 51 of file service.cpp.

◆ CFG_READVERTISE_NLSR

const std::string nfd::rib::CFG_READVERTISE_NLSR = "readvertise_nlsr"
static

Definition at line 52 of file service.cpp.

◆ READVERTISE_NLSR_PREFIX

const Name nfd::rib::READVERTISE_NLSR_PREFIX = "/localhost/nlsr"
static

Definition at line 53 of file service.cpp.

◆ PROPAGATE_DEFAULT_COST

const uint64_t nfd::rib::PROPAGATE_DEFAULT_COST = 15
static

Definition at line 54 of file service.cpp.

◆ PROPAGATE_DEFAULT_TIMEOUT

const time::milliseconds nfd::rib::PROPAGATE_DEFAULT_TIMEOUT = 10_s
static

Definition at line 55 of file service.cpp.