OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
OverlayTraceRoute Class Reference

#include <overlay_traceroute.h>

Inheritance diagram for OverlayTraceRoute:
Collaboration diagram for OverlayTraceRoute:

Public Member Functions

 OverlayTraceRoute (const OverlayTraceReq *req, DiagTable *diag_table)
 
virtual ~OverlayTraceRoute ()
 
virtual void SendRequest ()
 
void RequestTimedOut (uint32_t seqno)
 
virtual void HandleReply (DiagPktHandler *handler)
 
void ReplyLocalHop ()
 
virtual bool IsDone ()
 
- Public Member Functions inherited from DiagEntry
 DiagEntry (const std::string &sip, const std::string &dip, uint8_t proto, uint16_t sport, uint16_t dport, const std::string &vrf_name, int timeout, int count, DiagTable *diag_table)
 
virtual ~DiagEntry ()
 
void Init ()
 
void EnqueueForceDelete ()
 
virtual void SendSummary ()
 
bool TimerExpiry (uint32_t seqno)
 
void RestartTimer ()
 
virtual bool ResendOnTimerExpiry ()
 
DiagKey GetKey ()
 
uint32_t GetSeqNo ()
 
uint32_t GetMaxAttempts ()
 
void SetKey (DiagKey key)
 
virtual void Retry ()
 
bool TimerCancel ()
 
DiagTablediag_table () const
 
uint32_t HashValUdpSourcePort ()
 
void FillOamPktHeader (OverlayOamPktData *pktdata, uint32_t vxlan_id, const boost::posix_time::ptime &time)
 

Private Member Functions

void IncrementTtl ()
 

Private Attributes

boost::uuids::uuid vn_uuid_
 
MacAddress remote_vm_mac_
 
uint8_t ttl_
 
bool done_
 
uint16_t max_ttl_
 
uint32_t len_
 
std::string context_
 

Additional Inherited Members

- Public Types inherited from DiagEntry
typedef uint16_t DiagKey
 
typedef Timer DiagTimer
 
- Protected Attributes inherited from DiagEntry
IpAddress sip_
 
IpAddress dip_
 
uint8_t proto_
 
uint16_t sport_
 
uint16_t dport_
 
std::string vrf_name_
 
boost::system::error_code ec_
 
DiagTablediag_table_
 
DiagKey key_
 
int timeout_
 
DiagTimertimer_
 
uint32_t max_attempts_
 
uint32_t seq_no_
 

Detailed Description

Definition at line 14 of file overlay_traceroute.h.

Constructor & Destructor Documentation

OverlayTraceRoute::OverlayTraceRoute ( const OverlayTraceReq *  req,
DiagTable diag_table 
)

Definition at line 20 of file overlay_traceroute.cc.

OverlayTraceRoute::~OverlayTraceRoute ( )
virtual

Definition at line 32 of file overlay_traceroute.cc.

Member Function Documentation

void OverlayTraceRoute::HandleReply ( DiagPktHandler handler)
virtual

Implements DiagEntry.

Definition at line 204 of file overlay_traceroute.cc.

Here is the call graph for this function:

void OverlayTraceRoute::IncrementTtl ( )
private

Definition at line 222 of file overlay_traceroute.cc.

virtual bool OverlayTraceRoute::IsDone ( )
inlinevirtual

Reimplemented from DiagEntry.

Definition at line 22 of file overlay_traceroute.h.

void OverlayTraceRoute::ReplyLocalHop ( )

Definition at line 217 of file overlay_traceroute.cc.

Here is the call graph for this function:

void OverlayTraceRoute::RequestTimedOut ( uint32_t  seqno)
virtual

Implements DiagEntry.

Definition at line 191 of file overlay_traceroute.cc.

Here is the call graph for this function:

void OverlayTraceRoute::SendRequest ( )
virtual

Implements DiagEntry.

Definition at line 36 of file overlay_traceroute.cc.

Here is the call graph for this function:

Member Data Documentation

std::string OverlayTraceRoute::context_
private

Definition at line 32 of file overlay_traceroute.h.

bool OverlayTraceRoute::done_
private

Definition at line 29 of file overlay_traceroute.h.

uint32_t OverlayTraceRoute::len_
private

Definition at line 31 of file overlay_traceroute.h.

uint16_t OverlayTraceRoute::max_ttl_
private

Definition at line 30 of file overlay_traceroute.h.

MacAddress OverlayTraceRoute::remote_vm_mac_
private

Definition at line 27 of file overlay_traceroute.h.

uint8_t OverlayTraceRoute::ttl_
private

Definition at line 28 of file overlay_traceroute.h.

boost::uuids::uuid OverlayTraceRoute::vn_uuid_
private

Definition at line 26 of file overlay_traceroute.h.


The documentation for this class was generated from the following files: