18 #ifndef GENERIC_LEASE_MGR_BENCHMARK_H
19 #define GENERIC_LEASE_MGR_BENCHMARK_H
21 #include <benchmark/benchmark.h>
45 void setUp4(::benchmark::State& state,
size_t const& lease_count);
58 void setUp6(::benchmark::State& state,
size_t const& lease_count);
void benchGetLease6_type_duid_iaid_subnetid()
This step retrieves IPv6 leases by (type, duid, iaid, subnet-id) tuple.
void benchGetLease4_address()
This step retrieves IPv4 leases by IP address.
void benchInsertLeases4()
This step inserts all IPv4 leases stored in lease4_ into the LeaseMgr.
An abstract API for lease database.
void benchGetLease4_clientid()
This step retrieves IPv4 leases by client-id.
std::vector< Lease4Ptr > Lease4Collection
A collection of IPv4 leases.
Lease6Collection leases6_
List of IPv6 leases (useful during benchmarks)
void benchGetExpiredLeases6()
This step retrieves all expired IPv6 leases.
void setUp6(::benchmark::State &state, size_t const &lease_count)
set up code for initializing IPv6 version of a benchmark
void benchGetLease4_hwaddr_subnetid()
This step retrieves IPv4 leases by (hwaddr, subnet-id) tuple.
void benchUpdateLeases4()
This step updates all IPv4 leases stored in lease4_ in the LeaseMgr.
Lease4Collection leases4_
List of IPv4 leases (useful during benchmarks)
void benchUpdateLeases6()
This step updates all IPv6 leases stored in lease6_ in the LeaseMgr.
void prepareLeases4(size_t const &lease_count)
Prepares specified number of IPv4 leases.
void benchGetLease4_hwaddr()
This step retrieves IPv4 leases by hardware address.
void benchInsertLeases6()
This step inserts all IPv6 leases stored in lease6_ into the LeaseMgr.
std::vector< Lease6Ptr > Lease6Collection
A collection of IPv6 leases.
void benchGetLease6_type_duid_iaid()
This step retrieves IPv6 leases by (type, duid, iaid) tuple.
void benchGetLease4_clientid_subnetid()
This step retrieves IPv4 leases by (client-id, subnet-id) tuple.
void setUpWithInserts4(::benchmark::State &state, size_t const &lease_count)
set up code (with lease preinsertion) for initializing IPv4 version of a benchmark.
void setUpWithInserts6(::benchmark::State &state, size_t const &lease_count)
set up code (with lease preinsertion) for initializing IPv6 version of a benchmark.
Defines the logger used by the top-level component of kea-dhcp-ddns.
void prepareLeases6(size_t const &lease_count)
Prepares specified number of IPv6 leases.
A base class for a fixture for specific lease manager benchmarks.
GenericLeaseMgrBenchmark()
Constructor.
Universe
Specifies the IP protocol family to be bested.
void benchGetLease6_type_address()
This step retrieves IPv6 leases by IP address.
LeaseMgr * lmptr_
Pointer to the lease manager being under evaluation.
void benchGetExpiredLeases4()
This step retrieves all expired IPv4 leases.
virtual ~GenericLeaseMgrBenchmark()
Virtual destructor.
void setUp4(::benchmark::State &state, size_t const &lease_count)
set up code for initializing IPv4 version of a benchmark