diff options
-rw-r--r-- | astraceroute.8 | 4 | ||||
-rw-r--r-- | bpfc.8 | 4 | ||||
-rw-r--r-- | bpfc.c | 4 | ||||
-rw-r--r-- | flowtop.8 | 4 | ||||
-rw-r--r-- | flowtop.c | 4 | ||||
-rw-r--r-- | ifpps.8 | 28 | ||||
-rw-r--r-- | ifpps.c | 4 | ||||
-rw-r--r-- | netsniff-ng.8 | 10 | ||||
-rw-r--r-- | netsniff-ng.c | 2 | ||||
-rw-r--r-- | trafgen.8 | 31 | ||||
-rw-r--r-- | trafgen.c | 2 |
11 files changed, 50 insertions, 47 deletions
diff --git a/astraceroute.8 b/astraceroute.8 index 28d1948..05273c8 100644 --- a/astraceroute.8 +++ b/astraceroute.8 @@ -125,10 +125,10 @@ Set the IP's no fragmentation flag. Show and dissect the returned packet. .SS -v, --version -Show versioning information. +Show versioning information and exit. .SS -h, --help -Show user help. +Show user help and exit. .SH USAGE EXAMPLE @@ -73,10 +73,10 @@ Be more verbose and display some bpfc debugging information. Dump all supported instructions to stdout. .PP .SS -v, --version -Show version information. +Show version information and exit. .PP .SS -h, --help -Show user help. +Show user help and exit. .PP .SH SYNTAX .PP @@ -42,8 +42,8 @@ static void help(void) " -b|--bypass Bypass filter validation (e.g. for bug testing)\n" " -V|--verbose Be more verbose\n" " -d|--dump Dump supported instruction table\n" - " -v|--version Print version\n" - " -h|--help Print this help\n\n" + " -v|--version Print version and exit\n" + " -h|--help Print this help and exit\n\n" "Examples:\n" " bpfc fubar\n" " bpfc fubar > foo (bpfc -f C -i fubar > foo) --> netsniff-ng -f foo ...\n" @@ -82,10 +82,10 @@ limit policy), different hosts or IP addresses can be placed into geoip.conf, separated by a newline. .SS -v, --version -Show versioning information. +Show versioning information and exit. .SS -h, --help -Show user help. +Show user help and exit. .SH USAGE EXAMPLE @@ -240,8 +240,8 @@ static void help(void) " -S|--sctp Show only SCTP flows\n" " -s|--show-src Also show source, not only dest\n" " -u|--update Update GeoIP databases\n" - " -v|--version Print version\n" - " -h|--help Print this help\n\n" + " -v|--version Print version and exit\n" + " -h|--help Print this help and exit\n\n" "Examples:\n" " flowtop\n" " flowtop -46UTDISs\n\n" @@ -15,24 +15,24 @@ ifpps \- top-like networking and system statistics ifpps is a small utility which periodically provides top-like networking and system statistics from the kernel. ifpps gathers its data directly from procfs files and does not apply any user space monitoring libraries -which could falsify statistics under high load. +which would falsify statistics under high load. .PP For instance, consider the following scenario: two directly connected -Linux machines, each with an Intel Core 2 Quad Q6600 2.40GHz CPUs, 4 GB -RAM, and an Intel 82566DC-2 Gigabit Ethernet NIC, are used for performance -evaluation. One machine generates 64 byte network packets by using the -kernel space packet generator, pktgen, with a maximum possible packet rate. -The other machine displays statistics about incoming network packets by -using i) iptraf(8) and ii) ifpps. +Linux machines with Intel Core 2 Quad Q6600 2.40GHz CPUs, 4 GB RAM, and +an Intel 82566DC-2 Gigabit Ethernet NIC are used for performance evaluation. +One machine generates 64 byte network packets by using the kernel space +packet generator pktgen with a maximum possible packet rate. The other +machine displays statistics about incoming network packets by using i) +iptraf(8) and ii) ifpps. .PP iptraf which incorporates pcap(3) shows an average packet rate of -246,000 pps, while on the other hand, ifpps shows an average packet rate -of 1,378,000 pps. Hence, due to packet copies and deferring statistical -calculations into user space, a measurement error of approximately 460 per cent -occurs. Tools like iptraf might display much more information, such as +246,000 pps while on the other hand ifpps shows an average packet rate +of 1,378,000 pps. Hence, due to packet copies and deferring statistics +creation into user space, a measurement error of approximately 460 per cent +occurs. Tools like iptraf might display much more information such as TCP per flow statistics (hence the use of the pcap library), that is not possible with ifpps, because overall networking statistics are our focus; -statistics, which are also reliable under high packet load. +statistics, which are also fairly reliable under high packet load. .PP .SH OPTIONS .PP @@ -40,7 +40,7 @@ statistics, which are also reliable under high packet load. Networking device to fetch statistics from, for example, eth0, wlan0. .PP .SS -t <time>, --interval <time> -Statistics refresh interval in milliseconds, default is 1000ms(1 sec). +Statistics refresh interval in milliseconds, default is 1000ms. .PP .SS -p, --promisc Turn on promiscuous mode for the given networking device. @@ -74,7 +74,7 @@ Continuous terminal output for the wlan0 device in promiscuous mode. .SH NOTE On 10Gbit/s cards or higher, receive and transmit statistics are usually accumulated at a higher duration interval than 1 second. Thus, it might -be advisable to alter the timing to a longer interval for such cards. +be advisable to alter the timing to a higher accumulation interval for such cards. .PP .SH BUGS Systems with greater than 32 cores are currently not supported. This @@ -105,8 +105,8 @@ static void help(void) " -p|--promisc Promiscuous mode\n" " -c|--csv Output to terminal as Gnuplot-ready data\n" " -l|--loop Continuous CSV output\n" - " -v|--version Print version\n" - " -h|--help Print this help\n\n" + " -v|--version Print version and exit\n" + " -h|--help Print this help and exit\n\n" "Examples:\n" " ifpps eth0\n" " ifpps -pd eth0\n" diff --git a/netsniff-ng.8 b/netsniff-ng.8 index 2bf2e8b..573a360 100644 --- a/netsniff-ng.8 +++ b/netsniff-ng.8 @@ -63,7 +63,7 @@ determined automatically by the pcap file magic. In case of stdin, it is assumed that the input stream is a pcap file. .PP .SS -o <dev|pcap|dir|cfg|->, --out <dev|pcap|dir|cfg|-> -Defines the output device, that can either be a networking device, a pcap file, +Defines the output device. This can either be a networking device, a pcap file, a folder, a trafgen(8) configuration file or stdout (\[lq]-\[rq]). In the case of a pcap file that should not have the default pcap type (0xa1b2c3d4), the additional option \[lq]-T\[rq] must be provided. If a directory is given, then, instead of a @@ -126,7 +126,7 @@ used. Pcap files with swapped endianess are also supported. .PP .SS -D, --dump-pcap-types Dump all available pcap types with their capabilities and magic numbers that -can be used with option \[lq]-T\[rq] and exit. +can be used with option \[lq]-T\[rq] to stdout and exit. .PP .SS -B, --dump-bpf If a Berkeley Packet Filter is given, for example via option \[lq]-f\[rq], then @@ -164,7 +164,7 @@ default the size is determined based on the network connectivity rate. .PP .SS -k <uint>, --kernel-pull <uint> Manually define the interval in micro-seconds where the kernel should be triggered -to batch process the ring buffer frames. On default, it is every 10us, but it can +to batch process the ring buffer frames. By default, it is every 10us, but it can manually be prolonged, for instance. .PP .SS -b <cpu>, --bind-cpu <cpu> @@ -211,10 +211,10 @@ addresses can be placed into geoip.conf, separated by a newline. Be more verbose during startup, that is to say, show detailed ring setup information. .PP .SS -v, --version -Show version information. +Show version information and exit. .PP .SS -h, --help -Show user help. +Show user help and exit. .PP .SH USAGE EXAMPLE .PP diff --git a/netsniff-ng.c b/netsniff-ng.c index b4a239e..82ab73c 100644 --- a/netsniff-ng.c +++ b/netsniff-ng.c @@ -1045,7 +1045,7 @@ static void help(void) " -l|--ascii Print human-readable packet data\n" " -U|--update Update GeoIP databases\n" " -V|--verbose Be more verbose\n" - " -v|--version Show version\n" + " -v|--version Show version and exit\n" " -h|--help Guess what?!\n\n" "Examples:\n" " netsniff-ng --in eth0 --out dump.pcap -s -T 0xa1b2c3d4 --b 0 tcp or udp\n" @@ -28,7 +28,7 @@ minimal and to the point. trafgen makes use of packet(7) socket's TX_RING interface of the Linux kernel, which is a mmap(2)'ed ring buffer shared between user and kernel space. -On default, trafgen starts as many processes as CPUs that are online, pins each +By default, trafgen starts as many processes as CPUs that are online, pins each of them to their respective CPU and sets up the ring buffer each in their own process space after having compiled a list of packets to transmit. Thus, this is likely the fastest one can get out of the box in terms of transmission performance @@ -76,10 +76,12 @@ passed through stdin, only 1 CPU will be used. Defines the outgoing networking device such as eth0, wlan0 and others. .SS -p, --cpp -Pass the packet configuration to +Pass the packet configuration to the C preprocessor before reading it into +trafgen. This allows #define and #include directives (e.g. to include +definitions from system headers) to be used in the trafgen configuration file. .SS -J, --jumbo-support -On default trafgen's ring buffer frames are of a fixed size of 2048 bytes. +By default trafgen's ring buffer frames are of a fixed size of 2048 bytes. This means that if you're expecting jumbo frames or even super jumbo frames to pass your line, then you need to enable support for that with the help of this option. However, this has the disadvantage of a performance regression and a @@ -110,13 +112,13 @@ this is equivalent to infinite packets resp. processing until interrupted. Otherwise, a number given as an unsigned integer will limit processing. .SS -r, --rand -Randomize the packet selection of the configuration file. On default, if more +Randomize the packet selection of the configuration file. By default, if more than one packet is defined in a packet configuration, packets are scheduled for transmission in a round robin fashion. With this option, they are selected randomly instread. .SS -P <uint>, --cpus <uint> -Specify the number of processes trafgen shall fork(2) off. On default trafgen +Specify the number of processes trafgen shall fork(2) off. By default trafgen will start as many processes as CPUs that are online and pin them to each, respectively. Allowed value must be within interval [1,CPUs]. @@ -135,17 +137,18 @@ default the size is being determined based on the network connectivity rate. .SS -k <uint>, --kernel-pull <uint> Manually define the interval in micro-seconds where the kernel should be triggered -to batch process the ring buffer frames. On default, it is every 10us, but it can +to batch process the ring buffer frames. By default, it is every 10us, but it can manually be prolonged, for instance.. .SS -E <uint>, --seed <uint> -Manually set the seed for trafgen. On default, a random seed from /dev/urandom -is being used to feed glibc's pseudo random number generator. If that fails, it -falls back to the unix timestamp. It can be useful to set it up manually to be -able to reproduce a trafgen session, e.g. after fuzz testing. +Manually set the seed for pseudo random number generator (PRNG) in trafgen. By +default, a random seed from /dev/urandom is used to feed glibc's PRNG. If that +fails, it falls back to the unix timestamp. It can be useful to set the seed +manually in order to be able to reproduce a trafgen session, e.g. after fuzz +testing. .SS -u <uid>, --user <uid> resp. -g <gid>, --group <gid> -After ring setup drop privileges to a non-root user/group combination. +After ring setup, drop privileges to a non-root user/group combination. .SS -V, --verbose Let trafgen be more talkative and let it print the parsed configuration and @@ -156,10 +159,10 @@ Show a built-in packet configuration example. This might be a good starting point for an initial packet configuration scenario. .SS -v, --version -Show versioning information. +Show version information and exit. .SS -h, --help -Show user help. +Show user help and exit. .SH SYNTAX trafgen's packet configuration syntax is fairly simple. The very basic things @@ -171,7 +174,7 @@ enclosed by opening '{' and closing '}' braces, for example: { /* packet 2 content goes here ... */ } When trafgen is started using multiple CPUs (default), then each of those packets -will be scheduled for transmission on all CPUs on default. However, it is possible +will be scheduled for transmission on all CPUs by default. However, it is possible to tell trafgen to schedule a packet only on a particular CPU: cpu(1): { /* packet 1 content goes here ... */ } @@ -179,7 +179,7 @@ static void help(void) " -u|--user <userid> Drop privileges and change to userid\n" " -g|--group <groupid> Drop privileges and change to groupid\n" " -V|--verbose Be more verbose\n" - " -v|--version Show version\n" + " -v|--version Show version and exit\n" " -e|--example Show built-in packet config example\n" " -h|--help Guess what?!\n\n" "Examples:\n" |