From: Stephen Morris Date: Tue, 25 Feb 2014 16:30:27 +0000 (+0000) Subject: [2307] Feformatted so that most lines are no longer than 80 characters wide X-Git-Tag: bind10-1.2.0beta1-release~21^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=abe74420817d34e1453a289843d8f648db29cb19;p=thirdparty%2Fkea.git [2307] Feformatted so that most lines are no longer than 80 characters wide --- diff --git a/tests/tools/perfdhcp/perfdhcp.xml b/tests/tools/perfdhcp/perfdhcp.xml index e5ed36f877..4a0aa31308 100644 --- a/tests/tools/perfdhcp/perfdhcp.xml +++ b/tests/tools/perfdhcp/perfdhcp.xml @@ -17,8 +17,6 @@ - PERFORMANCE OF THIS SOFTWARE. --> - - February 19, 2014 @@ -83,96 +81,129 @@ DESCRIPTION - perfdhcp is a DHCP benchmarking tool. It provides a way of measuring the performance of DHCP - servers by generating large amounts of traffic from simulated multiple clients. It is able to test both IPv4 and - IPv6 servers, and provides statistics concerning response times and the number of requests that are dropped. + perfdhcp is a DHCP benchmarking tool. It + provides a way of measuring the performance of DHCP servers by + generating large amounts of traffic from simulated multiple + clients. It is able to test both IPv4 and IPv6 servers, and + provides statistics concerning response times and the number of + requests that are dropped. - By default, tests are run using the full four-packet exchange sequence (DORA for DHCPv4, SARR for DHCPv6). - An option is provided to run tests using the initial two-packet exchange (DO and SA) instead. It is also - possible to configure perfdhcp to send DHCPv6 RENEW and RELEASE messages at a specified rate in parallel - with the DHCPv6 four-way exchanges. + By default, tests are run using the full four-packet exchange + sequence (DORA for DHCPv4, SARR for DHCPv6). An option is + provided to run tests using the initial two-packet exchange (DO + and SA) instead. It is also possible to configure perfdhcp to + send DHCPv6 RENEW and RELEASE messages at a specified rate in + parallel with the DHCPv6 four-way exchanges. - When running a performance test, perfdhcp will exchange packets with the server under test as - fast as possible unless the is given to limit the request rate. The length of the test can - be limited by setting a threshold on any or all of the number of requests made by perfdhcp, - the elapsed time, or the number of requests dropped by the server. + When running a performance test, perfdhcp + will exchange packets with the server under test as fast as + possible unless the is given to limit the + request rate. The length of the test can be limited by setting + a threshold on any or all of the number of requests made by + perfdhcp, the elapsed time, or the number of + requests dropped by the server. TEMPLATES - To allow the contents of packets sent to the server to be customized, perfdhcp allows the - specification of template files that determine the contents of the packets. For example, the customized packet - may contain a DHCPv6 ORO to request a set of options to be returned by the server, or it may contain the Client - FQDN option to request that server performs DNS updates. This may be used to discover performance bottlenecks - for different server configurations (e.g. DDNS enabled or disabled). + To allow the contents of packets sent to the server to be + customized, perfdhcp allows the specification + of template files that determine the contents of the packets. + For example, the customized packet may contain a DHCPv6 ORO to + request a set of options to be returned by the server, or it may + contain the Client FQDN option to request that server performs DNS + updates. This may be used to discover performance bottlenecks for + different server configurations (e.g. DDNS enabled or disabled). - Up to two template files can be specified on the command line, each file representing the contents of a particular - type of packet, the type being determined by the test being carried out. For example, if testing DHCPv6: + Up to two template files can be specified on the command line, + each file representing the contents of a particular type of + packet, the type being determined by the test being carried out. + For example, if testing DHCPv6: - With no template files specified on the command line, perfdhcp will generate both - SOLICIT and REQUEST packets. + With no template files specified on the command line, + perfdhcp will generate both SOLICIT + and REQUEST packets. - With one template file specified, that file will be used as the pattern for SOLICIT packets: - perfdhcp will generate the REQUEST packets. + With one template file specified, that file + will be used as the pattern for SOLICIT packets: + perfdhcp will generate the REQUEST + packets. - With two template files given on the command line, the first will be used as the pattern for SOLICIT - packets, the second as the pattern for REQUEST packets. + With two template files given on the command line, the + first will be used as the pattern for SOLICIT packets, + the second as the pattern for REQUEST packets. - (Similar determination applies to DHCPv4's DISCOVER and REQUEST packets.) + (Similar determination applies to DHCPv4's DISCOVER and REQUEST + packets.) - The template file holds the DHCP packet represented as a stream of ASCII hexadecimal digits and it excludes - any IP/UDP stack headers. The template file must not contain any characters other than hexadecimal digits and - spaces. Spaces are discarded when the template file is parsed (so in the file, '12B4' is the same as '12 B4' - which is the same as '1 2 B 4') + The template file holds the DHCP packet represented as a stream + of ASCII hexadecimal digits and it excludes any IP/UDP stack + headers. The template file must not contain any characters other + than hexadecimal digits and spaces. Spaces are discarded when the + template file is parsed (so in the file, '12B4' is the same as + '12 B4' which is the same as '1 2 B 4') - The template files should be used in conjunction with the command line parameters which specify offsets - of the data fields being modified in outbound packets. For example, example, the switch specifies the offset of the DHCPv6 Elapsed Time option - in the packet template. If the offset is specified, perfdhcp will inject the current elapsed time value into this - field before sending the packet to the server. + The template files should be used in conjunction with the command + line parameters which specify offsets of the data fields being + modified in outbound packets. For example, example, the + switch specifies the offset of the DHCPv6 Elapsed Time option in + the packet template. If the offset is specified, perfdhcp will + inject the current elapsed time value into this field before + sending the packet to the server. - In many scenarios, perfdhcp needs to simulate multiple clients (having unique client - identifier). Since packets for each client are generated from the same template file, it is necessary to randomize - the client identifier (or HW address in DHCPv4) in the packet created from it. The option allows specification of the offset in the template - where randomization should be performed. It is important to note that this offset points to the end (not the - beginning) of the client identifier (or HW address field). The number of bytes being randomized depends on the - number of simulated clients. If the number of simulated clients is between 1 and 255, only one byte (to which - randomization offset points) will be randomized. If the number of simulated clients is between 256 and 65535, - two bytes will be randomized. Note, that two last bytes of the client identifier will be randomized in this case: - the byte which randomization offset parameter points to, and the one which precedes it (random-offset - 1). If - the number of simulated clients exceeds 65535, three bytes will be randomized; and so on. + In many scenarios, perfdhcp needs to simulate + multiple clients (having unique client identifier). Since + packets for each client are generated from the same template + file, it is necessary to randomize the client identifier (or HW + address in DHCPv4) in the packet created from it. The + option allows specification of the offset in the template where + randomization should be performed. It is important to note that + this offset points to the end (not the beginning) of the client + identifier (or HW address field). The number of bytes being + randomized depends on the number of simulated clients. If the + number of simulated clients is between 1 and 255, only one byte + (to which randomization offset points) will be randomized. If the + number of simulated clients is between 256 and 65535, two bytes + will be randomized. Note, that two last bytes of the client + identifier will be randomized in this case: the byte which + randomization offset parameter points to, and the one which + precedes it (random-offset - 1). If the number of simulated + clients exceeds 65535, three bytes will be randomized; and so on. - Templates may be currently used to generate packets being sent to the server in 4-way exchanges, i.e. SOLICIT, REQUEST - (DHCPv6) and DISCOVER, REQUEST (DHCPv4). They cannot be used when RENEW or RELEASE packets are being sent. + Templates may be currently used to generate packets being sent + to the server in 4-way exchanges, i.e. SOLICIT, REQUEST (DHCPv6) + and DISCOVER, REQUEST (DHCPv4). They cannot be used when RENEW + or RELEASE packets are being sent. @@ -196,7 +227,8 @@ - DHCPv4 operation; this is the default. It is incompatible with the option. + DHCPv4 operation; this is the default. It is + incompatible with the option. @@ -205,7 +237,8 @@ - DHCPv6 operation. This is incompatible with the option. + DHCPv6 operation. This is incompatible with the + option. @@ -214,8 +247,10 @@ - When the target sending rate is not yet reached, control how many exchanges are initiated before the - next pause. This is a positive integer and defaults to 1. + When the target sending rate is not yet reached, + control how many exchanges are initiated before the + next pause. This is a positive integer and defaults + to 1. @@ -224,13 +259,18 @@ - The base MAC or DUID used to simulate different clients. The basetype may be "mac" or "duid". (The keyword "ether" may - alternatively used for MAC.) The option can be specified multiple times. The - MAC address must consist of six octets separated by single (:) or double (::) colons, for example: - mac=00:0c:01:02:03:04. The DUID value is a hexadecimal string: it must be at least six octets long - and must not be longer than 64 bytes and the length must be less than 128 hexadecimal digits, for - example: duid=0101010101010101010110111F14. + The base MAC or DUID used to simulate + different clients. The basetype may be "mac" + or "duid". (The keyword "ether" may alternatively + used for MAC.) The option can be + specified multiple times. The MAC address must consist + of six octets separated by single (:) or double (::) + colons, for example: mac=00:0c:01:02:03:04. The DUID + value is a hexadecimal string: it must be at least six + octets long and must not be longer than 64 bytes and + the length must be less than 128 hexadecimal digits, + for example: duid=0101010101010101010110111F14. @@ -239,8 +279,10 @@ - Specify the time after which a request is treated as having been lost. The value is given in seconds - and may contain a fractional component. The default is 1 second. + Specify the time after which a request is treated + as having been lost. The value is given in seconds + and may contain a fractional component. The default + is 1 second. @@ -249,7 +291,8 @@ - Specifies the type of lease being requested from the server. It may be one of the following: + Specifies the type of lease being requested from + the server. It may be one of the following: @@ -276,7 +319,8 @@ - The and forms may not be used + The and forms may not be used with the option. @@ -295,15 +339,19 @@ - Do only the initial part of the exchange: DISCOVER-OFFER if is selected, + Do only the initial part of the exchange: + DISCOVER-OFFER if is selected, SOLICIT-ADVERTISE if is chosen. - is incompatible with the following options: , , - , , , and . - In addition, it cannot be used with multiple instances of , - and . + is incompatible with the following + options: , , + , , + , and + . In addition, it cannot be + used with multiple instances of , + and . @@ -312,9 +360,13 @@ - For DHCPv4 operation, specify the local hostname/address to use when communicating with the server. - By default, the interface address through which traffic would normally be routed to the server is used. - For DHCPv6 operation, specify the name of the network interface through which exchanges are initiated. + For DHCPv4 operation, specify the local + hostname/address to use when communicating with + the server. By default, the interface address + through which traffic would normally be routed to + the server is used. For DHCPv6 operation, specify + the name of the network interface through which + exchanges are initiated. @@ -323,8 +375,10 @@ - Specify the local port to use. This must be zero or a positive integer up to 65535. A value of 0 - (the default) allows perfdhcp to choose its own port. + Specify the local port to use. This must be zero + or a positive integer up to 65535. A value of 0 + (the default) allows perfdhcp + to choose its own port. @@ -333,8 +387,11 @@ - Initiate preload exchanges back to back at startup. - preload must be 0 (the default) or a positive integer. + Initiate preload + exchanges back to back at startup. preload must be 0 + (the default) or a positive integer. @@ -343,10 +400,14 @@ - Initiate rate DORA/SARR (or if is - given, DO/SA) exchanges per second. A periodic report is generated showing the number of exchanges - which were not completed, as well as the average response latency. The program continues until - interrupted, at which point a final report is generated. + Initiate rate DORA/SARR (or + if is given, DO/SA) exchanges + per second. A periodic report is generated showing + the number of exchanges which were not completed, + as well as the average response latency. The program + continues until interrupted, at which point a final + report is generated. @@ -355,8 +416,11 @@ - Specify how many different clients are used. With a value of 1 (the default), all requests seem to come - from the same client. num-clients must be a positive number. + Specify how many different clients are used. With + a value of 1 (the default), all requests seem + to come from the same client. num-clients must be + a positive number. @@ -365,9 +429,11 @@ - Specify the seed for randomization, making runs of perfdhcp repeatable. seed is 0 or a positive integer. The value 0 means that a seed is - not used; this is the default. + Specify the seed for randomization, making runs of + perfdhcp repeatable. seed is 0 or a positive + integer. The value 0 means that a seed is not used; + this is the default. @@ -376,8 +442,10 @@ - The name of a file containing the template to use as a stream of hexadecimal digits. This may be specified - up to two times and controls the contents of the packets sent (see the "TEMPLATES" section above). + The name of a file containing the template to use as a + stream of hexadecimal digits. This may be specified + up to two times and controls the contents of the + packets sent (see the "TEMPLATES" section above). @@ -395,7 +463,8 @@ - Command to call with a single parameter of "start" or "stop" at the beginning/end of the program. + Command to call with a single parameter of "start" + or "stop" at the beginning/end of the program. @@ -404,9 +473,12 @@ - Include extended diagnostics in the output. diagnostic-selector is a string of single-keywords specifying the - operations for which verbose output is desired. The selector key letters are: + Include extended diagnostics + in the output. diagnostic-selector + is a string of single-keywords specifying the + operations for which verbose output is desired. + The selector key letters are: @@ -461,7 +533,8 @@ DHCPv4-Only Options - The following options only apply for DHCPv4 (i.e. when is given). + The following options only apply for DHCPv4 (i.e. when + is given). @@ -479,7 +552,8 @@ DHCPv6-Only Options - The following options only apply for DHCPv6 (i.e. when is given). + The following options only apply for DHCPv6 (i.e. when + is given). @@ -498,10 +572,14 @@ - Rate at which IPv6 RENEW requests are sent to a server. This value is only valid - when used in conjunction with the exchange rate (given by ). Furthermore the sum of this value and the - release-rate (given by ) + Rate at which IPv6 RENEW requests are sent + to a server. This value is only valid when + used in conjunction with the exchange + rate (given by ). + Furthermore the sum of this value and the + release-rate (given by ) must be equal to or less than the exchange rate. @@ -511,10 +589,14 @@ - Rate at which IPv6 RELEASE requests are sent to a server. This value is only valid - when used in conjunction with the exchange rate (given by ). Furthermore the sum of this value and the - renew-rate (given by ) + Rate at which IPv6 RELEASE requests are + sent to a server. This value is only valid + when used in conjunction with the exchange + rate (given by ). + Furthermore the sum of this value and the + renew-rate (given by ) must be equal to or less than the exchange rate. @@ -526,17 +608,21 @@ Template-Related Options - The following options may only be used in conjunction with and control how - perfdhcp modifies the template. The options may be specified multiple times on the command - line; each occurrence affects the corresponding template file (see "TEMPLATES" above). + The following options may only be used in conjunction with + and control how perfdhcp + modifies the template. The options may be specified multiple + times on the command line; each occurrence affects the + corresponding template file (see "TEMPLATES" above). - Offset of the (DHCPv4) secs field or (DHCPv6) elapsed-time option in the (second i.e. REQUEST) - template and must be 0 or a positive integer: a value of 0 disables this. + Offset of the (DHCPv4) secs field or (DHCPv6) + elapsed-time option in the (second i.e. REQUEST) + template and must be 0 or a positive integer: + a value of 0 disables this. @@ -545,8 +631,9 @@ - Offset of the (DHCPv4) IP address in the requested-IP option / (DHCPv6) IA_NA option in the - (second/request) template. + Offset of the (DHCPv4) IP address in the requested-IP + option / (DHCPv6) IA_NA option in the (second/request) + template. @@ -555,9 +642,11 @@ - Offset of the last octet to randomize in the template. random-offset must be an integer greater than 3. The - switch must be given to use this option. + Offset of the last octet to + randomize in the template. random-offset must be + an integer greater than 3. The + switch must be given to use this option. @@ -566,9 +655,12 @@ - Offset of the server-ID option in the (second/request) template. srvid-offset must be a positive integer, and the switch can only be - used when the template option () is also given. + Offset of the server-ID option in the + (second/request) template. srvid-offset must + be a positive integer, and the switch can only be + used when the template option () + is also given. @@ -577,9 +669,11 @@ - Offset of the transaction ID (xid) in the template. xid-offset must be a positive integer, and the switch can only be - used when the template option () is also given. + Offset of the transaction ID (xid) in the template. + xid-offset + must be a positive integer, and the switch can only + be used when the template option () + is also given. @@ -588,8 +682,9 @@ Options Controlling a Test - The following options may only be used in conjunction with and control both the length - of the test and the frequency of reports. + The following options may only be used in conjunction with + and control both the length of the test + and the frequency of reports. @@ -598,11 +693,16 @@ - Abort the test if more than max-drop requests have - been dropped. Use to abort if even a single request has been dropped. - If max-drop includes the suffix '%', it specifies - a maximum percentage of requests that may be dropped before abort. In this case, testing of the - threshold begins after 10 requests have been expected to be received. + Abort the test if more than max-drop + requests have been dropped. Use to abort if even a single + request has been dropped. If max-drop includes + the suffix '%', it specifies a maximum percentage + of requests that may be dropped before abort. + In this case, testing of the threshold begins after + 10 requests have been expected to be received. @@ -611,9 +711,12 @@ - Initiate num-request transactions. No report is - generated until all transactions have been initiated/waited-for, after which a report is generated - and the program terminates. + Initiate num-request + transactions. No report is generated until all + transactions have been initiated/waited-for, + after which a report is generated and the + program terminates. @@ -622,9 +725,13 @@ - Send requests for test-period, which is specified in - the same manner as . This can be used as an alternative to , - or both options can be given, in which case the testing is completed when either limit is reached. + Send requests for test-period, + which is specified in the same manner as + . This can be used as an + alternative to , or both + options can be given, in which case the testing + is completed when either limit is reached. @@ -649,11 +756,15 @@ server - Server to test, specified as an IP address. In the DHCPv6 case, the special name 'all' can be used - to refer to All_DHCP_Relay_Agents_and_Servers (the multicast address FF02::1:2), or the special - name 'servers' to refer to All_DHCP_Servers (the multicast address FF05::1:3). The server is - mandatory except where the option is given to specify an interface, in which - case it defauls to 'all'. + Server to test, specified as an IP address. + In the DHCPv6 case, the special name 'all' can be + used to refer to All_DHCP_Relay_Agents_and_Servers + (the multicast address FF02::1:2), or the special + name 'servers' to refer to All_DHCP_Servers (the + multicast address FF05::1:3). The server is + mandatory except where the + option is given to specify an interface, in + which case it defauls to 'all'. @@ -682,8 +793,10 @@ orphans - Received a message which doesn't match one sent to the server (i.e. it is a duplicate message, - a message that has arrived after an excessive delay, or one that is just not recognized). + Received a message which doesn't match one sent + to the server (i.e. it is a duplicate message, a + message that has arrived after an excessive delay, + or one that is just not recognized). @@ -702,7 +815,8 @@ EXIT STATUS - perfdhcp can exit with one of the following status codes: + perfdhcp can exit with one of the following + status codes: