|
libTFO
|
Forwarding table entry along with its traffic statistics. More...
#include <fibentry.hh>
Public Types | |
| typedef M | match_type |
| typedef A | action_type |
| typedef U | user_type |
Public Member Functions | |
| FibEntry (uint32_t size_b2, uint32_t size_b3, const M &m, const A &a) | |
| ~FibEntry (void) | |
| const M & | match (void) const |
| const A & | action (void) const |
| const A & | action (const A &a) |
| const A & | old_action (void) const |
| const A & | old_action (const A &a) |
| U & | user_data (void) |
| enum FibEntryState & | state (void) const |
| enum FibEntryState & | state (enum FibEntryState s) |
| enum FibEntryTable & | table (void) const |
| enum FibEntryTable & | table (enum FibEntryTable t) |
| const uint32_t | ttl (void) const |
| const uint32_t | ttl (uint32_t t) |
| const uint32_t | ttl_decrement (void) |
| const uint64_t & | hits_total (void) const |
| const uint64_t & | hits_b1 (void) const |
| const uint64_t & | hits_b2 (void) const |
| const uint64_t & | hits_b3 (void) const |
| void | update_hits (const uint64_t &hits, const enum FibEntryHitsUpdateType type) |
| void | bin_complete (void) |
Forwarding table entry along with its traffic statistics.
| M | Type of flow match, e.g., destination IP prefix. |
| A | Type of flow action, e.g., output interface. |
| U | Type of additional information attached to FIB entries. |
| typedef A FibEntry< M, A, U >::action_type |
| typedef M FibEntry< M, A, U >::match_type |
| FibEntry< M, A, U >::FibEntry | ( | uint32_t | size_b2, |
| uint32_t | size_b3, | ||
| const M & | m, | ||
| const A & | a | ||
| ) | [inline] |
Creates a new instance of FibEntry.
| [in] | size_b2 | Number of b1 time bins that make a b2 time bin. |
| [in] | size_b3 | Number of b1 time bins that make a b3 time bin. |
| [in] | m | Match. |
| [in] | a | Action. |
Deletes a FibEntry.
| const A& FibEntry< M, A, U >::action | ( | void | ) | const [inline] |
| const A& FibEntry< M, A, U >::action | ( | const A & | a | ) | [inline] |
Sets the action.
| [in] | a | Action. |
| void FibEntry< M, A, U >::bin_complete | ( | void | ) | [inline] |
Updates the hit counters of all time scales (b1, b2, b3).
| const uint64_t& FibEntry< M, A, U >::hits_b1 | ( | void | ) | const [inline] |
| const uint64_t& FibEntry< M, A, U >::hits_b2 | ( | void | ) | const [inline] |
| const uint64_t& FibEntry< M, A, U >::hits_b3 | ( | void | ) | const [inline] |
| const uint64_t& FibEntry< M, A, U >::hits_total | ( | void | ) | const [inline] |
| const M& FibEntry< M, A, U >::match | ( | void | ) | const [inline] |
| const A& FibEntry< M, A, U >::old_action | ( | void | ) | const [inline] |
| const A& FibEntry< M, A, U >::old_action | ( | const A & | a | ) | [inline] |
Sets the action prior to the last modification.
| [in] | a | Action. |
| enum FibEntryState& FibEntry< M, A, U >::state | ( | void | ) | const [inline] |
| enum FibEntryState& FibEntry< M, A, U >::state | ( | enum FibEntryState | s | ) | [inline] |
Sets the FibEntryState.
| [in] | s | State. |
| enum FibEntryTable& FibEntry< M, A, U >::table | ( | void | ) | const [inline] |
| enum FibEntryTable& FibEntry< M, A, U >::table | ( | enum FibEntryTable | t | ) | [inline] |
Sets the FibEntryTable.
| [in] | t | Table. |
| const uint32_t FibEntry< M, A, U >::ttl | ( | void | ) | const [inline] |
| const uint32_t FibEntry< M, A, U >::ttl | ( | uint32_t | t | ) | [inline] |
Sets the TTL.
| [in] | t | TTL value. |
| const uint32_t FibEntry< M, A, U >::ttl_decrement | ( | void | ) | [inline] |
Decrements the TTL.
| void FibEntry< M, A, U >::update_hits | ( | const uint64_t & | hits, |
| const enum FibEntryHitsUpdateType | type | ||
| ) | [inline] |
Modifies the hit counter. Call bin_complete() when b1 has finished.
| [in] | hits | Number of hits. |
| [in] | type | Type of update. |
| U& FibEntry< M, A, U >::user_data | ( | void | ) | [inline] |