represents the Forwarding Information Base (FIB) More...
#include <fib.hpp>
Public Types | |
typedef boost::transformed_range< name_tree::GetTableEntry< Entry >, const name_tree::Range > | Range |
typedef boost::range_iterator< Range >::type | const_iterator |
Public Member Functions | |
Fib (NameTree &nameTree) | |
size_t | size () const |
const Entry & | findLongestPrefixMatch (const Name &prefix) const |
performs a longest prefix match More... | |
const Entry & | findLongestPrefixMatch (const pit::Entry &pitEntry) const |
performs a longest prefix match More... | |
const Entry & | findLongestPrefixMatch (const measurements::Entry &measurementsEntry) const |
performs a longest prefix match More... | |
Entry * | findExactMatch (const Name &prefix) |
performs an exact match lookup More... | |
std::pair< Entry *, bool > | insert (const Name &prefix) |
find or insert a FIB entry More... | |
void | erase (const Name &prefix) |
void | erase (const Entry &entry) |
void | removeNextHop (Entry &entry, const Face &face, uint64_t endpointId) |
removes the NextHop record for face with a given endpointId More... | |
void | removeNextHopByFace (Entry &entry, const Face &face) |
removes the NextHop record for face for any endpointId More... | |
const_iterator | begin () const |
const_iterator | end () const |
Static Public Member Functions | |
static constexpr size_t | getMaxDepth () |
Maximum number of components in a FIB entry prefix. More... | |
typedef boost::transformed_range<name_tree::GetTableEntry<Entry>, const name_tree::Range> nfd::fib::Fib::Range |
typedef boost::range_iterator<Range>::type nfd::fib::Fib::const_iterator |
performs a longest prefix match
Definition at line 63 of file fib.cpp.
Referenced by nfd::fw::Strategy::lookupFib().
const Entry & nfd::fib::Fib::findLongestPrefixMatch | ( | const pit::Entry & | pitEntry | ) | const |
const Entry & nfd::fib::Fib::findLongestPrefixMatch | ( | const measurements::Entry & | measurementsEntry | ) | const |
performs an exact match lookup
Definition at line 81 of file fib.cpp.
References nfd::name_tree::NameTree::findExactMatch(), and nfd::name_tree::Entry::getFibEntry().
|
inlinestatic |
Maximum number of components in a FIB entry prefix.
Definition at line 90 of file fib.hpp.
References nfd::FIB_MAX_DEPTH.
find or insert a FIB entry
prefix | FIB entry name; it must have no more than getMaxDepth() components. |
Definition at line 91 of file fib.cpp.
References nfd::name_tree::Entry::getFibEntry(), nfd::name_tree::NameTree::lookup(), and nfd::name_tree::Entry::setFibEntry().
void nfd::fib::Fib::erase | ( | const Name & | prefix | ) |
Definition at line 117 of file fib.cpp.
References nfd::name_tree::NameTree::findExactMatch().
Referenced by erase().
void nfd::fib::Fib::erase | ( | const Entry & | entry | ) |
Definition at line 126 of file fib.cpp.
References erase(), and nfd::name_tree::NameTree::getEntry().
removes the NextHop record for face
with a given endpointId
Definition at line 146 of file fib.cpp.
References nfd::fib::Entry::removeNextHop().
removes the NextHop record for face
for any endpointId
Definition at line 153 of file fib.cpp.
References nfd::fib::Entry::removeNextHopByFace().
Referenced by nfd::cleanupOnFaceRemoval().
|
inline |
|
inline |