From: Marcin Siodelski
Table of Contents
List of Tables
Table of Contents
Table of Contents
List of Tables
Table of Contents
ISC would like to acknowledge generous support for BIND 10 development of DHCPv4 and DHCPv6 components provided by Comcast.
This document is in its early stages of development. It is @@ -196,7 +196,7 @@ SQLite version: 3.7.9sourceid version is 2011-11-01 00:52:41 c7c6050ef060877ebe7 Multi-threaded or multi-process benchmark may be considered in the future. It may be somewhat difficult as only some backends support concurrent access. -
Table of Contents
There is a growing need to evaluate performance of DHCP servers in different traffic conditions to understand their bottle necks. This helps to elimante bugs in existing DHCP software as well @@ -206,15 +206,15 @@ SQLite version: 3.7.9sourceid version is 2011-11-01 00:52:41 c7c6050ef060877ebe7 mostly. However, the number of implemented features and parameters exposed to the user make this tool useful for functional testing as well. -
The perfdhcp exposes the number of command line parameters to control DHCP message exchanges. Currently they fall back to the following categories:
Rate control - control how many DHCP exchanges are initiated within a period of time. Tool can also simulate - best effort conditions where it attempts to start as many - exchanges as possible. + best effort conditions attempting to initiate as many DHCP + packet exchanges within a unit of time as possible.
Test exit specifiers - control the conditions when test completes including number of initiated exchanges, test period or @@ -367,7 +367,7 @@ The exit status is: exchanges are not successfully completed.
-
In order to run performance test at least two separate systems have to be installed: client and server. The first one has to have perfdhcp tool installed, the latter has to have DHCP server @@ -377,28 +377,224 @@ The exit status is: impacted by the performance of VMs.
The DHCP operates on low port numbers (67 for DHCPv4 relays and - 547 for DHCPv6) running perfdhcp with non-root priviliges will + 547 for DHCPv6). Running perfdhcp with non-root priviliges will usually result in the error message similar to this:
$./perfdhcp -4 -l eth3 -r 100 all
Error running perfdhcp: Failed to bind socket 3 to 172.16.1.2/port=67
- perfdhcp exposes '-L' command line option that - imposes use of custom local port and the following command line will - work: + perfdhcp has the '-L' command line option that + imposes use of custom local port. Thus the following command + line will work:
$./perfdhcp -4 -l eth3 -r 100 -L 10067 allbut in the standard configuration no responses will be received from the ISC DHCP server because server responds to default relay port 67. + Alternative way to overcome this issue is to run perfdhcp as root.
- Alternative way to overcome the issue with lack of privileges - to use default DHCP port number is to run perfdhcp as root. -
- In this section the perfdhcp command line options examples + Currently, perfdhcp is seen from the server perspective as relay agent. + This simplifies its implementation (specifically there is no need to + receive traffic sent to braodcast addresses). This imposes that IPv4 + address has to be set manually on the interface that will be used to + communicate with the server. For example, if DHCPv4 server is listening + on the interface connected to 172.16.1.0 subnet, interface on client + machine has to have network address assigned from the same subnet + on one of its interfaces connected to this subnet: +
#ifconfig eth3 172.16.1.2. netmask 255.255.255.0 up+
+ In this section the perfdhcp command line examples are presented as a quick start guide for new users. For the detailed list of command line options refer to the section called “Command line options”. -
-
-
- -