Library /sys$common/syshlp/examples/TCPIP/TCPIP$TCP_MON.HLB  —  TCPMON
 Invokes the TCP Monitoring utility for capturing TCP related statistics.
 You may show TCP statistics (similar to the output of 'netstat -p tcp') and
 INET statistics, which displays kernel-level performance data.

 The /SHOW paramter determines which statistics are displayed.

 TCPMON is capable of producing CSV files which are compatible with T4,
 (Tabular Timeline Tracking Tool).

 Monitoring display may be affected by the following control keys:

   <CTRL-C> - exit
   <CTRL-Z> - exit
   <CTRL-Y> - exit
   <CTRL-T> - display a row of data
   <CTRL-W> - flush fileio

 Format:

   TCPMON

1  –  Command Qualifiers

1.1    /BEGIN

  /BEGIN=<time>

 Used to delay the start of monitoring.  The time is entered as a VMS
 absolute time.  E.g. 22:13 would start the monitoring at 10:13pm
 today.

 If it is not specified the monitoring begins immediately.

1.2    /CSV

  /CSV=<filespec>
  /NOCSV (D)

 If specified, writes data to the CSV filespec.  Data is written
 in a format which is compatible with the T4 utility or importing into
 a spreadsheet for further analysis..

1.3    /DISPLAY

 If specified, writes data to SYS$OUTPUT:.  If neither /CSV or /DISPLAY
 qualifiers are present on the command line, then /DISPLAY is the
 default.  If the /CSV qualifier is given, then use the /DISPLAY
 qualifier to simultaneously write data to the CSV file and display the
 data to SYS$OUTPUT.

1.4    /END

  /END=<time>

 Used to end the monitoring.  The time is entered as a VMS
 absolute time.  E.g. 22:13 would stop the monitoring at 10:13pm
 today.

1.5    /SAMPLE

  /SAMPLE=<seconds>
  /SAMPLE=10 (D)

 Specifies the sampling interval.  Snapshots of the statistics are
 captured at the end of the sample interval.

1.6    /SHOW

  /SHOW[=(option[,...])]
  /SHOW=TCP (D)

 The following options can be selected:

     ALL           Print statistics for each of the registered subsytems.

     [NO]INET      Print kernel level statistics.  The counters are:

                     Stats  - if set, then profiling is enabled

                     PPE    - if set, then the packet processing engine
                              is running.

                     %Idle  - when PPE is running, this captures the
                              percentage CPU idle time

                     %Busy  - when PPE is running, this captures the
                              percentage CPU busy time

                     Toggle - number of times PPE has toggled between
                              running and hibernating.  Should be
                              fairly stable.

                     Move   - Number of time PPE has moved between CPUs.

                     Conf   - PPE reconfigurations across CPUs.

                     #Krp   - TCP/IP kernel work queue contains kernel
                              request packets (KRPs).  This statistice
                              represents the #Krps processed.

                     AvgQKrp - Average number of system cycles it takes
                               to queue each Krp on the KRP Queue.

                     AvDqKrp - Average number of system cycles it takes
                               to dequeue a KRP from the KRP Queue.

                     KrpQMax - Maximum length of the KRP queue.

                     KrpFrks - Not applicable to PPE.  For the scalable
                               kernel this is the number of times a KRP
                               must be queued from one CPU to the TCP/IP
                               CPU via the system FORK_TO_CPU function.
                               This is an expensive operation.

     [NO]TCP       Print TCP statistics, similar to those available via
                   'netstat -p tcp'.  The following statistcs are
                   displayed:

                   SPEED
                   -----
                   These include packet-rate and bit-rate for both
                   receive and transmit data.

                     TxPk/s - transmit data packet rate

                     TxMb/s - data rate in Mbits per second

                     RxPk/s - recieve packet rate

                     RxMb/s - data rate in Mbits per second

                   PACKET_SIZE
                   -----------
                   Average packet size over the sample period.
                   This is calcualted as data_packets/data_bytes
                   for both transmit and receive.  The data is
                   derived from the RAW data:

                     TxPkSz - average number of bytes per packet sent

                     RxPkSz - average number of bytes per packet
                              received

                   CONNECTIONS
                   -----------
                   Connection statistics for both incoming and outgoing
                   connections.  This displays the number of incoming and
                   outgoing connections.  The data captured is:

                     In    - number of connections accepted

                     Out   - number of connections established

                   ERRORS
                   ------
                   Not all statistics gathered here are necessarily
                   errors in the traditional sense.  Many are protocol
                   related events which are bundled into this category.
                   The counters captured are:

                     RxDup   - duplicate packets + packets with some
                               duplicated data.

                     RetxPk  - data packets retransmitted.

                     RetxTo  - retransmit timeouts

                     RetxDrp - connections dropped in retransmit
                               timeout

                     KpAlv   - keepalive timeouts

                     KpDrp   - connections dropped in keepalive

2  –  Examples

   $ set command tcpip$examples:tcpip$tcp_mon.cld
   $ tcpmon/samp=60/show=(all)

   This will monitor all subsystems with a sample interval of 60 seconds.

   $ tcpmon/show=(inet)

   This will monitor the INET subsystems with the default sample interval.

   $ tcpmon/csv=data_file.csv/output=data_file.txt/display

   This will monitor the default subsystems and write the data in CSV format
   to "data_file.csv" and the screen output will be written to
   "data_file.txt".  Normally, no output will be displayed on the screen when
   it is being written to a file.  However, since the "/DISPLAY" switch has
   been used, data will also be displayed on the terminal.
Close Help