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...
 
struct  RibRouteRef
 References a route. More...
 
class  RibUpdate
 Represents a route that will be added to or removed from a namespace. 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 the NFD-RIB service thread. More...
 

Typedefs

using ReadvertisedRouteContainer = std::set< ReadvertisedRoute >
 
using RibUpdateList = std::list< RibUpdate >
 

Functions

static bool compareFaceIdAndOrigin (const Route &lhs, const Route &rhs)
 
static time::steady_clock::time_point computeExpiration (const ndn::PrefixAnnouncement &ann)
 
static ConfigSection loadConfigSectionFromFile (const std::string &filename)
 
static shared_ptr< ndn::Transport > makeLocalNfdTransport (const ConfigSection &config)
 
bool operator!= (const Route &lhs, const Route &rhs)
 
bool operator< (const ReadvertisedRoute &lhs, const ReadvertisedRoute &rhs)
 
bool operator< (const RibRouteRef &lhs, const RibRouteRef &rhs)
 
std::ostream & operator<< (std::ostream &os, const FibUpdate &update)
 
std::ostream & operator<< (std::ostream &os, const Rib &rib)
 
std::ostream & operator<< (std::ostream &os, const RibEntry &entry)
 
std::ostream & operator<< (std::ostream &os, const RibUpdate &update)
 
std::ostream & operator<< (std::ostream &os, const Route &route)
 
std::ostream & operator<< (std::ostream &os, RibUpdate::Action action)
 
bool operator== (const Route &lhs, const Route &rhs)
 
static time::milliseconds randomizeTimer (time::milliseconds baseTimer)
 
static bool sortRoutes (const Route &lhs, const Route &rhs)
 

Variables

const std::string CFG_LOCALHOP_SECURITY = "localhop_security"
 
const std::string CFG_LOCALHOST_SECURITY = "localhost_security"
 
const std::string CFG_PA_VALIDATION = "prefix_announcement_validation"
 
const std::string CFG_PREFIX_PROPAGATE = "auto_prefix_propagate"
 
const std::string CFG_READVERTISE_NLSR = "readvertise_nlsr"
 
const std::string CFG_RIB = "rib"
 
constexpr time::seconds DEFAULT_REFRESH_INTERVAL = 25_s
 
constexpr uint32_t ERROR_FACE_NOT_FOUND = 410
 
const name::Component IGNORE_COMPONENT {"nrd"}
 
constexpr int MAX_NUM_TIMEOUTS = 10
 
constexpr uint64_t PA_ROUTE_COST = 2048
 
constexpr uint64_t PROPAGATE_DEFAULT_COST = 15
 
constexpr time::milliseconds PROPAGATE_DEFAULT_TIMEOUT = 10_s
 
const Name READVERTISE_NLSR_PREFIX = "/localhost/nlsr"
 
constexpr time::milliseconds RETRY_DELAY_MAX = 1_h
 
constexpr time::milliseconds RETRY_DELAY_MIN = 50_s
 

Typedef Documentation

◆ ReadvertisedRouteContainer

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

◆ RibUpdateList

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

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

Function Documentation

◆ compareFaceIdAndOrigin()

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

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

◆ computeExpiration()

static time::steady_clock::time_point nfd::rib::computeExpiration ( const ndn::PrefixAnnouncement &  ann)
static

Definition at line 35 of file route.cpp.

◆ loadConfigSectionFromFile()

static ConfigSection nfd::rib::loadConfigSectionFromFile ( const std::string &  filename)
static

Definition at line 56 of file service.cpp.

◆ makeLocalNfdTransport()

static shared_ptr<ndn::Transport> nfd::rib::makeLocalNfdTransport ( const ConfigSection config)
static

Definition at line 66 of file service.cpp.

◆ operator!=()

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

Definition at line 110 of file route.hpp.

◆ operator<() [1/2]

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

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

◆ operator<() [2/2]

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

Definition at line 34 of file rib.cpp.

◆ operator<<() [1/6]

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

Definition at line 72 of file fib-update.hpp.

◆ operator<<() [2/6]

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

Definition at line 488 of file rib.cpp.

◆ operator<<() [3/6]

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

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

◆ operator<<() [4/6]

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

Definition at line 47 of file rib-update.cpp.

◆ operator<<() [5/6]

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

Definition at line 73 of file route.cpp.

◆ operator<<() [6/6]

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

Definition at line 30 of file rib-update.cpp.

◆ operator==()

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

Definition at line 63 of file route.cpp.

◆ randomizeTimer()

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

Definition at line 40 of file readvertise.cpp.

◆ sortRoutes()

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

Definition at line 42 of file rib.cpp.

Variable Documentation

◆ CFG_LOCALHOP_SECURITY

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

Definition at line 47 of file service.cpp.

◆ CFG_LOCALHOST_SECURITY

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

Definition at line 46 of file service.cpp.

◆ CFG_PA_VALIDATION

const std::string nfd::rib::CFG_PA_VALIDATION = "prefix_announcement_validation"

Definition at line 48 of file service.cpp.

◆ CFG_PREFIX_PROPAGATE

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

Definition at line 49 of file service.cpp.

◆ CFG_READVERTISE_NLSR

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

Definition at line 50 of file service.cpp.

◆ CFG_RIB

const std::string nfd::rib::CFG_RIB = "rib"

Definition at line 45 of file service.cpp.

◆ DEFAULT_REFRESH_INTERVAL

constexpr time::seconds nfd::rib::DEFAULT_REFRESH_INTERVAL = 25_s
constexpr

Definition at line 36 of file host-to-gateway-readvertise-policy.cpp.

◆ ERROR_FACE_NOT_FOUND

constexpr uint32_t nfd::rib::ERROR_FACE_NOT_FOUND = 410
constexpr

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

◆ IGNORE_COMPONENT

const name::Component nfd::rib::IGNORE_COMPONENT {"nrd"}

Definition at line 35 of file host-to-gateway-readvertise-policy.cpp.

◆ MAX_NUM_TIMEOUTS

constexpr int nfd::rib::MAX_NUM_TIMEOUTS = 10
constexpr

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

◆ PA_ROUTE_COST

constexpr uint64_t nfd::rib::PA_ROUTE_COST = 2048
constexpr

Definition at line 32 of file route.cpp.

◆ PROPAGATE_DEFAULT_COST

constexpr uint64_t nfd::rib::PROPAGATE_DEFAULT_COST = 15
constexpr

Definition at line 52 of file service.cpp.

◆ PROPAGATE_DEFAULT_TIMEOUT

constexpr time::milliseconds nfd::rib::PROPAGATE_DEFAULT_TIMEOUT = 10_s
constexpr

Definition at line 53 of file service.cpp.

◆ READVERTISE_NLSR_PREFIX

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

Definition at line 51 of file service.cpp.

◆ RETRY_DELAY_MAX

constexpr time::milliseconds nfd::rib::RETRY_DELAY_MAX = 1_h
constexpr

Definition at line 37 of file readvertise.cpp.

◆ RETRY_DELAY_MIN

constexpr time::milliseconds nfd::rib::RETRY_DELAY_MIN = 50_s
constexpr

Definition at line 36 of file readvertise.cpp.