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... | |
Public Member Functions inherited from rofl::examples::ethswctld::cfibentry_env | |
| 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 |
1.8.6