void
CommandOptions::usage() {
std::cout <<
- "perfdhcp [-huv] [-4|-6] [-A<encapsulation-level>] [-e<lease-type>]\n"
- " [-r<rate>] [-f<renew-rate>]\n"
- " [-F<release-rate>] [-t<report>] [-C<separator>] [-R<range>]\n"
- " [-b<base>] [-n<num-request>] [-p<test-period>] [-d<drop-time>]\n"
- " [-D<max-drop>] [-l<local-addr|interface>] [-P<preload>]\n"
- " [-L<local-port>] [-N<remote-port>]\n"
- " [-o<code,hexstring>] [-s<seed>] [-i] [-B] [-W<late-exit-delay>]\n"
- " [-c] [-1] [-M<mac-list-file>] [-T<template-file>]\n"
- " [-X<xid-offset>] [-O<random-offset] [-E<time-offset>]\n"
- " [-S<srvid-offset>] [-I<ip-offset>] [-x<diagnostic-selector>]\n"
- " [-w<wrapped>] [server]\n"
+ "perfdhcp [-1] [-4 | -6] [-A encapsulation-level] [-b base] [-B] [-c]\n"
+ " [-C separator] [-d drop-time] [-D max-drop] [-e lease-type]\n"
+ " [-E time-offset] [-f renew-rate] [-F release-rate] [-g thread-mode]\n"
+ " [-h] [-i] [-I ip-offset] [-J remote-address-list-file]\n"
+ " [-l local-address|interface] [-L local-port] [-M mac-list-file]\n"
+ " [-n num-request] [-N remote-port] [-O random-offset]\n"
+ " [-o code,hexstring] [-p test-period] [-P preload] [-r rate]\n"
+ " [-R num-clients] [-s seed] [-S srvid-offset] [--scenario name]\n"
+ " [-t report] [-T template-file] [-u] [-v] [-W exit-wait-time]\n"
+ " [-w script_name] [-x diagnostic-selector] [-X xid-offset] [server]\n"
"\n"
"The [server] argument is the name/address of the DHCP server to\n"
"contact. For DHCPv4 operation, exchanges are initiated by\n"
"-1: Take the server-ID option from the first received message.\n"
"-4: DHCPv4 operation (default). This is incompatible with the -6 option.\n"
"-6: DHCPv6 operation. This is incompatible with the -4 option.\n"
- "-u: Enable checking address uniqueness. Lease valid lifetime\n"
- " should not be shorter than test duration.\n"
"-b<base>: The base mac, duid, IP, etc, used to simulate different\n"
" clients. This can be specified multiple times, each instance is\n"
" in the <type>=<value> form, for instance:\n"
" with the exchange rate (given by -r<rate>). Furthermore the sum of\n"
" this value and the release-rate (given by -F<rate) must be equal\n"
" to or less than the exchange rate.\n"
- "-g: Select thread mode: 'single' or 'multi'. In multi-thread mode packets\n"
+ "-g<thread-mode>: 'single' or 'multi'. In multi-thread mode packets\n"
" are received in separate thread. This allows better utilisation of CPUs.\n"
" If more than 1 CPU is present then multi-thread mode is the default,\n"
" otherwise single-thread is the default.\n"
" (second/request) template.\n"
"-T<template-file>: The name of a file containing the template to use\n"
" as a stream of hexadecimal digits.\n"
+ "-u: Enable checking address uniqueness. Lease valid lifetime\n"
+ " should not be shorter than test duration.\n"
"-v: Report the version number of this program.\n"
"-W<time>: Specifies exit-wait-time parameter, that makes perfdhcp wait\n"
" for <time> us after an exit condition has been met to receive all\n"