OpenSDN source code
|
#include <arp_proto.h>
Public Types | |
typedef std::map< uint32_t, InterfaceArpPathPreferenceInfo > | WaitForTrafficIntfMap |
typedef std::pair< uint32_t, InterfaceArpPathPreferenceInfo > | WaitForTrafficIntfPair |
typedef std::set< uint32_t > | ArpTransmittedIntfMap |
Public Member Functions | |
ArpPathPreferenceState (ArpVrfState *state, uint32_t vrf_id, const IpAddress &vm_ip, uint8_t plen) | |
~ArpPathPreferenceState () | |
bool | SendArpRequest () |
bool | SendArpRequest (WaitForTrafficIntfMap &wait_for_traffic_map, ArpTransmittedIntfMap &arp_transmitted_intf_map) |
void | SendArpRequestForAllIntf (const AgentRoute *route) |
void | StartTimer () |
ArpVrfState * | vrf_state () |
const IpAddress & | ip () const |
uint8_t | plen () const |
void | set_mac (MacAddress mac) |
MacAddress | mac (void) const |
uint32_t | vrf_id () const |
void | HandleArpReply (Ip4Address sip, uint32_t itf) |
bool | IntfPresentInIpMap (uint32_t id) |
bool | IntfPresentInEvpnMap (uint32_t id) |
uint32_t | IntfRetryCountInIpMap (uint32_t id) |
uint32_t | IntfRetryCountInEvpnMap (uint32_t id) |
Static Public Attributes | |
static const uint32_t | kMaxRetry = 30 * 5 |
static const uint32_t | kTimeout = 2000 |
static const uint32_t | kArpTryCount = 9 |
Private Member Functions | |
uint32_t | GetRetryCount (uint32_t id, WaitForTrafficIntfMap &imap) |
Private Attributes | |
ArpVrfState * | vrf_state_ |
Timer * | arp_req_timer_ |
uint32_t | vrf_id_ |
IpAddress | vm_ip_ |
uint8_t | plen_ |
MacAddress | mac_ |
WaitForTrafficIntfMap | l3_wait_for_traffic_map_ |
WaitForTrafficIntfMap | evpn_wait_for_traffic_map_ |
tbb::atomic< int > | refcount_ |
Friends | |
void | intrusive_ptr_add_ref (ArpPathPreferenceState *aps) |
void | intrusive_ptr_release (ArpPathPreferenceState *aps) |
Definition at line 245 of file arp_proto.h.
typedef std::set<uint32_t> ArpPathPreferenceState::ArpTransmittedIntfMap |
Definition at line 255 of file arp_proto.h.
typedef std::map<uint32_t, InterfaceArpPathPreferenceInfo> ArpPathPreferenceState::WaitForTrafficIntfMap |
Definition at line 252 of file arp_proto.h.
typedef std::pair<uint32_t, InterfaceArpPathPreferenceInfo> ArpPathPreferenceState::WaitForTrafficIntfPair |
Definition at line 254 of file arp_proto.h.
ArpPathPreferenceState::ArpPathPreferenceState | ( | ArpVrfState * | state, |
uint32_t | vrf_id, | ||
const IpAddress & | vm_ip, | ||
uint8_t | plen | ||
) |
Definition at line 129 of file arp_proto.cc.
ArpPathPreferenceState::~ArpPathPreferenceState | ( | ) |
|
inlineprivate |
Definition at line 304 of file arp_proto.h.
void ArpPathPreferenceState::HandleArpReply | ( | Ip4Address | sip, |
uint32_t | itf | ||
) |
Definition at line 935 of file arp_proto.cc.
|
inline |
Definition at line 287 of file arp_proto.h.
|
inline |
Definition at line 279 of file arp_proto.h.
|
inline |
|
inline |
|
inline |
Definition at line 271 of file arp_proto.h.
|
inline |
Definition at line 274 of file arp_proto.h.
|
inline |
Definition at line 272 of file arp_proto.h.
bool ArpPathPreferenceState::SendArpRequest | ( | ) |
Definition at line 233 of file arp_proto.cc.
bool ArpPathPreferenceState::SendArpRequest | ( | WaitForTrafficIntfMap & | wait_for_traffic_map, |
ArpTransmittedIntfMap & | arp_transmitted_intf_map | ||
) |
void ArpPathPreferenceState::SendArpRequestForAllIntf | ( | const AgentRoute * | route | ) |
|
inline |
void ArpPathPreferenceState::StartTimer | ( | ) |
|
inline |
Definition at line 275 of file arp_proto.h.
|
inline |
Definition at line 267 of file arp_proto.h.
|
friend |
Definition at line 116 of file arp_proto.cc.
|
friend |
Definition at line 120 of file arp_proto.cc.
|
private |
Definition at line 314 of file arp_proto.h.
|
private |
Definition at line 320 of file arp_proto.h.
|
static |
Definition at line 250 of file arp_proto.h.
|
static |
Definition at line 247 of file arp_proto.h.
|
static |
Definition at line 249 of file arp_proto.h.
|
private |
Definition at line 319 of file arp_proto.h.
|
private |
Definition at line 318 of file arp_proto.h.
|
private |
Definition at line 317 of file arp_proto.h.
|
private |
Definition at line 321 of file arp_proto.h.
|
private |
Definition at line 316 of file arp_proto.h.
|
private |
Definition at line 315 of file arp_proto.h.
|
private |
Definition at line 313 of file arp_proto.h.