            
IPRATES.CMD                                           1 July 1996

What It Is:
    Graphical display of the TCP/IP connection showing:
        o Momentary and overall data receive rate
        o Percent utilization (active time/total time)
        o Momentary and overall data send rate

Requires: 
    TCP/IP and VREXX (HOBBES - os2/ibm/ews/vrexx2.zip)

Parameters:
    Single, numeric, value representing the amount of time 
    (seconds) to wait between TCP/IP poll operations. Missing or 
    invalid(character) values result in default wait of 10 
    seconds. 

How To Install:
    Copy IPRATES.CMD to the CMDs directory listed in your PATH. 
    (You do have a CMDs directory, don't you?)  Create a program 
    object which refers to IPRATES.CMD. 

    I've set the parameters to: [Wait] 1
    which will prompt for a wait time. If I click on OKAY without 
    entering a value then IPRATES will wait >1 second between poll 
    operations. 

    Other program object settings you may want to set are:
        [Session]   (check) Start minimized
                    (uncheck) Close window on exit
        [Window]    (radio) Display existing window - !required!
        [General]   Assign any personally pleasing title
                    Create/assign/find/modify any convenient icon

Warnings, Comments, Caveats:
    [Window]    (radio) Display existing window - !required!
    This is important. VREXX does not operate well when there are 
    more than one(1) process using it at the same time.  Not sure 
    why. 

    The display window is sized and positioned to occupy the 
    upper-left 1/16th corner of the desktop window.  It may be 
    resized and moved while running but, the new size and position 
    are not remembered between invocations.  Again, VREXX does not 
    return data to the REXX program about the window's position. 

    Several operational parameters (including window position and 
    size) can be permanently changed by editing IPRATES.CMD. 

        BackGround = 'BLACK'    /* window background            */

        win_pos.top    = 100    /* position of       100+---+   */
        win_pos.bottom = 75     /* window as            |   |   */
        win_pos.left   = 0      /* percent of          0+---+   */
        win_pos.right  = 25     /* maximum extents      0  100  */

        np = 50                 /* number of points to draw     */

        recv.0 = "GREEN"        /* colors with which to draw    */
        rovr.0 = "CYAN"         /* the lines of the graph       */    
        util.0 = "YELLOW"       /* VREXX supports color choices */
        send.0 = "RED"          /*     BLACK WHITE RED GREEN    */
        sovr.0 = "PINK"         /*     BLUE CYAN YELLOW PINK    */

    IPRATES must be started AFTER the TCP/IP connection has been 
    established.  IPRATES may be terminated with Ctrl-Break in the 
    (minimized) command window.  When IPRATES is stopped or the 
    TCP/IP connection is broken the command window displays final 
    statistics then waits for a keyboard entry.  The graph window 
    will not be dismissed until the keyboard entry is received. 

Modifications:
    28 June 1996 - initial release - worked okay but needed 
        something 

    29 June 1996 - added the something missing. prior version 
        would redraw the graph all over from the beginning on a 
        redraw; (REXX meta-file?)  This version clears and redraws 
        the display window for each poll interval.  Strangely 
        enough, this was much more pleasing. 

    1 July 1996 - Final iteration - "production version" - 29 June 
        did not rescale the "overall" graph when a new maximum was 
        set.  Also, added axes to the graphs.  Receive rate marks 
        the maximum with a vertical line; send rate marks the 
        minimum (0 bytes/sec) with a vertical line.  Together, 
        they mark the utilization graph.  Removed some commented 
        instructions. 
    
Disclaimer:
    I had a good time writing IPRATES.CMD.  If you have a good 
    time using it, great.  I'll accept no responsibility for its 
    use nor its interaction with your system.  If you use it then 
    it's yours. 
    
Contacting The Author:
    While I try to disown responsibility above, I am interested in 
    any comments, suggestions, or (even) problems users may have. 
    I may be most easily contacted at the e-mail address below. 

                     joropo@notes.cc.bellcore.com

    I hope you enjoy this small application.

    John Ross Porter, New Jersey, USA

