.\" "%W% %G%"
.TH STATNET\ __SNVERSION__ 1
.SH NAME
statnet,statnetd \- views the statistics of Ethernet and PLIP/PPP/SLIP for TCP, IP, 
IPX, Appletalk, etc
.SH SYNOPSIS
.PP
.B statnet [ -agipstuh ] [-k key]
.PP
.B statnetd [ -adgipstuh ] [-k key] [-n name] [-w interface]
.SH DESCRIPTION
.PP
.B statnetd
is the privileged daemon which collects network data.
.PP
.B statnet
views the current usage statistics of your Ethernet and PLIP/PPP/SLIP for
TCP, IP, IPX, Appletalk, and more. It is terminated by typing
"q".
.PP
It shows:
.RS
- kilobytes per second on ethernet, PPP, and other interfaces.
.RE
.RS
- the percentage load of ethernet capacity.
.RE
.RS
- frames per second.
.RE
.RS
- how many frames of each type (like IP, 802.2, and some Appletalk or
TCP frames) were seen.
.RE
.PP
The purpose is to give some idea of the quantity and type of network
activity (flashing lights on the hub are minimally informative).  Other
tools such as tcpdump are needed for detailed analysis.
.PP
Only certain frames/packets were shown in the first versions.
Now the data for many more
packets encountered on your net are shown.  Only certain TCP/UDP ports are
known (under port 1024 by default), and TCP/UDP traffic to unknown port
numbers is not shown, although the presence of the frames are shown in 
protocol counts.
.PP
Note that
.B statnetd
uses IPC shared memory so there can be many clients such as
.B statnet
running.
Other clients, such as an SNMP agent, may also be using the data.
The
.B statnetd
IPC shared memory is enabled for DIPC, so the data from one copy of
.B statnetd
is available to all machines on a DIPC cluster.
.SH OPTIONS
.PP
For
.BR statnetd ,
most options select the type of data to be collected.
For
.BR statnet ,
most options select the type of data to be displayed.
Defaults collect and display most data.
.PP
.TP
.B \-a
Appletalk protocol
.TP
.B \-d
Daemonize (
.B statnetd
only).  Run as a background process.
Probably should be entered as "/usr/local/bin/statnetd -d" in /etc/rc.d/rc.local.
.TP
.B \-g
General statistics
.TP
.B \-i
IP Protocols
.TP
.B \-k key
Use 
.I key
as the shared memory key.
Base 16 recognized with '0x' prefix, base 8 with '0' prefix, otherwise
.I key
is in base 10.
.TP
.B \-n name
Server or network name (
.B statnetd
only).  The label other than uname(2) nodename to label the data with.
Often a computer or network name is used.
.TP
.B \-p
PLIP/PPP/SLIP statistics
.TP
.B \-s
IEEE 802.2 SAP protocol
.TP
.B \-t
TCP/IP protocol
.TP
.B \-u
UDP/IP protocol
.TP
.B \-w interface
Specify an interface to monitor other than the default "eth0" (
.B statnetd
only).
See
.I /proc/net/dev
for a list of interfaces.
.TP
.B \-h
print a short help message
.SH DISPLAY
.PP
The
.B statnet
display client appearance will vary depending upon options and display type.
It can operate under "curses" or "ncurses" libraries (compile time option).
Another popular trick on X-Windows is to open an xterm window which is tall
and as narrow as the "General" display,
so the subwindows appear below each other.
.PP
Totals may vary slightly due to the data being captured as it is being
collected, as more packets may arrive while the totals are being
prepared for display
(fortunately packets arrive slowly compared to the speed of copying the totals).
.PP
The percentage numbers are the percent of the total number of frames
during the display period.
.PP
If the network interface reports errors, a summary is reported near the
bottom of the "General" display.
Error behavior depends upon your interface and device driver.
(Error reporting not working in 3.2)
.RE
.SS SAMPLE TEXT DISPLAY
.PP
.nf

                           STATISTICS OF NETWORKS
GENERAL  Frame:  341/6  sec  ===== 802.2 SAP =====  ==== TCP/IP PORTS ===
         KB/s Frame/s AvLen                         fragment    18   5.3%
all      5.98      56   107   NetBIOS:  216  63.3%       www:    0   0.0%
eth      5.98      56   107      0xB4:   11   3.2%      echo:    0   0.0%
                                 SNAP:    9   2.6%   NetBIOS:    0   0.0%
                                  RPL:    1   0.3%       ftp:    0   0.0%
                                  SNA:    4   1.2%
                              NetWare:    2   0.6%
                             SpanTree:    3   0.9%
802.2 pkt/sec:     41
 Ethernet Load   0.49%
 490 err/Hr( 0%) 490 drop/Hr ===== PROTOCOLS =====  ==== UDP/IP PORTS ===
                                                     NetB Dg:   56  16.4%
==== IP PROTOCOLS ====       IEEE802.3  246  72.1%      snmp:    0   0.0%
                              Ethernet   77  22.6%  fragment     0   0.0%
    UDP:    58  17.0%              ARP   13   3.8%   NetB NS:    0   0.0%
    TCP:    18   5.3%         HP Probe    3   0.9%    domain:    2   0.6%
   ICMP:     1   0.3%          DEC LAT    2   0.6%       ntp:    0   0.0%
                                Novell    0   0.0%   loc-srv:    0   0.0%
                                                       timed:    0   0.0%
                                                      syslog:    0   0.0%
                             Other:       0   0.0%
.fi
.RE
.SH FILES
.PP
The files 
.IR /etc/services , 
.IR /etc/opt/statnet/services ,
and 
.I services
in the current directory are read in that order for port number definitions.
Later definitions override previous ones.  A few names are replaced with
shorter or more recognizable names (ie,
.I nameserver
is replaced with
.IR DNS ).
.PP
File format:
.nf
      telnet           23/tcp    # Telnet
.fi
The above line specifies that TCP port 23 is used for the
.B telnet
service.
.PP
The file
.I /etc/protocols
is also read with the
.B getprotoent(3)
routine for IP protocol definitions.
.SH PROBLEMS
.PP
By default the eth0 ethernet device is monitored.
Monitoring SLIP or PPP devices may not work.
Data from devices other than the one specified may be shown, depending
upon operating system characteristics of a promiscuous socket.
.PP
Many networking numbers are compiled within the program and cannot be
updated without altering a source file.
But this is still more informative than a flashing light on the hub.
.SH AUTHOR
.PP
.I Jeroen Baekelandt
is the original author.
.RS
.nf
jeroenb@igwe.vub.ac.be
we47143@vub.ac.be
.fi
.RE
.PP
.I Scot E. Wilcoxon
is present maintainer of Statnet.
Made numerous alterations to the original.
Generalized to tally arbitrary packet types rather than specific ones,
changed to use daemon and shared memory instead of coroutines.
Modified for glibc2(libc6) under 2.1.1* kernels.
.RS
.nf
sewilco@fieldday.mn.org
.fi
.RE
.PP
.I Philip Hands
maintains Debian netdiag packaging, and added glibc2(libc6) alterations.
.RS
.nf
phil@hands.com
.fi
.RE
.PP
.I Christoph Lameter
wrote the first version of this man page, and did Debian netdiag packaging.
.RS
.nf
chris@waterf.org
.fi
.RE
.SH COPYRIGHT GPL
.I Copyright __UPDATED__ Scot E. Wilcoxon  All Rights Reserved
