OpenSDN source code
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
ping.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2013 Juniper Networks, Inc. All rights reserved.
3
*/
4
5
#ifndef vnsw_agent_diag_ping_hpp
6
#define vnsw_agent_diag_ping_hpp
7
8
#include "
diag/diag.h
"
9
#include "diag/diag_types.h"
10
#include "
pkt/control_interface.h
"
11
12
class
DiagTable
;
13
14
class
Ping
:
public
DiagEntry
{
15
public
:
16
static
const
uint32_t
KPingUdpHdr
=
sizeof
(
struct
ether_header) +
17
sizeof(struct ip) + sizeof(udphdr);
18
static
const
uint32_t
KPingTcpHdr
=
sizeof
(
struct
ether_header) +
19
sizeof(struct ip) + sizeof(tcphdr);
20
static
const
uint32_t
KPing6UdpHdr
=
sizeof
(
struct
ether_header) +
21
sizeof(struct ip6_hdr) + sizeof(udphdr);
22
static
const
uint32_t
KPing6TcpHdr
=
sizeof
(
struct
ether_header) +
23
sizeof(struct ip6_hdr) + sizeof(tcphdr);
24
Ping
(
const
PingReq *pr,
DiagTable
*
diag_table
);
25
virtual
~Ping
();
26
virtual
void
SendRequest
();
27
virtual
void
HandleReply
(
DiagPktHandler
*handler);
28
virtual
void
RequestTimedOut
(uint32_t seq_no);
29
virtual
void
SendSummary
();
30
void
FillAgentHeader
(
AgentDiagPktData
*pkt);
31
DiagPktHandler
*
CreateTcpPkt
(
Agent
*agent);
32
DiagPktHandler
*
CreateUdpPkt
(
Agent
*agent);
33
34
static
void
HandleRequest
(
DiagPktHandler
*);
35
36
private
:
37
uint16_t
data_len_
;
38
uint16_t
len_
;
//Length including tcp, ip, agent headers + outer eth
39
std::string
context_
;
40
boost::posix_time::time_duration
avg_rtt_
;
41
uint32_t
pkt_lost_count_
;
42
};
43
44
#endif
Ping::CreateUdpPkt
DiagPktHandler * CreateUdpPkt(Agent *agent)
Definition:
ping.cc:100
DiagPktHandler
Definition:
diag_pkt_handler.h:30
Ping::data_len_
uint16_t data_len_
Definition:
ping.h:37
Ping::len_
uint16_t len_
Definition:
ping.h:38
Ping::KPing6TcpHdr
static const uint32_t KPing6TcpHdr
Definition:
ping.h:22
Ping::KPingTcpHdr
static const uint32_t KPingTcpHdr
Definition:
ping.h:18
DiagTable
Definition:
diag.h:104
Ping::KPingUdpHdr
static const uint32_t KPingUdpHdr
Definition:
ping.h:16
Ping::Ping
Ping(const PingReq *pr, DiagTable *diag_table)
Definition:
ping.cc:21
Agent
Definition:
agent.h:358
Ping::~Ping
virtual ~Ping()
Definition:
ping.cc:31
Ping
Definition:
ping.h:14
DiagEntry::diag_table
DiagTable * diag_table() const
Definition:
diag.h:48
diag.h
Ping::HandleReply
virtual void HandleReply(DiagPktHandler *handler)
Definition:
ping.cc:228
control_interface.h
Ping::CreateTcpPkt
DiagPktHandler * CreateTcpPkt(Agent *agent)
Definition:
ping.cc:44
Ping::RequestTimedOut
virtual void RequestTimedOut(uint32_t seq_no)
Definition:
ping.cc:202
Ping::avg_rtt_
boost::posix_time::time_duration avg_rtt_
Definition:
ping.h:40
DiagEntry
Definition:
diag.h:21
Ping::HandleRequest
static void HandleRequest(DiagPktHandler *)
Ping::pkt_lost_count_
uint32_t pkt_lost_count_
Definition:
ping.h:41
Ping::SendRequest
virtual void SendRequest()
Definition:
ping.cc:154
Ping::KPing6UdpHdr
static const uint32_t KPing6UdpHdr
Definition:
ping.h:20
Ping::FillAgentHeader
void FillAgentHeader(AgentDiagPktData *pkt)
Definition:
ping.cc:35
AgentDiagPktData
Definition:
diag.h:73
Ping::context_
std::string context_
Definition:
ping.h:39
Ping::SendSummary
virtual void SendSummary()
Definition:
ping.cc:248
contrail
controller
src
vnsw
agent
diag
ping.h
Generated by
1.8.5