Kea  1.9.9-git
isc::perfdhcp Namespace Reference

Classes

class  AbstractScen
 Abstract Scenario class. More...
 
class  AvalancheScen
 Avalanche Scenario class. More...
 
class  BasePerfSocket
 Socket wrapper structure. More...
 
class  BasicScen
 Basic Scenario class. More...
 
class  CommandOptions
 Command Options. More...
 
class  CustomCounter
 Custom Counter. More...
 
struct  EnumClassHash
 
class  ExchangeStats
 Exchange Statistics. More...
 
class  LocalizedOption
 DHCP option at specific offset. More...
 
class  PacketStorage
 Represents a list of packets with a sequential and random access to list elements. More...
 
class  PerfPkt4
 PerfPkt4 (DHCPv4 packet) More...
 
class  PerfPkt6
 PerfPkt6 (DHCPv6 packet) More...
 
class  PerfSocket
 Socket wrapper structure. More...
 
class  PktTransform
 Read and write raw data to DHCP packets. More...
 
class  RateControl
 A message sending rate control class for perfdhcp. More...
 
class  Receiver
 A receiving DHCP packets class. More...
 
class  StatsMgr
 Statistics Manager. More...
 
class  TestControl
 Test Control class. More...
 

Typedefs

typedef boost::shared_ptr< CustomCounterCustomCounterPtr
 
typedef std::map< std::string, CustomCounterPtrCustomCountersMap
 Map containing custom counters. More...
 
typedef CustomCountersMap::const_iterator CustomCountersMapIterator
 Iterator for CustomCountersMap. More...
 
typedef std::map< ExchangeType, ExchangeStatsPtrExchangesMap
 Map containing all specified exchange types. More...
 
typedef ExchangesMap::const_iterator ExchangesMapIterator
 Iterator pointing to ExchangesMap. More...
 
typedef boost::shared_ptr< ExchangeStatsExchangeStatsPtr
 Pointer to ExchangeStats. More...
 
typedef boost::shared_ptr< PerfPkt4PerfPkt4Ptr
 
typedef boost::shared_ptr< PerfPkt6PerfPkt6Ptr
 
typedef boost::shared_ptr< StatsMgrStatsMgrPtr
 Pointer to Statistics Manager;. More...
 

Enumerations

enum  ExchangeType {
  ExchangeType::DO, ExchangeType::RA, ExchangeType::RNA, ExchangeType::SA,
  ExchangeType::RR, ExchangeType::RN, ExchangeType::RL
}
 DHCP packet exchange types. More...
 
enum  Scenario { Scenario::BASIC, Scenario::AVALANCHE }
 

Functions

int dhcpVersion (ExchangeType const exchange_type)
 Get the DHCP version that fits the exchange type. More...
 
std::ostream & operator<< (std::ostream &os, ExchangeType xchg_type)
 Return name of the exchange. More...
 

Variables

const int LONG_OPT_SCENARIO = 300
 
const char *const * perfdhcp_config_report = isc::detail::config_report
 

Typedef Documentation

typedef boost::shared_ptr<CustomCounter> isc::perfdhcp::CustomCounterPtr

Definition at line 121 of file bin/perfdhcp/stats_mgr.h.

typedef std::map<std::string, CustomCounterPtr> isc::perfdhcp::CustomCountersMap

Map containing custom counters.

Definition at line 124 of file bin/perfdhcp/stats_mgr.h.

typedef CustomCountersMap::const_iterator isc::perfdhcp::CustomCountersMapIterator

Iterator for CustomCountersMap.

Definition at line 127 of file bin/perfdhcp/stats_mgr.h.

Map containing all specified exchange types.

Definition at line 682 of file bin/perfdhcp/stats_mgr.h.

typedef ExchangesMap::const_iterator isc::perfdhcp::ExchangesMapIterator

Iterator pointing to ExchangesMap.

Definition at line 685 of file bin/perfdhcp/stats_mgr.h.

typedef boost::shared_ptr<ExchangeStats> isc::perfdhcp::ExchangeStatsPtr

Pointer to ExchangeStats.

Definition at line 679 of file bin/perfdhcp/stats_mgr.h.

typedef boost::shared_ptr<PerfPkt4> isc::perfdhcp::PerfPkt4Ptr

Definition at line 128 of file perf_pkt4.h.

typedef boost::shared_ptr<PerfPkt6> isc::perfdhcp::PerfPkt6Ptr

Definition at line 127 of file perf_pkt6.h.

typedef boost::shared_ptr<StatsMgr> isc::perfdhcp::StatsMgrPtr

Pointer to Statistics Manager;.

Definition at line 1245 of file bin/perfdhcp/stats_mgr.h.

Enumeration Type Documentation

DHCP packet exchange types.

Enumerator
DO 

DHCPv4 DISCOVER-OFFER.

RA 

DHCPv4 REQUEST-ACK.

RNA 

DHCPv4 REQUEST-ACK (renewal)

SA 

DHCPv6 SOLICIT-ADVERTISE.

RR 

DHCPv6 REQUEST-REPLY.

RN 

DHCPv6 RENEW-REPLY.

RL 

DHCPv6 RELEASE-REPLY.

Definition at line 32 of file bin/perfdhcp/stats_mgr.h.

Enumerator
BASIC 
AVALANCHE 

Definition at line 20 of file command_options.h.

Function Documentation

int isc::perfdhcp::dhcpVersion ( ExchangeType const  exchange_type)

Get the DHCP version that fits the exchange type.

Parameters
exchange_typeexchange type that will determine the version
Exceptions
isc::BadValueexchange type is unrecognized
Returns
DHCP version: 4 or 6

Definition at line 32 of file bin/perfdhcp/stats_mgr.cc.

References DO, isc_throw, RA, RL, RN, RNA, RR, and SA.

Referenced by isc::perfdhcp::ExchangeStats::receivedLeases().

std::ostream & isc::perfdhcp::operator<< ( std::ostream &  os,
ExchangeType  xchg_type 
)

Return name of the exchange.

Function returns name of the specified exchange type. This function is mainly for logging purposes.

Parameters
osoutput stream to use.
xchg_typeexchange type.
Returns
string representing name of the exchange.

Definition at line 49 of file bin/perfdhcp/stats_mgr.cc.

References DO, RA, RL, RN, RNA, RR, and SA.

Variable Documentation

const int isc::perfdhcp::LONG_OPT_SCENARIO = 300

Definition at line 217 of file command_options.cc.

const char* const* isc::perfdhcp::perfdhcp_config_report = isc::detail::config_report

Definition at line 42 of file command_options.cc.