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>