Provided by: netsniff-ng_0.6.0-1build2_i386 bug


       ifpps - top-like networking and system statistics


       ifpps { [options] | [device] }


       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 make use of any user space
       monitoring libraries which would falsify statistics under high load.

       For instance, consider the following scenario: two  directly  connected
       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.

       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  statistics
       creation  into  user  space,  a  measurement error of approximately 460
       percent occurs. Tools like iptraf might display much  more  information
       such  as  TCP  per flow statistics (hence the use of the pcap library).
       This is not possible with ifpps, because overall networking  statistics
       are  its  focus;  statistics, which are also fairly reliable under high
       packet load.

       ifpps  also  periodically  displays  CPU  load,   interrupt,   software
       interrupt data per sample interval as well as total interrupts, all per
       CPU. In case the number of CPUs exceeds 5 or the  number  specified  by
       the  user  with  the  “-n” command line option, ifpps will only display
       this number top heavy hitters. The topmost heavy  hitter  CPU  will  be
       marked  with  “+”.  The least heavy hitter will always be displayed and
       is marked with “-”. In addition, the average for all the above  per-CPU
       data  is shown. Optionally the median values can be displayed using the
       “-m” command line option.

       ifpps also supports directly the gnuplot(1) data  sample  format.  This
       facilitates creation of gnuplot figures from ifpps time series.


   -d <netdev>, --dev <netdev>
       Networking device to fetch statistics from, for example eth0, wlan0.

   -n, --num-cpus
       Set  maximum  number  of  top  hitter  CPUs  (in terms of time spent in
       system/user mode) to display in ncurses mode, default is 10.

   -t <time>, --interval <time>
       Statistics refresh interval in milliseconds, default is 1000ms.

   -c, --csv
       Output (once) the ncurses data  to  the  terminal  as  gnuplot(1)-ready

   -l, --loop
       Continuously  output  the  terminal data after a refresh interval. This
       option is only available if option  “-c”  is  given.  For  “-l”  it  is
       usually  recommended  to  redirect the output into a file that is to be
       processed later with gnuplot(1).

   -m, --median
       Show median values across  all  CPUs  for  CPU  load,  interrupts  (per
       interval and absolute) and software interrupts.

   -o, --omit-header
       Omit  printing the CSV header. This option is only available if “-c” is

   -p, --promisc
       Turn on promiscuous mode for the given networking device.

   -P, --percentage
       Show percentage of current throughput in relation to  theoretical  line

   -W, --no-warn
       Suppress  possible warnings in the ncurses output, e.g. about a too low
       sampling interval that could cause performance regression.

   -v, --version
       Show version information.

   -h, --help
       Show user help.


   ifpps eth0
       Default ncurses output for the eth0 device.

   ifpps -pd eth0
       Ncurses output for the eth0 device in promiscuous mode.

   ifpps -lpcd wlan0 > plot.dat
       Continuous terminal output for the wlan0 device in promiscuous mode.


       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  higher  accumulation
       interval for such cards.


       ifpps is licensed under the GNU GPL version 2.0.


       ifpps  was  originally  written  for  the netsniff-ng toolkit by Daniel
       Borkmann.   It   is   currently   maintained    by    Tobias    Klauser
       <> and Daniel Borkmann <>.


       netsniff-ng(8),    trafgen(8),   mausezahn(8),   bpfc(8),   flowtop(8),
       astraceroute(8), curvetun(8)


       Manpage was written by Daniel Borkmann.


       This  page  is  part  of  the  Linux  netsniff-ng  toolkit  project.  A
       description  of  the project, and information about reporting bugs, can
       be found at