OpenSDN source code
|
#include <bgp_as_service.h>
Classes | |
struct | BgpAsAServiceEntry |
struct | BgpAsAServiceList |
Public Types | |
typedef boost::function< void(boost::uuids::uuid, uint32_t)> | ServiceDeleteCb |
typedef boost::function< void(const boost::uuids::uuid &, uint32_t, const boost::uuids::uuid &, bool)> | HealthCheckCb |
typedef std::set < BgpAsAServiceEntry, BgpAsAServiceEntry > | BgpAsAServiceEntryList |
typedef BgpAsAServiceEntryList::iterator | BgpAsAServiceEntryListIterator |
typedef BgpAsAServiceEntryList::const_iterator | BgpAsAServiceEntryListConstIterator |
typedef std::map < boost::uuids::uuid, BgpAsAServiceList * > | BgpAsAServiceEntryMap |
typedef BgpAsAServiceEntryMap::iterator | BgpAsAServiceEntryMapIterator |
typedef BgpAsAServiceEntryMap::const_iterator | BgpAsAServiceEntryMapConstIterator |
typedef std::map< uint32_t, IndexVector < boost::uuids::uuid > * > | BgpAsAServicePortMap |
typedef BgpAsAServicePortMap::iterator | BgpAsAServicePortMapIterator |
typedef BgpAsAServicePortMap::const_iterator | BgpAsAServicePortMapConstIterator |
Static Public Attributes | |
static const uint32_t | DefaultBgpPort = 179 |
Private Member Functions | |
void | StartHealthCheck (const boost::uuids::uuid &vm_uuid, const BgpAsAServiceEntryList &list) |
void | BuildBgpAsAServiceInfo (IFMapNode *bgp_as_a_service_node, std::list< IFMapNode * > &bgp_router_nodes, BgpAsAServiceEntryList &new_list, const std::string &vrf_name, const boost::uuids::uuid &vm_uuid) |
DISALLOW_COPY_AND_ASSIGN (BgpAsAService) | |
Private Attributes | |
const Agent * | agent_ |
BgpAsAServiceEntryMap | bgp_as_a_service_entry_map_ |
BgpAsAServicePortMap | bgp_as_a_service_port_map_ |
std::vector< ServiceDeleteCb > | service_delete_cb_list_ |
std::vector< HealthCheckCb > | health_check_cb_list_ |
BGPaaServiceParameters | bgp_as_a_service_parameters_ |
Definition at line 67 of file bgp_as_service.h.
typedef std::set<BgpAsAServiceEntry, BgpAsAServiceEntry> BgpAsAService::BgpAsAServiceEntryList |
Definition at line 121 of file bgp_as_service.h.
typedef BgpAsAServiceEntryList::const_iterator BgpAsAService::BgpAsAServiceEntryListConstIterator |
Definition at line 123 of file bgp_as_service.h.
typedef BgpAsAServiceEntryList::iterator BgpAsAService::BgpAsAServiceEntryListIterator |
Definition at line 122 of file bgp_as_service.h.
typedef std::map<boost::uuids::uuid, BgpAsAServiceList*> BgpAsAService::BgpAsAServiceEntryMap |
Definition at line 137 of file bgp_as_service.h.
typedef BgpAsAServiceEntryMap::const_iterator BgpAsAService::BgpAsAServiceEntryMapConstIterator |
Definition at line 139 of file bgp_as_service.h.
typedef BgpAsAServiceEntryMap::iterator BgpAsAService::BgpAsAServiceEntryMapIterator |
Definition at line 138 of file bgp_as_service.h.
typedef std::map<uint32_t, IndexVector<boost::uuids::uuid>* > BgpAsAService::BgpAsAServicePortMap |
Definition at line 141 of file bgp_as_service.h.
typedef BgpAsAServicePortMap::const_iterator BgpAsAService::BgpAsAServicePortMapConstIterator |
Definition at line 143 of file bgp_as_service.h.
typedef BgpAsAServicePortMap::iterator BgpAsAService::BgpAsAServicePortMapIterator |
Definition at line 142 of file bgp_as_service.h.
typedef boost::function<void(const boost::uuids::uuid &, uint32_t, const boost::uuids::uuid &, bool)> BgpAsAService::HealthCheckCb |
Definition at line 72 of file bgp_as_service.h.
typedef boost::function<void(boost::uuids::uuid, uint32_t)> BgpAsAService::ServiceDeleteCb |
Definition at line 70 of file bgp_as_service.h.
BgpAsAService::BgpAsAService | ( | const Agent * | agent | ) |
Definition at line 40 of file bgp_as_service.cc.
BgpAsAService::~BgpAsAService | ( | ) |
Definition at line 47 of file bgp_as_service.cc.
uint32_t BgpAsAService::AddBgpVmiServicePortIndex | ( | const uint32_t | source_port, |
const boost::uuids::uuid | vm_uuid | ||
) |
size_t BgpAsAService::AllocateBgpVmiServicePortIndex | ( | const uint32_t | sport, |
const boost::uuids::uuid | vm_uuid | ||
) |
const BgpAsAService::BgpAsAServiceEntryMap & BgpAsAService::bgp_as_a_service_map | ( | ) | const |
Definition at line 50 of file bgp_as_service.cc.
const BgpAsAService::BgpAsAServicePortMap & BgpAsAService::bgp_as_a_service_port_map | ( | ) | const |
Definition at line 54 of file bgp_as_service.cc.
|
inline |
Definition at line 185 of file bgp_as_service.h.
|
private |
void BgpAsAService::DeleteVmInterface | ( | const boost::uuids::uuid & | vmi_uuid | ) |
|
private |
void BgpAsAService::FreeBgpVmiServicePortIndex | ( | const uint32_t | sport | ) |
bool BgpAsAService::GetBgpHealthCheck | ( | const VmInterface * | vm_intf, |
boost::uuids::uuid * | health_check_uuid | ||
) | const |
bool BgpAsAService::GetBgpRouterServiceDestination | ( | const VmInterface * | vm_intf, |
const IpAddress & | source, | ||
const IpAddress & | dest, | ||
IpAddress * | nat_server, | ||
uint32_t * | sport, | ||
uint32_t * | dport | ||
) | const |
bool BgpAsAService::IsBgpService | ( | const VmInterface * | vm_intf, |
const IpAddress & | source_ip, | ||
const IpAddress & | dest_ip | ||
) | const |
|
inline |
Definition at line 177 of file bgp_as_service.h.
void BgpAsAService::ProcessConfig | ( | const std::string & | vrf_name, |
std::list< IFMapNode * > & | bgp_router_node_list, | ||
std::list< IFMapNode * > & | bgp_as_service_node_list, | ||
const boost::uuids::uuid & | vmi_uuid | ||
) |
|
inline |
Definition at line 173 of file bgp_as_service.h.
|
inline |
Definition at line 170 of file bgp_as_service.h.
|
private |
Definition at line 112 of file bgp_as_service.cc.
void BgpAsAService::UpdateBgpAsAServiceSessionInfo | ( | ) |
|
private |
Definition at line 200 of file bgp_as_service.h.
|
private |
Definition at line 201 of file bgp_as_service.h.
|
private |
Definition at line 205 of file bgp_as_service.h.
|
private |
Definition at line 202 of file bgp_as_service.h.
|
static |
Definition at line 69 of file bgp_as_service.h.
|
private |
Definition at line 204 of file bgp_as_service.h.
|
private |
Definition at line 203 of file bgp_as_service.h.