Annotation of embedaddon/iftop/iftop.8, revision 1.1.1.1

1.1       misho       1: .TH IFTOP 8
                      2: .\"
                      3: .\" iftop.8:
                      4: .\" Manual page for iftop.
                      5: .\"
                      6: .\" $Id: iftop.8,v 1.25 2005/12/25 11:50:21 pdw Exp $
                      7: .\"
                      8: 
                      9: .SH NAME
                     10: iftop - display bandwidth usage on an interface by host
                     11: 
                     12: .SH SYNOPSIS
                     13: \fBiftop\fP \fB-h\fP |
                     14: [\fB-nNpbBP\fP] [\fB-i\fP \fIinterface\fP] [\fB-f\fP \fIfilter code\fP] [\fB-F\fP \fInet\fP/\fImask\fP]
                     15: 
                     16: .SH DESCRIPTION
                     17: \fBiftop\fP listens to network traffic on a named \fIinterface\fP, or on the
                     18: first interface it can find which looks like an external interface if none is
                     19: specified, and displays a table of current bandwidth usage by pairs of hosts.
                     20: \fBiftop\fP must be run with sufficient permissions to monitor all network
                     21: traffic on the \fIinterface\fP; see \fBpcap\fP(3) for more information, but on
                     22: most systems this means that it must be run as root.
                     23: 
                     24: By default, \fBiftop\fP will look up the hostnames associated with addresses it
                     25: finds in packets. This can cause substantial traffic of itself, and may result
                     26: in a confusing display. You may wish to suppress display of DNS traffic by
                     27: using filter code such as \fBnot port domain\fP, or switch it off entirely,
                     28: by using the \fB-n\fP option or by pressing \fBR\fP when the program is running.
                     29: 
                     30: By default, \fBiftop\fP counts all IP packets that pass through the filter, and
                     31: the direction of the packet is determined according to the direction the packet
                     32: is moving across the interface.  Using the \fB-F\fP option it is possible to
                     33: get \fBiftop\fP to show packets entering and leaving a given network.  For
                     34: example, \fBiftop -F 10.0.0.0/255.0.0.0\fP will analyse packets flowing in and
                     35: out of the 10.* network.
                     36: 
                     37: Some other filter ideas:
                     38: .TP
                     39: \fBnot ether host ff:ff:ff:ff:ff:ff\fP
                     40: Ignore ethernet broadcast packets.
                     41: .TP
                     42: \fBport http and not host \fP\fIwebcache.example.com\fP
                     43: Count web traffic only, unless it is being directed through a local web cache.
                     44: .TP
                     45: \fBicmp\fP
                     46: How much bandwith are users wasting trying to figure out why the network is
                     47: slow?
                     48: 
                     49: .SH OPTIONS
                     50: 
                     51: .TP
                     52: \fB-h\fP
                     53: Print a summary of usage.
                     54: .TP
                     55: \fB-n\fP
                     56: Don't do hostname lookups. 
                     57: .TP
                     58: \fB-N\fP
                     59: Do not resolve port number to service names
                     60: .TP
                     61: \fB-p\fP
                     62: Run in promiscuous mode, so that traffic which does not pass directly through
                     63: the specified interface is also counted.
                     64: .TP
                     65: \fB-P\fP
                     66: Turn on port display.
                     67: .TP
                     68: \fB-b\fP
                     69: Don't display bar graphs of traffic. 
                     70: .TP
                     71: \fB-B\fP
                     72: Display bandwidth rates in bytes/sec rather than bits/sec.
                     73: .TP
                     74: \fB-i\fP \fIinterface\fP
                     75: Listen to packets on \fIinterface\fP.
                     76: .TP
                     77: \fB-f\fP \fIfilter code\fP
                     78: Use \fIfilter code\fP to select the packets to count. Only IP packets are ever
                     79: counted, so the specified code is evaluated as \fB(\fP\fIfilter code\fP\fB) and ip\fP.
                     80: .TP
                     81: \fB-F\fP \fInet\fP/\fImask\fP
                     82: Specifies a network for traffic analysis.  If specified, iftop will only
                     83: include packets flowing in to or out of the given network, and packet direction
                     84: is determined relative to the network boundary, rather than to the interface.
                     85: You may specify \fImask\fP as a dotted quad, such as /255.255.255.0, or as a
                     86: single number specifying the number of bits set in the netmask, such as /24.
                     87: .TP
                     88: \fB-c\fP \fIconfig file\fP
                     89: Specifies an alternate config file.  If not specified, iftop will use
                     90: \fB~/.iftoprc\fP if it exists.  See below for a description of config files
                     91: 
                     92: .SH DISPLAY
                     93: 
                     94: When running, \fBiftop\fP uses the whole screen to display network usage. At
                     95: the top of the display is a logarithmic scale for the bar graph which gives a
                     96: visual indication of traffic.
                     97: 
                     98: The main part of the display lists, for each pair of hosts, the rate at which
                     99: data has been sent and received over the preceding 2, 10 and 40 second
                    100: intervals. The direction of data flow is indicated by arrows, <= and =>. For
                    101: instance,
                    102: .nf
                    103: 
                    104: foo.example.com  =>  bar.example.com      1Kb  500b   100b
                    105:                  <=                       2Mb    2Mb    2Mb
                    106: 
                    107: .Sp
                    108: .fi
                    109: shows, on the first line, traffic from \fBfoo.example.com\fP to
                    110: \fBbar.example.com\fP; in the preceding 2 seconds, this averaged 1Kbit/s,
                    111: around half that amount over the preceding 10s, and a fifth of that over the
                    112: whole of the last 40s. During each of those intervals, the data sent in the
                    113: other direction was about 2Mbit/s. On the actual display, part of each line
                    114: is inverted to give a visual indication of the 10s average of traffic.
                    115: You might expect to see something like this where host \fBfoo\fP is making
                    116: repeated HTTP requests to \fBbar\fP, which is sending data back which saturates
                    117: a 2Mbit/s link.
                    118: 
                    119: By default, the pairs of hosts responsible for the most traffic (10 second
                    120: average) are displayed at the top of the list.
                    121: 
                    122: At the bottom of the display, various totals are shown, including peak traffic
                    123: over the last 40s, total traffic transferred (after filtering), and total
                    124: transfer rates averaged over 2s, 10s and 40s.
                    125: 
                    126: .SH SOURCE / DEST AGGREGATION
                    127: 
                    128: By pressing \fBs\fP or \fBd\fP while \fBiftop\fP is running, all traffic
                    129: for each source or destination will be aggregated together.  This is most
                    130: useful when \fBiftop\fP is run in promiscuous mode, or is run on a gateway
                    131: machine.
                    132: 
                    133: .SH PORT DISPLAY
                    134: 
                    135: \fBS\fP or \fBD\fP toggle the display of source and destination ports
                    136: respectively. \fBp\fP will toggle port display on/off.
                    137: 
                    138: .SH DISPLAY TYPE
                    139: 
                    140: \fBt\fP cycles through the four line display modes; the default 2-line display,
                    141: with sent and received traffic on separate lines, and 3 1-line displays, with
                    142: sent, received, or total traffic shown.
                    143: 
                    144: .SH DISPLAY ORDER
                    145: 
                    146: By default, the display is ordered according to the 10s average (2nd column).
                    147: By pressing \fB1\fP, \fB2\fP or \fB3\fP it is possible to sort by the 1st, 2nd
                    148: or 3rd column.   By pressing \fB<\fP or \fB>\fP the display will be sorted by
                    149: source or destination hostname respectively.
                    150: 
                    151: .SH DISPLAY FILTERING
                    152: 
                    153: \fBl\fP allows you to enter a POSIX extended regular expression that will be
                    154: used to filter hostnames shown in the display.  This is a good way to quickly
                    155: limit what is shown on the display.  Note that this happens at a much later
                    156: stage than filter code, and does not affect what is actually captured.  Display
                    157: filters DO NOT affect the totals at the bottom of the screen.
                    158: 
                    159: .SH PAUSE DISPLAY / FREEZE ORDER
                    160: 
                    161: \fBP\fP will pause the current display.
                    162: 
                    163: \fBo\fP will freeze the current screen order.  This has the side effect that
                    164: traffic between hosts not shown on the screen at the time will not be shown at
                    165: all, although it will be included in the totals at the bottom of the screen.
                    166: 
                    167: .SH SCROLL DISPLAY
                    168: 
                    169: \fBj\fP and \fBk\fP will scroll the display of hosts.  This feature is most
                    170: useful when the display order is frozen (see above).
                    171: 
                    172: .SH FILTER CODE
                    173: 
                    174: \fBf\fP allows you to edit the filter code whilst iftop running.  This
                    175: can lead to some unexpected behaviour.
                    176: 
                    177: .SH CONFIG FILE
                    178: 
                    179: iftop can read its configuration from a config file.  If the \fB-c\fP option is
                    180: not specified, iftop will attempt to read its configuration from
                    181: \fB~/.iftoprc\fP, if it exists.  Any command line options specified will
                    182: override settings in the config file.
                    183: 
                    184: The config file consists of one configuration directive per line.  Each
                    185: directive is a name value pair, for example:
                    186: .nf
                    187: 
                    188: interface: eth0
                    189: 
                    190: .Sp
                    191: .fi
                    192: sets the network interface.  The following config directives are supported:
                    193: 
                    194: .TP
                    195: \fBinterface:\fP \fIif\fP
                    196: Sets the network interface to \fIif\fP.
                    197: .TP
                    198: \fBdns-resolution:\fP \fI(yes|no)\fP
                    199: Controls reverse lookup of IP addresses.
                    200: .TP
                    201: \fBport-resolution:\fP \fI(yes|no)\fP
                    202: Controls conversion of port numbers to service names.
                    203: .TP
                    204: \fBfilter-code:\fP \fIbpf\fP
                    205: Sets the filter code to \fIbpf\fP.
                    206: .TP
                    207: \fBshow-bars:\fP \fI(yes|no)\fP
                    208: Controls display of bar graphs.
                    209: .TP
                    210: \fBpromiscuous:\fP \fI(yes|no)\fP
                    211: Puts the interface into promiscuous mode.
                    212: .TP
                    213: \fBport-display:\fP \fI(off|source-only|destination-only|on)\fP
                    214: Controls display of port numbers.
                    215: .TP
                    216: \fBhide-source:\fP \fI(yes|no)\fP
                    217: Hides source host names.
                    218: .TP
                    219: \fBhide-destination:\fP \fI(yes|no)\fP
                    220: Hides destination host names.
                    221: .TP
                    222: \fBuse-bytes:\fP \fI(yes|no)\fP
                    223: Use bytes for bandwidth display, rather than bits.
                    224: .TP
                    225: \fBsort:\fP \fI(2s|10s|40s|source|destination)\fP
                    226: Sets which column is used to sort the display.
                    227: .TP
                    228: \fBline-display:\fP \fI(two-line|one-line-both|one-line-sent|one-line-received)\fP
                    229: Controls the appearance of each item in the display.
                    230: .TP
                    231: \fBshow-totals:\fP \fI(yes|no)\fP
                    232: Shows cummulative total for each item.
                    233: .TP
                    234: \fBlog-scale:\fP \fI(yes|no)\fP
                    235: Use a logarithmic scale for bar graphs.
                    236: .TP
                    237: \fBmax-bandwidth:\fP \fIbw\fP
                    238: Fixes the maximum for the bar graph scale to \fIbw\fP, e.g. "10M"
                    239: .TP
                    240: \fBnet-filter:\fP \fInet/mask\fP
                    241: Defines an IP network boundary for determining packet direction.
                    242: .TP
                    243: \fBscreen-filter:\fP \fIregexp\fP
                    244: Sets a regular expression to filter screen output.
                    245: 
                    246: .SH QUIRKS (aka they're features, not bugs)
                    247: 
                    248: There are some circumstances in which iftop may not do what you expect.  In
                    249: most cases what it is doing is logical, and we believe it is correct behaviour,
                    250: although I'm happy to hear reasoned arguments for alternative behaviour.
                    251: 
                    252: \fBTotals don't add up\fP
                    253: 
                    254: There are several reasons why the totals may not appear to add up.  The
                    255: most obvious is having a screen filter in effect, or screen ordering
                    256: frozen.  In this case some captured information is not being shown to
                    257: you, but is included in the totals.
                    258: 
                    259: A more subtle explanation comes about when running in promiscuous mode
                    260: without specifying a \fB-F\fP option.  In this case there is no easy way
                    261: to assign the direction of traffic between two third parties.  For the purposes
                    262: of the main display this is done in an arbitrary fashion (by ordering of IP
                    263: addresses), but for the sake of totals all traffic between other hosts is
                    264: accounted as incoming, because that's what it is from the point of view of your
                    265: interface.  The \fB-F\fP option allows you to specify an arbitrary network
                    266: boundary, and to show traffic flowing across it.
                    267: 
                    268: \fBPeak totals don't add up\fP
                    269: 
                    270: Again, this is a feature.  The peak sent and peak received didn't necessarily
                    271: happen at the same time.  The peak total is the maximum of sent plus received
                    272: in each captured time division.
                    273: 
                    274: \fBChanging the filter code doesn't seem to work\fP
                    275: 
                    276: Give it time.  Changing the filter code affects what is captured from
                    277: the time that you entered it, but most of what is on the display is
                    278: based on some fraction of the last 40s window of capturing.  After
                    279: changing the filter there may be entries on the display that are
                    280: disallowed by the current filter for up to 40s.  DISPLAY FILTERING has
                    281: immediate effect and does not affect what is captured.
                    282: 
                    283: .SH FILES
                    284: 
                    285: .TP
                    286: \fB~/.iftoprc\fP
                    287: Configuration file for iftop.
                    288: 
                    289: .SH SEE ALSO
                    290: .BR tcpdump (8),
                    291: .BR pcap (3),
                    292: .BR driftnet (1).
                    293: 
                    294: .SH AUTHOR
                    295: Paul Warren <pdw@ex-parrot.com>
                    296: 
                    297: .SH VERSION
                    298: $Id: iftop.8,v 1.25 2005/12/25 11:50:21 pdw Exp $
                    299: 
                    300: .SH COPYING
                    301: This program is free software; you can redistribute it and/or modify
                    302: it under the terms of the GNU General Public License as published by
                    303: the Free Software Foundation; either version 2 of the License, or
                    304: (at your option) any later version.
                    305: 
                    306: This program is distributed in the hope that it will be useful,
                    307: but WITHOUT ANY WARRANTY; without even the implied warranty of
                    308: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
                    309: GNU General Public License for more details.
                    310: 
                    311: You should have received a copy of the GNU General Public License
                    312: along with this program; if not, write to the Free Software
                    313: Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
                    314: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>