PI-Ping Data Measurement Program



PI-Ping Data Measurement Program

Version 1.4.0

Rev. a.

How to Contact Us

|Phone |(510) 297-5800 (main number) |

| |(510) 297-5828 (technical support) |

|Fax |(510) 357-8136 |

|Internet |techsupport@ |

|World Wide Web | |

|Bulletin Board |(510) 895-9423 |

| |Telebit WorldBlazer modem (Hayes, MNP, or PEP compatible) |

| |8 data bits, 1 stop bit, no parity, up to 14400 bps |

| |download protocols: Xmodem, Ymodem, Zmodem, Kermit |

|Mail |OSI Software, Inc. | |

| |P.O. Box 727 | |

| |San Leandro, CA 94577-0427 | |

| |USA | |

| | | |

| |OSI Software GmbH |OSI Software, Ltd |

| |Hauptstra(e 30 |P. O. Box 8256 |

| |D-63674 Altenstadt 1 |Level One, 6-8 Nugent Street |

| |Deutschland |Auckland 3, New Zealand |

Unpublished -- rights reserved under the copyright laws of the United States.

RESTRICTED RIGHTS LEGEND

Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii)

of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013

Trademark statement—PI is a registered trademark of OSI Software, Inc. Microsoft Windows, Microsoft Windows for Workgroups, and Microsoft NT are registered trademarks of Microsoft Corporation. Solaris is a registered trademark of Sun Microsystems. HP-UX is a registered trademark of Hewlett Packard Corp.. IBM AIX RS/6000 is a registered trademark of the IBM Corporation. DUX, DEC VAX and DEC Alpha are registered trademarks of the Digital Equipment Corporation.

piping.doc

(2000 OSI Software, Inc. All rights reserved

777 Davis Street, Suite 250, San Leandro, CA 94577

Table of Contents

Introduction 1

Terminology 2

Point Definition 3

Building Tags 3

Digital States 4

Software Configuration 5

PI 2.x Home Node 5

Point Source 5

Digital States 5

PI 3.x Home Node 5

Digital States 5

I/O Rate Counter 6

Startup Command File 6

PI-Interface Configuration Utility on NT 6

PI-ICU PIPing Control 7

PIPing.bat 8

Example 9

Program Installation 10

Installation checklist 10

Interactive startup 10

Interactive shutdown 11

Windows NT Service options 11

Principles of Operation 13

ICMP protocol and packet building 13

Bandwidth and Network Traffic Issues 13

Resolution Limits 13

Introduction

The purpose of OSI Software’s PI-Ping Data Measurement Program is to monitor the robustness of a client-server network connection. In particular, PI-Ping measures the response time of an ICMP echo message that it sends to a remote machine. This program can aid the user in diagnosing network connection problems between machines residing in a TCP/IP network.

PI-Ping comes in two versions: a regular (full) version and a limited version known as PI-Ping Basic. The latter has the following limitations:

• it gets data for up to 32 PI tags/points

• only one copy of the program may be running at a time

• it runs only on a machine that is also running the PI Universal Data Server/Data Archive version 3.x

• it sends data only to this PI Universal Data Server/Data Archive machine

In addition, the filename of PI-Ping Basic is piping_basic.exe (versus piping.exe for the full version).

PI-Ping runs on a Microsoft Windows NT (version 4.0 or higher) computer. In regards to the full version of PI-Ping, this machine may or may not have the PI Data Archive running simultaneously.

The following table summarizes the features of PI-Ping:

|Feature |Support |

|Platform |Windows NT – Intel |

|PI point types |PI 3.x: Float32, Float16, Int16, Int32 |

| |PI 2.x: Real, Integer |

|Sub-second timestamps |No |

|Sub-second scan classes |No |

|Automatically incorporates PI point attribute changes |Yes |

|Exception reporting |Done by the program |

|Outputs from PI |No |

|History recovery |No |

|Failover |No |

|Inputs to PI: Scan-based / unsolicited / event tags |Scan-based / event tags |

|Uniint-based |Yes |

|Maximum point count |Unlimited (full version), 32 (limited) |

|Requires PI-SDK |No |

|Vendor software required on PI-API / PINet node |No |

|Vendor software required on device containing data |TCP/IP |

|Vendor hardware required |No |

|Additional PI software included with the program |No |

|Source of timestamps |Machine running PI-Ping |

Terminology

Although it shares many common features with data collection interface applications, PI-Ping technically is not an interface. Interface programs collect data from devices (such as a Distributed Control System) that already have the particular values that subsequently will be stored into the PI Data Archive. In contrast, the PI-Ping Data Measurement Program measures the particular values that will be stored.

This document avoids the use of the term “interface” to describe PI-Ping. However, please be aware that this program may often be referred to as an “interface”.

In addition, be aware that PI-Ping needs to function within the confines of the PI Data Archive/PI Interface model. For example, commands and features related to OSI Software’s Uniint (Universal Interface) template apply to PI-Ping. Also, the message log file (i.e., pipc.log) will reference PI-Ping as an “interface”.

Point Definition

Building Tags

After you have successfully built tags for PI-Ping and the program itself is running, PI-Ping tags will contain values that represent the ping response times to remote machines. These machines are specified in the Instrument Tag attribute.

The tag database for PI may be modified using PI-PointBuilder, PI-SMT, or PIConfig. For tags to be used with PI-Ping, the following tag attributes are important:

• Point Class Name (PI Data Archive 3.x only): Classic

• Point Type (PI 3.x): Float32, Float16, Int32, Int16

• Point Type (PI 2.x): Real, Integer

• Point source: A single ASCII character; for example, J

• Instrument Tag: remote hostname or IP address of machine to be pinged

• Location1: Interface ID (if multiple copies are running)

• Location2: 0

• Location3: 0

• Location4: Measurement frequency identifier

• Location5: 0

Example (PI 3.x)

If a tag’s attributes contain the following, PI-Ping will write to the tag the value of the ping response time to the machine named router1..

Point Type: Float32

Point source: J

Instrument Tag: router1.

Location1: 1

Location2: 0

Location3: 0

Location4: 1

Location5: 0

Example (PI 2.x)

If a tag’s attributes contain the following, PI-Ping will write to the tag the value of the ping response time to the machine whose IP address is 192.168.55.78.

Point Type: Real

Point source: J

Instrument Tag: 192.168.55.78

Location1: 1

Location2: 0

Location3: 0

Location4: 1

Location5: 0

The PI-Ping program has a lower resolution limit of 10 milliseconds and reports values to an accuracy of ±1 millisecond. Thus, the Exception and Compression deviation limits should be set appropriately. The default timeout span is 30 seconds. Therefore, in theory, the span of the point value could be from 10 - 30,000 milliseconds. In practice, a ping rarely takes more than a second.

Every two minutes, PI-Ping checks for updates to the PI point database and incorporates these changes into its point list. However, the program can only process 25 point changes every 30 seconds. If more than 25 points are added, edited, or deleted at a time, PI-Ping will process the first 25 points, wait 30 seconds, process the next 25 points, and so on. Once the program has processed all points, it will resume checking for updates every two minutes.

Digital States

For PI 3.x, the PI-Ping program requires that the System digital state set contain the digital state Intf Shut in slot 311. If this digital state does not yet exist, you should run the PI-PointBuilder program to edit the System digital state set. You may also use PIConfig to add Intf Shut in slot 311 to the System digital state set.

For PI 2.x, the user should run the Digtl Stat display in order to add Intf Shut to slot 311 of the Digital State table.

Software Configuration

The PI-Ping program must run on a machine using the Windows NT operating system.

PI 2.x Home Node

The following definitions are needed on a PI 2.x home node.

Point Source

The point source may be any single character not currently used by another PI process or data collection interface program. It must be defined prior to point configuration. All tags for this PI-Ping program must have the same point source.

Define the point source character by running the Point Src display on the PI menu, selecting a blank field in the list, and entering the following definition:

Point source Character (char)

Point Source Description PI-Ping

The location parameters should be defined as follows:

| |Location 1 |Location 2 |Location 3 |Location 4 |Location 5 |

|Minimum |1 |0 |0 |1 |0 |

|Maximum |99 |0 |0 |1000 |0 |

Digital States

The user should run the Digtl Stat display in order to add the digital state

Intf Shut

to slot 311 of the Digital State table.

PI 3.x Home Node

The following definition is needed on a PI 3.x home node.

Digital States

The PI-Ping program requires that the System digital state set contain the digital state Intf Shut in slot 311. If this digital state does not yet exist, you should run the PI-PointBuilder program to edit the System digital state set. You may also use PIConfig to add Intf Shut in slot 311 to the System digital state set.

I/O Rate Counter

The total rate (in events per minute) that PI-Ping is sending data to the snapshot can be measured. This is done through the I/O Rate counter. To set up the counter, the iorates.dat file must be created by hand. The file should be placed in the dat directory. The dat directory is located as a subdirectory in the directory designated by the PIHOME entry in the \WINNT\pipc.ini file. The default entry in the PIHOME entry is the C:\PIPC directory, meaning that the iorates.dat file will normally be in C:\PIPC\dat\iorates.dat.

Example entries for the iorates.dat file are as follows:

Tagname1,10

Tagname2,11

Tagname1 and Tagname2 can be any legal tag name. The number after the tag name can be between 2 - 34 and 51 - 200, inclusive. For example, if the /ec=11 option is used in the PI-Ping’s startup command line (described later) for the above iorates.dat file, then the rate (in events per minute) at which data is sent to the snapshot is stored in Tagname2.

Once the iorates.dat file is created or modified, the PI-Ping program should be stopped and restarted. Although PI-Ping will allow multiple instances of the /ec flag to be specified on the command line, the rate will only be nonzero for the first rate tag that is referenced.

Startup Command File

PI-Interface Configuration Utility on NT

The PI-Interface Configuration & Management Utility is an application that aids in PI System management by consolidating the setup and configuration options required for new and existing PI Interfaces.

Any new or existing PI Interface can be configured and maintained using PI-ICU.

PI-ICU uses the PI-Module Database on the PI Server as a host for its interface startup information, so PI 3.3 on Windows NT/2000 is required on the host PI server. In order to access the interface startup information stored in the Module Database, PI-SDK 1.1 must be installed on the machine where the Interface/PI-ICU run.

Version Requirements

PI Host Server (PI Home Node)

• PI 3.3.361.43 or greater

PI-ICU/Interface Node

• Windows NT/2000

• PI-SDK 1.1.0.142 or greater (installed by the PI-ICU setup)

Functions

PI-ICU includes a series of concise dialogs and tab sheets that allow the user to:

• Set all Interface parameters

• Start and stop the interface interactively or as a service

• View and configure Interface service dependencies

• Configure and run PI-Buffer Server application

• Configure and run PI-Log Server application

Options

PI-ICU also includes an assortment of tools and options that allow the user to:

• Manage multiple PI Interfaces

• Quickly find and view the PIPC log files

• Execute Interface configuration diagnostics

• Run Bufutil Buffering utility

PI-ICU PIPing Control

The PI-ICU for the PI-Ping interface is a graphical interface utility that assists the user in creating the interface startup file, amongst other things.

[pic]

Yellow indicates that an invalid value has been entered, or that a required value has not been entered

Enable Interface Debugging

This option enables debugging mode, which gives the user a more verbose output of events occurring with respect to the program.

Set Timeout Length

This option allows the user to define the timeout length x in seconds. The default is 30 seconds. PI-Ping accepts values up to 3600 seconds (i.e., 1 hour). It does not accept sub-second or negative values. If the timeout values specified are too high, less than one second, or negative, PI-Ping will not abort, but will force the timeout value to the default of 30 seconds. An error message will inform the user of the action taken when a new value is assigned to the timeout.

Additional Arguments

The Additional Arguments section is provided for any flags that may be required in the future.

PIPing.bat

Within this startup command file, a number of may be used. (For the basic version, the name of the startup file is piping_basic.bat.) The following command line options are relevant to the PI-Ping program:

/db (optional)

This option enables debugging mode, which gives the user a more verbose output of events occurring with respect to the program.

/ec=x (optional)

The /ec option defines an event counter number x. It must be between 2 and 34, or 51 and 500. This event counter number is used to determine the IORate tag as indicated in the ioratees.dat file.

/f=hh:mm:ss,hh:mm:ss (required)

This option defines the data measurement frequency of the program. It follows standard Uniint usage. That is, the first time string is the interval at which the program measures data. The second string is optional, and specifies the offset from midnight.

PI-Ping checks that the data measurement frequency is not too frequent. The lowest specification allowed is 1 minute (/f=00:01:00). Multiple frequencies may be defined. However, if any of them falls under the 60-second limit, PI-Ping terminates with the message: "Measurement frequency is too small; minimum is 60 seconds."

/host=:port# (optional, but recommended)

The hostname is the name of the computer that contains the PI Universal Data Server/Data Archive that the data will be written to. Generally this is the same machine on which PI-Ping is running. The syntax for the hostname can include the port number, e.g. /host=localhost:5450 for PI 3.x home nodes.

/id=X (optional)

The /id option allows the user to specify a subset of points specified by the /ps option (described later). This option allows multiple copies of PI-Ping to be running at the same time. X must be a positive integer. If zero or a negative integer is specified, then PI-Ping ignores this option and accepts all tags specified by the /ps point source.

/ps= (required)

The /ps option specifies the point source character. For example, to use the character J to identify the PI points that will be used by PI-Ping, specify /ps=J.

/q (optional)

This option tells PI-Ping to queue values before sending them to the PI Universal Data Server/Data Archive. The maximum queue size is about 4000 bytes. The queue is flushed between measurement intervals if it does not get full.

“/stopstat=Intf Shut” (required)

The “/stopstat=Intf Shut” parameter indicates that when PI-Ping stops, it writes the digital state Intf Shut to its list of tags.

If the digital state Intf Shut (state number 311) does not currently exist in the PI Universal Data Server/Data Archive machine, the user must add it. Otherwise, PI-Ping will not start.

For PI 3.x, the user should utilize the PI-PointBuilder program to edit the System digital state set. Alternatively, the user may run PIConfig.

For PI 2.x, the user should run the Digtl Stat display in order to add Intf Shut to slot 311 of the Digital State table.

/to=x (optional)

This option allows the user to define the timeout length x in seconds. The default is 30 seconds. PI-Ping accepts values up to 3600 seconds (i.e., 1 hour). It does not accept sub-second or negative values. If the timeout values specified are too high, less than one second, or negative, PI-Ping will not abort, but will force the timeout value to the default of 30 seconds. An error message will inform the user of the action taken when a new value is assigned to the timeout.

Example

The contents of a typical piping.bat file look like this:

piping /ps=J /ec=11 /host=localhost:5450 /f=00:05:00 "/stopstat=Intf Shut"

(For the basic version, the filename is piping_basic.bat, whose contents may be

piping_basic /ps=J /ec=11 /host=localhost:5450 /f=00:05:00 "/stopstat=Intf Shut"

is applicable.)

This command line

• sets the point source character to J,

• establishes as the IORate tag the tag in the iorates.dat file that has the event counter number equal to 11,

• names localhost as the PI Data Archive machine receiving the data,

• sets a measurement frequency of 5 minutes with no offset

• writes “Intf Shut” to tags upon program termination

Program Installation

Beyond standard TCP/IP software and network interface card hardware, PI-Ping does not require additional software or hardware.

In general, PI-Ping Basic is installed as part of PI Universal Data Server/PI Data Archive version 3.3 and higher. The full version PI-Ping may be installed by running the PI-Ping setup program. At the time of the publication of this manual, this setup program was not finalized. However, installation will entail running a setup program probably named:

piping.msi (Windows Installer file) or

piping_setup.exe

For PI-Ping Basic:

piping_basic.msi (Windows Installer file) or

piping_basic_setup.exe

Installation results in files being placed in a directory such as:

C:\PIPC\Interfaces\PING

For the basic version:

C:\PIPC\Interfaces\PING_basic

Machines running Windows 2000 already have Windows Installer built-in. If you have a Windows NT machine, you may need to download the Windows Installer redistributable, found via:



Installation checklist

1. Pick a point source character to be used by PI-Ping. On PI 2.x, add this character to the Point Source Table.

2. Make sure that that digital state Intf Shut exists in slot 311 of the System digital state set (PI 3.x) or the Digital State Table (PI 2.x).

3. Create PI-Ping tags. Recall that the Instrument Tag attribute should contain either the name or the IP address of the machine to be pinged.

4. Edit the piping.bat (or piping_basic.bat if applicable) startup command file.

5. Start up PI-Ping interactively (see below). Confirm that the PI-Ping tags contain ping times. Shut down PI-Ping (see below).

6. Install PI-Ping as a Windows NT service (see below). Start PI-Ping as a service.

Interactive startup

To start the program interactively, first go to a Windows NT command prompt and change to the directory containing the piping.exe and piping.bat files. For example, change to the c:\pipc\interfaces\ping directory. Then, run the piping.bat command file:

C:\pipc\interfaces\ping> piping.bat

If you are running the basic version,

C:\pipc\interfaces\ping_basic> piping_basic.bat

Interactive shutdown

To stop the interactive execution of PI-Ping, press Control-C in the command prompt window that has PI-Ping running.

Windows NT Service options

You may use the PI-Interface Configuration Utility (PI-ICU) to configure PI-Ping as a Windows NT service. PI-ICU is also helpful for starting and stopping PI-Ping as a service.

Alternatively, you may use the following commands to manually manage PI-Ping as a Windows NT service. Note that you must have Administrator privileges.

To configure PI-Ping so that it runs automatically when Windows NT restarts,

C:\pipc\interfaces\ping> PIPING –install –auto

For the basic version

C:\pipc\interfaces\ping_basic> PIPING_basic –install –auto

To remove PI-Ping from Windows NT’s list of services:

C:\pipc\interfaces\ping> PIPING –remove

For the basic version,

C:\pipc\interfaces\ping_basic> PIPING_basic –remove

To find out whether PI-Ping is currently running as a service:

C:\pipc\interfaces\ping> PIPING –query

For the basic version,

C:\pipc\interfaces\ping_basic> PIPING_basic –query

To start PI-Ping as a Windows NT service:

C:> net start PIPing

For the basic version,

C:> net start PIPing_basic

To stop PI-Ping when it is currently running as a Windows NT service:

C:> net stop PIPing

For the basic version,

C:> net stop PIPing_basic

Principles of Operation

PI-Ping was developed primarily as a system manager's tool for the monitoring and analysis of a PI client-server network. It is specifically tailored for use on a machine running Windows NT. PI-Ping utilizes the Internet Control Message Protocol (ICMP) to encode packets that are then sent to a remote machine and subsequently analyzed for turnaround time information upon return. No additional hardware is required beyond the local host machine running PI-Ping, a network connection between the machines of interest, and the remote host.

ICMP protocol and packet building

A feature of an ICMP packet is that it is compact and standardized. PI-Ping creates a default ICMP packet whose size is 64 bytes. The first 8 bytes of the packet are reserved for bookkeeping and identification purposes. For example, the checksum total and packet ID are stored here. The second 8 bytes are reserved for the timestamp of the packet creation. The last 48 bytes of the packet are free-filled with arbitrary data to round out the contents.

If PI-Ping receives an ICMP_REDIRECT error as a reply, it simply ignores it and writes the digital state I/O Timeout for the tag.

Bandwidth and Network Traffic Issues

Continuous generation of ICMP echo packets (i.e., pings) at very high frequencies to multiple machines can create bandwidth and network traffic problems. For this reason, PI-Ping will not measure data at a frequency that is higher than 1 minute. This limitation ensures that the network is not overloaded with PI-Ping traffic.

Resolution Limits

The PI-Ping program has a resolution lower limit of 10 milliseconds. This restriction can limit its applicability with respect to very fast networks. Therefore, PI-Ping should be viewed as a tool that records automated attempts that quantify the quality of troublesome client-server connection.

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download