Forwarding Information Base. More...
#include <cfibtable.h>
Public Member Functions | |
Methods for CRUD operations on FIB entries | |
void | clear () |
Deletes all entries stored in this cfibtable instance. | |
cfibentry & | add_fib_entry (const rofl::caddress_ll &hwaddr, uint32_t portno) |
Returns reference to empty cfibentry instance for given hardware address. More... | |
cfibentry & | set_fib_entry (const rofl::caddress_ll &hwaddr, uint32_t portno) |
Returns reference to existing cfibentry instance for given hardware address. More... | |
cfibentry & | set_fib_entry (const rofl::caddress_ll &hwaddr) |
Returns reference to existing cfibentry instance for given hardware address. More... | |
const cfibentry & | get_fib_entry (const rofl::caddress_ll &hwaddr) const |
Returns const reference to existing cfibentry instance for given hardware address. More... | |
void | drop_fib_entry (const rofl::caddress_ll &hwaddr) |
Removes an existing cfibentry for given hardware address. More... | |
bool | has_fib_entry (const rofl::caddress_ll &hwaddr) const |
Checks whether a cfibentry exists for given hardware address. More... | |
![]() | |
virtual | ~cfibentry_env () |
cfibentry_env destructor | |
Static Public Member Functions | |
Methods for managing Forwarding Information Bases | |
static cfibtable & | add_fib (const rofl::cdptid &dptid) |
Returns reference to new or existing and resetted cfibtable instance. More... | |
static cfibtable & | set_fib (const rofl::cdptid &dptid) |
Returns reference to existing cfibtable instance or creates a new empty one. More... | |
static const cfibtable & | get_fib (const rofl::cdptid &dptid) |
Returns const reference to existing cfibtable instance or throws exception. More... | |
static void | drop_fib (const rofl::cdptid &dptid) |
Removes an existing cfibtable instance. More... | |
static bool | has_fib (const rofl::cdptid &dptid) |
Checks existence of cfibtable for given identifier. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &os, cfibtable const &fib) |
Additional Inherited Members |
Forwarding Information Base.
This class stores all active mappings between a host ethernet address and its associated port on the switch for reaching this host on a given datapath element. Class cfibentry defines the container for an active FIB entry. Class cfibtable defines two groups of methods:
|
inlinestatic |
Returns reference to new or existing and resetted cfibtable instance.
This method creates a new or resets an existing instance of class cfibtable for the given datapath handle.
dptid | rofl-common's internal handle for datapath element |
|
inline |
Returns reference to empty cfibentry instance for given hardware address.
Creates a new cfibentry instance or resets an already existing one for the given identifier.
hwaddr | ethernet hardware address |
portno | host is reachable via port using this OpenFlow port number |
eFibInval | hardware address validation failed |
|
inlinestatic |
Removes an existing cfibtable instance.
dptid | rofl-common's internal handle for datapath element |
|
inline |
Removes an existing cfibentry for given hardware address.
hwaddr | ethernet hardware address |
|
inlinestatic |
Returns const reference to existing cfibtable instance or throws exception.
This method returns a const reference to an existing cfibtable instance. If no instance for the given identifier is found, an exception of type eFibNotFound is thrown.
dptid | rofl-common's internal handle for datapath element |
eFibNotFound |
|
inline |
Returns const reference to existing cfibentry instance for given hardware address.
Returns const reference to existing cfibentry for given identifier or throw exception, if none exists.
hwaddr | ethernet hardware address |
eFibInval | hardware address validation failed |
eFibNotFound | no cfibentry for hardware address found |
|
inlinestatic |
Checks existence of cfibtable for given identifier.
dptid | rofl-common's internal handle for datapath element |
|
inline |
Checks whether a cfibentry exists for given hardware address.
hwaddr | ethernet hardware address |
|
inlinestatic |
Returns reference to existing cfibtable instance or creates a new empty one.
This method returns a reference to an existing cfibtable instance. If no instance for the given identifier is found, a new instance is created.
dptid | rofl-common's internal handle for datapath element |
|
inline |
Returns reference to existing cfibentry instance for given hardware address.
Returns reference to existing cfibentry for given identifier or creates new one if non exists yet.
hwaddr | ethernet hardware address |
portno | host is reachable via port using this OpenFlow port number |
eFibInval | hardware address validation failed |
|
inline |
Returns reference to existing cfibentry instance for given hardware address.
Returns reference to existing cfibentry for given identifier or throw exception, if none exists.
hwaddr | ethernet hardware address |
eFibInval | hardware address validation failed |
eFibNotFound | no cfibentry for hardware address found |