void print_usage()

in src/util.c [68:115]


void print_usage()
{
	printf("Author: %s\n", AUTHOR_NAME);
	printf("lagscope: [-r|-s|-D|-f|-6|-u|-p|-o|-b|-z|-t|-n|-i|-R|-P|-H|-a|-l|-c|-V|-h]\n\n");
	printf("\t-r   Run as a receiver\n");
	printf("\t-s   Run as a sender\n");
	printf("\t-D   Run as daemon (Linux only)\n");
	printf("\t-f   Processor number to affinitize to (default: no affinity)\n");

	printf("\t-6   IPv6 mode    [default: IPv4]\n");
	//printf("\t-u   UDP mode    [default: TCP] NOT SUPPORTED YET\n");
	printf("\t-p   Server port number    [default: %d]\n", DEFAULT_RCV_PORT);
	printf("\t-o   Client port number    [default: %d]\n", DEFAULT_SRC_PORT);
	printf("\t-b   <buffer size in bytes>    [default: %d (receiver); %d (sender)]\n", DEFAULT_RECV_BUFFER_SIZE_BYTES, DEFAULT_SEND_BUFFER_SIZE_BYTES);
	printf("\t-z   <message size>        [default: %d bytes]\n", DEFAULT_MESSAGE_SIZE_BYTES);

	printf("\t-t   [SENDER ONLY] test duration       [default: %d second(s)]\n", DEFAULT_TEST_DURATION_SEC);
	printf("\t-n   [SENDER ONLY] ping iteration      [default: %d]\n", DEFAULT_TEST_ITERATION);
	printf("\t-i   [SENDER ONLY] test interval       [default: %d second(s)]\n", DEFAULT_TEST_INTERVAL_SEC);
	printf("\t     '-n' will be ignored if '-t' provided\n");

	printf("\t-R   [SENDER ONLY] dumps raw latencies into csv file\n");

	printf("\t-H   [SENDER ONLY] print histogram of per-iteration latency values\n");
	printf("\t-a   [SENDER ONLY] histogram 1st interval start value	[default: %d]\n", HIST_DEFAULT_START_AT);
	printf("\t-l   [SENDER ONLY] length of histogram intervals	[default: %d]\n", HIST_DEFAULT_INTERVAL_LEN);
	printf("\t-c   [SENDER ONLY] count of histogram intervals\t	[default: %d] [max: %d]\n", HIST_DEFAULT_INTERVAL_COUNT, HIST_MAX_INTERVAL_COUNT_USER);
	printf("\t-P   [SENDER ONLY] prints 50th, 75th, 90th, 95th, 99th, 99.9th, 99.99th, 99.999th percentile of latencies\n");
	printf("\t     Dump latency frequency table to a json file if specified after '-P'\n");

	printf("\t-V   Verbose mode\n");
	printf("\t-h   Help, tool usage\n");

	printf("Example:\n");
	printf("\treceiver:\n");
	printf("\t1) ./lagscope -r\n");
	printf("\t2) ./lagscope -r192.168.1.1\n");
	printf("\t3) ./lagscope -r -D -f0 -6 -p6789 -V\n");
	printf("\tsender:\n");
	printf("\t1) ./lagscope -s192.168.1.1\n");
	printf("\t2) ./lagscope -s192.168.1.1 -t600 -i1 -V\n");
	printf("\t3) ./lagscope -s192.168.1.1 -n1000 -6 -i2 -V\n");
	printf("\t4) ./lagscope -s192.168.1.1 -H -a10 -l1 -c98\n");
	printf("\t5) ./lagscope -s192.168.1.1 -Pfreq_table.json\n");
	printf("\t6) ./lagscope -s192.168.1.1 -Rraw_latency_values.csv\n");

	printf("\nNote: There should be no space between option and its value\n");
}