|
OpenSDN source code
|
#include <flow_entry.h>

Public Types | |
| typedef boost::shared_ptr< Port > | PortPtr |
| typedef IndexVector< PortPtr > | PortList |
| typedef std::map< uint16_t, uint16_t > | PortToBitIndexMap |
| typedef std::pair< uint16_t, uint16_t > | PortToBitIndexPair |
| typedef IndexVector< FlowKey > | PortBitMap |
| typedef boost::shared_ptr< PortBitMap > | PortBitMapPtr |
| typedef std::vector< PortBitMapPtr > | PortHashTable |
Public Member Functions | |
| PortTable (Agent *agent, uint32_t bucket_size, uint8_t protocol) | |
| ~PortTable () | |
| uint16_t | Allocate (const FlowKey &key) |
| void | Free (const FlowKey &key, uint16_t port, bool release) |
| uint16_t | HashFlowKey (const FlowKey &key) |
| Agent * | agent () |
| uint16_t | port_count () const |
| void | set_timeout (uint64_t timeout) |
| tbb::recursive_mutex & | mutex () |
| void | UpdatePortConfig (const PortConfig *port_config) |
| uint16_t | GetPortIndex (uint16_t port) const |
| const PortConfig * | port_config () const |
| std::vector< uint16_t > | GetPortList () const |
| void | GetFlowKeyList (uint16_t port, std::vector< FlowKey > &key) const |
Static Public Attributes | |
| static const uint8_t | kInvalidPort = 0 |
Private Member Functions | |
| PortPtr | CreatePortEntry (uint16_t port_no) |
| void | AddPort (uint16_t port_no) |
| void | DeletePort (uint16_t port_no) |
| void | Relocate (uint16_t port_no) |
| bool | IsValidPort (uint16_t port, uint16_t count) |
| void | DeleteAllFlow (uint16_t port, uint16_t index) |
| bool | HandlePortConfig (const PortConfig &pc) |
Private Attributes | |
| Agent * | agent_ |
| uint8_t | protocol_ |
| PortCacheTable | cache_ |
| uint16_t | hash_table_size_ |
| PortHashTable | hash_table_ |
| PortList | port_list_ |
| PortToBitIndexMap | port_to_bit_index_ |
| PortConfig | port_config_ |
| tbb::recursive_mutex | mutex_ |
| std::unique_ptr< TaskTrigger > | task_trigger_ |
Definition at line 1010 of file flow_entry.h.
| typedef IndexVector<FlowKey> PortTable::PortBitMap |
Definition at line 1020 of file flow_entry.h.
| typedef boost::shared_ptr<PortBitMap> PortTable::PortBitMapPtr |
Definition at line 1021 of file flow_entry.h.
| typedef std::vector<PortBitMapPtr> PortTable::PortHashTable |
Definition at line 1022 of file flow_entry.h.
| typedef IndexVector<PortPtr> PortTable::PortList |
Definition at line 1015 of file flow_entry.h.
| typedef boost::shared_ptr<Port> PortTable::PortPtr |
Definition at line 1014 of file flow_entry.h.
| typedef std::map<uint16_t, uint16_t> PortTable::PortToBitIndexMap |
Definition at line 1017 of file flow_entry.h.
| typedef std::pair<uint16_t, uint16_t> PortTable::PortToBitIndexPair |
Definition at line 1018 of file flow_entry.h.
| PortTable::PortTable | ( | Agent * | agent, |
| uint32_t | bucket_size, | ||
| uint8_t | protocol | ||
| ) |
Definition at line 3940 of file flow_entry.cc.
| PortTable::~PortTable | ( | ) |
Definition at line 3948 of file flow_entry.cc.
|
private |
|
inline |
Definition at line 1031 of file flow_entry.h.
| uint16_t PortTable::Allocate | ( | const FlowKey & | key | ) |
|
private |
|
private |
|
private |
| void PortTable::Free | ( | const FlowKey & | key, |
| uint16_t | port, | ||
| bool | release | ||
| ) |
| void PortTable::GetFlowKeyList | ( | uint16_t | port, |
| std::vector< FlowKey > & | key | ||
| ) | const |
| uint16_t PortTable::GetPortIndex | ( | uint16_t | port | ) | const |
Definition at line 4156 of file flow_entry.cc.
|
inline |
Definition at line 1054 of file flow_entry.h.
|
private |
| uint16_t PortTable::HashFlowKey | ( | const FlowKey & | key | ) |
Definition at line 3932 of file flow_entry.cc.
|
private |
Definition at line 4084 of file flow_entry.cc.
|
inline |
Definition at line 1043 of file flow_entry.h.
|
inline |
Definition at line 1050 of file flow_entry.h.
|
inline |
Definition at line 1035 of file flow_entry.h.
|
private |
|
inline |
| void PortTable::UpdatePortConfig | ( | const PortConfig * | port_config | ) |
|
private |
Definition at line 1066 of file flow_entry.h.
|
private |
Definition at line 1079 of file flow_entry.h.
|
private |
Definition at line 1088 of file flow_entry.h.
|
private |
Definition at line 1084 of file flow_entry.h.
|
static |
Definition at line 1012 of file flow_entry.h.
|
mutableprivate |
Definition at line 1099 of file flow_entry.h.
|
private |
Definition at line 1098 of file flow_entry.h.
|
private |
Definition at line 1091 of file flow_entry.h.
|
private |
Definition at line 1095 of file flow_entry.h.
|
private |
Definition at line 1076 of file flow_entry.h.
|
private |
Definition at line 1100 of file flow_entry.h.