Class implementing FIB functionality. More...
#include <ndn-fib.h>


Public Member Functions | |
| Fib () | |
| Default constructor. | |
| virtual | ~Fib () |
| Virtual destructor. | |
| virtual Ptr< fib::Entry > | LongestPrefixMatch (const Interest &interest)=0 |
| Perform longest prefix match. More... | |
| virtual Ptr< fib::Entry > | Find (const Name &prefix)=0 |
| Get FIB entry for the prefix (exact match) More... | |
| virtual Ptr< fib::Entry > | Add (const Name &prefix, Ptr< Face > face, int32_t metric)=0 |
| Add or update FIB entry. More... | |
| virtual Ptr< fib::Entry > | Add (const Ptr< const Name > &prefix, Ptr< Face > face, int32_t metric)=0 |
| Add or update FIB entry using smart pointer to prefix. More... | |
| virtual void | Remove (const Ptr< const Name > &prefix)=0 |
| Remove FIB entry. More... | |
| virtual void | InvalidateAll ()=0 |
| Invalidate all FIB entries. | |
| virtual void | RemoveFromAll (Ptr< Face > face)=0 |
| Remove all references to a face from FIB. More... | |
| virtual void | Print (std::ostream &os) const =0 |
| Print out entries in FIB. | |
| virtual uint32_t | GetSize () const =0 |
| Get number of entries in FIB. | |
| virtual Ptr< const fib::Entry > | Begin () const =0 |
| Return first element of FIB (no order guaranteed) | |
| virtual Ptr< fib::Entry > | Begin ()=0 |
| Return first element of FIB (no order guaranteed) | |
| virtual Ptr< const fib::Entry > | End () const =0 |
| Return item next after last (no order guaranteed) | |
| virtual Ptr< fib::Entry > | End ()=0 |
| Return item next after last (no order guaranteed) | |
| virtual Ptr< const fib::Entry > | Next (Ptr< const fib::Entry >) const =0 |
| Advance the iterator. | |
| virtual Ptr< fib::Entry > | Next (Ptr< fib::Entry >)=0 |
| Advance the iterator. | |
Static Public Member Functions | |
| static TypeId | GetTypeId () |
| Interface ID. More... | |
| static Ptr< Fib > | GetFib (Ptr< Object > node) |
| Static call to cheat python bindings. | |
Class implementing FIB functionality.
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
|
pure virtual |
Add or update FIB entry.
If the entry exists, metric will be updated. Otherwise, new entry will be created
| name | Prefix |
| face | Forwarding face |
| metric | Routing metric |
Implemented in ns3::ndn::fib::FibImpl.
Referenced by ns3::ndn::StackHelper::AddRoute(), ns3::ndn::ApiFace::SetInterestFilter(), and ns3::ndn::Producer::StartApplication().
|
pure virtual |
Add or update FIB entry using smart pointer to prefix.
If the entry exists, metric will be updated. Otherwise, new entry will be created
| name | Smart pointer to prefix |
| face | Forwarding face |
| metric | Routing metric |
Implemented in ns3::ndn::fib::FibImpl.
|
pure virtual |
Get FIB entry for the prefix (exact match)
| prefix | Name for FIB entry |
Implemented in ns3::ndn::fib::FibImpl.
|
static |
|
pure virtual |
Perform longest prefix match.
| interest | Interest packet header |
Implemented in ns3::ndn::fib::FibImpl.
|
pure virtual |
Remove FIB entry.
! ATTENTION ! Use with caution. All PIT entries referencing the corresponding FIB entry will become invalid. So, simulation may crash.
| name | Smart pointer to prefix |
Implemented in ns3::ndn::fib::FibImpl.
|
pure virtual |
Remove all references to a face from FIB.
If for some enty that face was the only element, this FIB entry will be removed.
Implemented in ns3::ndn::fib::FibImpl.