Copyright: Copyright © 1998 by Pete Ness


Alerts

Version 2.0 introduces the concept of "Alerts".  This adds some cool possibilities to Ping Plotter.

Basically, an alert watches the traces and can do something if some condition is met.

When you set up an alert, you specify the conditions AND the action that you want to happen when the alert "fires".  You then attach an alert to one or more IP Addresses.

An example of an alert is this:

If my web site (www.nessoft.com) does not respond for 5 minutes (10 traces in a row separated by 30 seconds), then send an e-mail to me with trace data.

From this trace data, I can tell exactly which hop is failing - so I can immediately contact the right person to try and correct the problem.


Almost Simultaniously
So that your network bandwidth doesn't get saturated, Ping Plotter waits a tiny amount of time (configurable - but defaults to about 1/50th of a second) between sending out each hop.


Command Line Arguments

You can have Ping Plotter do a few things automatically on startup by specifying command line parameters.  You can put this parameters in a shortcut - or enter them from a DOS command line window.

PingPlotter [File to Load] [/TRACE:[Address To Trace]] [/SAVE]

Loading a file at startup

If you enter a parameter without a / on it, PingPlotter will try and find a file by this name - and load it if it's found.

Example:

pingplotter www.nessoft.com.pps

/TRACE

This option will start tracing automatically when PingPlotter loads.  If use the option to load a save file on startup, then tracing will begin to this address.  Otherwise, Add a colon (:) and the IP Address or server name you want to trace to.

Example:

pingplotter www.nessoft.com.pps /TRACE

or

pingplotter /TRACE:www.nessoft.com

/SAVE

This option can only be used when you specify a file name on the command line.  If you use /SAVE, then any new traces (to the original address specified in the save file only) will be saved to that file on shutdown automatically (without asking you if you want to save).

Example:

pingplotter www.nessoft.com.pps /TRACE /SAVE

/SINGLEINSTANCE

If Ping Plotter is run with this parameter, then it checks to see if another copy of the program is running.  If it is running, then it exits.

Also, if you passed in an address to trace (via the /TRACE:address option above), then this address will be passed to the currently running version.  The currently running one will start tracing to that address.

Example:

pingplotter /SINGLEINSTANCE /TRACE:www.nessoft.com

/?

Show this help screen.

Example:

PingPlotter ?


Features

Ping Plotter is an enhanced trace route program.  It does all the things a normal trace route program does - just faster (and better).  It also adds some great features (graphing, enhanced statistics, long term monitoring, alerts, etc.).

Ping Plotter was originally written to help troubleshoot internet connections.  (Of course most trace route utilities were written to do that - most of us don't mess with this kind of thing when things are working well!)  But Ping Plotter is no regular trace route program.

Version 2 adds quite a bit to the freeware version 1.  Version 1 is still freeware (and available on the Ping Plotter web page), but won't be enhanced in the future.  See New in Version 2.0 if you're interested in just the NEW features.

Version 2 features:

Easy to use!  Ping Plotter's basic mode means you just type in the address you want information about and hit "Trace".  It starts tracing and shows you a graph.  Someone with no network experience can see where their packets are being dropped and contact their ISP with this information.

Fun to use!  (OK, maybe this is stretching it a little, but ...).  When I first developed Ping Plotter, I spent hours just typing in addresses and checking out the routes packets take, performance bottlenecks, etc.

Graphs the response time through the route of the packet from source to destination.  This really highlights problem hops and lets you concentrate on trouble areas.

Uses multiple threads to increase performance.  This means that Ping Plotter doesn't wait for hop 1 to respond before sending out a request to hop 2.  A complete 1 sample trace can be done in about 5-10% of the time it takes to do a trace with Windows "TRACERT" command (usually less than 1 second for Ping Plotter vs 15-45 seconds for TraceRT).

Uses multiple threads to increase accuracy.  Instead of sending out an echo request to the host separated by 3-20 seconds, each request is sent out (almost) simultaneously.  This means the times you're comparing are all sent out under the same conditions.

High performance, low overhead.  There is no trace route package available that returns results faster.  Ping Plotter is FAST and it uses very little CPU to do its job.  That means you can run it continuously without interfering with your other tasks.

Built for long-term monitoring.  Ping Plotter works GREAT for overnight or even multiple-day monitoring projects.   Set your interval and let it run.  Check back later and review the history to find out trends and problem times.  Does the speed degrade at 9PM and improve at 1AM?  Ping Plotter will make that VERY clear and give you all the data to present to your ISP.

Graphs any host over time - lets you scroll back and forth over time, and zoom in on any specific time to find out where problems occur.  You can even graph multiple hops at the same time.

Will save your accumulated data for a host to a file, and then allow you to reload and continue.  Some users have reported running Ping Plotter over several weeks, and accumulating over 50,000 sample sets!

Exports any portion of your collected data to a text file for analysis by other software packages (e.g.  Microsoft Excel).  If Ping Plotter doesn't graph it the way you want it, use your favorite graphing software and do it yourself!

Creates nice bitmaps (via clipboard copy) that can be sent to people that can help to improve your response times.  Face it, text dumps of a bunch of numbers aren't always the most compelling evidence.  Put a picture on that data that shows where the problem lies and let them argue with you then!

Creates text output that looks just like the Windows TRACERT command.  If you prefer to examine number and text data - or your ISP insists on this type of output - you're set!  You can still take advantage of the performance improvements offered by Ping Plotter.

Still not convinced?  There's a lot more in there - just download it and check it out yourself!


Frequently Asked Questions

Q.	What does the 'Err' column mean?  Is that a code?

A.	The 'Err' column indicates the number of "lost packets" that you've experienced on that server.  When you have a good server connection, you shouldn't have any numbers in this column.

Q.	Why does hop 1 (or any number of initial hops) lose packets 100% of the time?

A.	I don't have a great answer for this one - but it's normal.  Often your local router just doesn't respond (or respond fast enough) to ICMP requests.  If you have this happening, you can ignore the initial hops that are timing out (View/Ignore first hop(s)).

Q.	Why does one particular hop in the route often show a really bad time - but the hop right after it performs well?

A.	It appears that some routers just don't prioritize timed out ICMP requests very high (ICMP requests where the TTL equals 0 after reaching them).  If the hop right after consistently performs well, just don't factor this hop into your troubleshooting equation (i.e. ignore it).

Q.	How much difference should I see between hops on a good connection?  If hop 5 is returning in 200 ms, and hop 6 is consistently returning in 300 ms, is that good or bad?

A.	A good router should add no more than 20ms to your trace.  It's important to realize that sometimes a hop will report high numbers - and the hop right after it will report low numbers.  In this case, that hop is probably not the problem (see the prior question for more details).  If the server at hop 6 is consistently adding 100ms - and hop 7 is showing this as well (i.e. hop 7 is 300+ as well), then it's likely that there's a problem at hop 6 or between hop 5 and hop 6.  I hope to add some additional information on this topic soon (with examples) - Check the Ping Plotter web page.  If you have some particularity good examples that you wouldn't mind me posting, send me some mail.

Q.	When I stop a trace for some reason, I'd like Ping Plotter to automatically reset the graph instead of just "Resuming".

A.	If you'd rather completely reset a running (or paused) trace, just right click on the "Stop" (or Resume - if you've already stopped it) and then select the "Reset and Restart" option.  This will clear the current graph completely before it restarts the trace.


History

11/15/98 - Version 2.03 released - bug fix

This version is *mostly* a bug fix version. It includes the following changes:

Bugs Fixes

Fixed case sensitivity on registration code bug.

Fixed occasional access violation when tracing

Fixed occasional lockup under Win95

Fixed so DNS name doesn't ever return your own computer's name when a hop times out.

Fixed so DNS lookups always happens - even if the first hop times out.

Fixed the alert system so it works correctly now. Alert system is much more reliable.

Fixed the alert system so more than one alert can be tied to any IP address

Fixed problem where saving a sample set would sometimes not work (when there was no DNS name).

Minor changes to registration code system.

New Features

Export to text file now allows exporting with the samples in rows rather than columns (to overcome Excel's 255 column limit).

8/9/98 - Version 2.02.2 released - bug fix

Fixed a bug that caused "Runtime error 217 at 0000xxxx" when running Ping Plotter on some machines - depending on the regional settings of the date format.

8/5/98 - Ping Plotter Version 2.02 released (minor features and bug fixes)

New Features

Enhanced /SINGLEINSTANCE support - works better with Ping Tool Quake browsing utility.

Added a Packet Loss % column - made the ERR column optional.

Added hints on column headers.

Registration code enhancements (added multi-user licenses).

Alert "BEEP" additions for machines without a sound card installed.

Right-clicking the "Stop" or "Resume" button now brings up an option to reset the trace before restarting.

Bugs Fixes

When run on a multi-processor, Ping Plotter would sometimes not shut down correctly.  This has been fixed.

Fix where IP address would sometimes show up as 0.0.0.0.

Fixed odd "Floating Point Error" that would occasionally pop up.

Passing an IP address on the command line no longer adds that address to history (addresses still do, though)

Fixed the menu option for "Add Monitor/Modify Monitor" so it displays correctly.

Improved display when using large fonts.

V 2.01 - Released 7/8/98

Fixed bug in registration code checking that would cause the reminder dialog to pop up on the first try (oops).

Timeline graphs are automatically enabled on the destination host now.

Fixed wierd timeline graph sizing problem where if only one graph was shown, then the graph would be drawn 4 pixels too tall and cut off the bottom of the date/time display.

Whois lookups were corrected for change in Internic format.

V 2.00 - Released 7/3/98

This is a major revision - see the web site for differences between version 1 and version 2.


Initial Setup

Ping Plotter is pretty simple, but there are some initial options you may need to set to get best results.

1)  If you have a 256 color (or less) display, you may want to turn of the graph colors (see Options).

2)  Depending on the speed of your internet connection, you may want to change some of the threshold values (see Options).

3)  (Future versions of this help will probably have more here).


Introduction

Ping Plotter was inspired by the need to find out why my internet connection was so erratic.  Sometimes it was really fast, other times terribly slow.  I wanted a way to find out (easily) where the problem was and then be able to use the information I gathered to send to the person that could fix the problem.

Basically, Ping Plotter is a trace route program - but adds some graphs, plus some serious performance upgrades.  It uses the multi-threading capabilities of Windows to check performance on all hops in the route at the same time.  This has several advantages:  1)  It's a lot faster.  2)  All hops are tested at the same time - rather than many seconds apart - so the comparison is better.

Another advantage of Ping Plotter is that you can set it to a continuous mode - where it will test the same route over and over again - forever if you want.  That way you can watch the performance over a period of time without having to re-run the program over and over again.

The graph is what's really nice, though.  Being able to visually see where the problem lies is great.

Notice the jump at hop 4 there?  That indicates the problem lies between hop 3 and 4.  And it's pretty easy to tell!


Introduction to trace route

At it's heart, Ping Plotter is a trace route utility.  It's souped up and on steroids, but the basic concept is the same as any other trace route utility.

Trace route is a modified "ping" packet (echo request).  When you "ping" a site, you send over an echo request and that site responds back that it received it.  The amount of time it takes for the packet to get to that site and then return to you is the "ping time".  The lower this is, the better your connection to the site.  This time is usually specified in milliseconds (1/1000 of a second).

One of the parameters on a ping packet is something called "Time to live" (TTL).  This is set to some suitably high number (something like 35).  As this packet moves through the route to the destination, this number is decremented by 1.  If any router sees that the TTL is 0, then it sends the packet back to the computer that sent it.

Trace route plays with this TTL number on outgoing packets.  It first sends out a packet with a TTL of 1.  The first router that sees this decrements it to 0 and then sends it back.  It also sends back its own IP address with the packet.  So your computer receives back a packet with an IP address in it - and you have the time it took to traverse this route.

Ok, so next trace route sends out a packet with a 2 as the TTL.  So it can find out what the next computer in the route is.  This is repeated until the final destination is reached.  At that point, you know the entire path the packet has traversed to reach the destination computer - and the time it takes to get to any of the router in between.  Pretty cool.  Each server in this chain is called a "hop"

So the last hop in a trace route is actually the round-trip time to the destination server.  This is an important concept to understand.  You don't add up all the times between you and the destination host - as that time has already been added.  The time to the last hop in the chain is exactly the same is if you'd used a ping utility to that host.  So a trace route utility is actually two utilities - ping AND trace route.

Ping Plotter speeds up this process by sending out packets to the first 35 servers in the route all at the same time.  This makes a HUGE difference in overall speed.  It also means that the network conditions for each hop is very similar - so the number are better compared.


New in Version 2.0

Version 2.0 of Ping Plotter introduces a bunch of great new features.  Among them are:

Will graph single hops (from one to all) from your trace over time - and display them on a graph. This graph can be resized, rescaled, zoomed, dragged and manipulated to give you exactly the information you need to find the problem.

New "Alert" system. This will allow you to set parameters where you want to be notified of the condition. If the conditions fire an alert, you can log that data to a text file, play a wave file, or send yourself e-mail with the pertinent information included.

You can save and load sample sets - and then resume (right-click the trace button when you have existing data and you're not tracing) the trace. This way you can have multiple sessions of data in the same graph.

Exporting to comma delimited text file for use with external programs (Excel) is supported.

You can now "Fix" the graph scale to a specific size so that bad hops don't cause all valid points to be resized into a tiny graph.

The icon can be moved from the taskbar to the tool tray for long-term monitoring projects.

You can ignore 1-5 of the first hops in your trace (as opposed to the 1 that version 1.00.2 supported).

Round Trip time is now shown below the last hop. This time is exactly the same as the last hop, but many people me what the round trip time was, so I included it to make things easier for people to understand.

All columns of the graph are now resizable.

The numbers for min and max time are now displayable on the upper graph (right-click the graph).

An option has been added so that PingPlotter works better under NT 3.51 (under Advanced options, "Use non-threaded name lookups"). This is automatically turned on when installed under NT 3.51.

Timeout time and "attack rates" (time PingPlotter waits between sending out requests for each hop - this was 25ms in 1.00.2, but really bad connections might need to make this longer) can be customized.

PingPlotter 2.0 uses significantly fewer resources while tracing.

Limited whois functionality is included. Right now, it only queries the Internic server - a future release may expand on this based on requests.

The "Copy as Image" feature includes more information and looks nicer.

This version will be shareware - and will cost $15.00 to register. The unregistered version will allow you to use all these features to evaluate, but will include "reminder" notices to encourage people to register. The current freeware version will remain freeware and will remain available to those that prefer it.

More (what feature list would be complete the ubiquitous "More" feature?).


Operation

Click inside a circle [image] to get more details about a feature.


Options

Click inside a circle [image] to get more details about a feature.


Popup_9999
A 9999 in the "Curr" column means that the packet was lost (didn't return in the time allocated).


Popup_AddressToTrace
The "Address to Trace" edit box allows you to pick a new host to trace to.  You can either type in an address or select one from the list below.  Any time you successfully trace to a host, that host is added to the list below.  To delete a host, right-click it in the list and then select "Delete".


Popup_Alert_Average
Pick this option if you want the alert to fire when the average of the last X samples is over the specified number.  Be aware that timeout packets are NOT included in this average.  If you want to look for timeouts, use the other event type (single out of range samples instead of average).


Popup_Alert_EMail
If an alert fires, you can send an e-mail.  Before you can set up an alert that uses e-mail, you need to set up your e-mail server name and your email address (do this from the edit menu).

E-mail alerts are kind of unique.  You don't want to send e-mail every 3 minutes when an alert fires, but you probably want to know pretty quickly when something does happen.  Ping Plotter allows some flexibility here.

The maximum e-mail frequency (in minutes) tells Ping Plotter how often you'll accept e-mails.  Something like 60 minutes works pretty well here - it doesn't overwhelm you, but you still get a pretty good flow of information.

How long to wait for worse conditions means that once Ping Plotter hits an alert situation, it won't send the e-mail for this many more minutes.  Often, when an alert fires, the worst is yet to come.  This option allows you to wait a few minutes to find out if it was a temporary or more permanent alert condition.  I like to use 5 minutes here.


Popup_Alert_LogToFile
This option will log the alert sample set to a log file.  If your final destination is:  www.nessoft.com, then the text file will be called www.nessoft.com.txt.


Popup_Alert_Name
The alert name is used to identify the alert when attaching to a host.  Make sure you name this something besides "New Alert 7" or it's going to be hard to figure out what it does later... :)  Of course you can always change the name later, too...


Popup_Alert_Out_Of_Range_Count
Use this alert type if you want to count the number of samples that fall out of range.  If you want to only count the number of packets that timeout, use the number 9998 here.


Popup_Alert_PlayWave
When this is turned on (and a .WAV file is selected), the .WAV file will be played every time the event fires.  This can happen quite often (for example when a server goes down) once the initial alert fires.  Enter "BEEP" (no quotes) here if you just want to beep the computer speaker instead of playing through the sound card.


Popup_Alert_TraceCount
This specifies the number of samples to examine.  This does NOT have to match the "number of samples to include" from the main screen - so you can set up whatever conditions you want.  Ping Plotter uses this number of samples to either average - or to count out-of-range conditions.


Popup_Average
The Avg column shows the average response time of the last X samples (where X is the samples to include).  Any timeouts are not included in this sample.


Popup_Avg Line
The red line on the graph is the average response time for this host.


Popup_Brackets_Underline
Any hop number surrounded by brackets (like [13]) means that that hop is being monitored for an alert (see alerts for details on setting up an alert).

Any hop that is underlined means that it's being traced on a time-line graph as well (which you'll be able to see).  The underline makes it easy to de-select a hop from being monitored.


Popup_CurrGraph
The blue X on the graph is the graph of the current (or most recent) sample taken.


Popup_Current
This column shows the individual sample time of the most recent sample included in the set.  If a number is displayed as "9999", that means that the packet was lost - a packet was sent out but was never returned.


Popup_Err Column
The ERR Column indicates the number of errors (or lost packets) that have occurred in the current sample set.  If you're only including the last 10 samples, then only the number of timeouts in the last 10 samples are shown here.  If you want to find out how many timeouts have happened over the entire session, change the "Samples to Include" number to 0 (which includes ALL samples).

New in version 2.02, this is displayed as Packet Loss % by default.  Right-click the graph will give you an option to re-enable the ERR column.


Popup_Graph Scale
The number shown here indicates the graph scale.

If a dynamic scale is being used, then this number is the maximum response time of any of the included sample set.  This number can change (and WILL change) as new samples are received.

If a fixed scale is being used, this number will always equal that scale.  You can change to a fixed scale by going to Advanced Options.


Popup_Option_Color Background
The background of the graph uses colors that don't display well unless your video drivers are set for more than 256 color.  Turn off this option if you're having problems seeing the graph (ie:  It has little speckled dots instead of a solid color).


Popup_Option_Color Hop
This option can probably be left on all the time - it marks whether or not the red/yellow/red is painted onto the background of the HOP column.  The colors used should work fine on a 16 color screen, though, so you're probably going to be OK leaving it on.  If you want a "Copy as Image" to show up without color, turn this off.


Popup_Options_Color Speeds
These boxes control the point at which the colors change.  By default, all response 200 ms and below will paint green.  From 201 to 500 will paint yellow, and over 500 will paint red.  These numbers apply to both the HOP column and the graph background.  In addition, the legend on the graph screen will be updated with these number.

You'll probably want to change the numbers based on your internet connection speed.  If you've got a T1 or a cable modem, the listed numbers are probably pretty good (you might move them down a little if you're tracing to a fast site).  If you have a modem, you probably want to crank these numbers up a bit.

A reasonable number for a modem would be 350 for Warning and 600 for Critical.  You might want to play around a little with these, though.


Popup_Options_Hop Interval
This can be an interesting number to manipulate.  It's really meant for "advanced" users, so you don't NEED to change it.

Ping Plotter sends out multiple packets at the same time and times everything at once.  Actually, it leaves a tiny interval between each packet so as not to completely saturate your bandwidth when it sends out 30 packets.  This time interval is adjusted by this parameter.  Most of the time, 25ms is good.  This falls within realm of what a 28.8 modem can perform.  If you've adjusted your packet size, or your connection to the internet is really slow, you might want to crank this number up a little.  If you have just oodles of bandwidth, you can crank it down a little.  Be aware that a too-small number can adversely affect your data.


Popup_Options_Non-threaded lookups
NT 3.51 in particular doesn't like to have multiple IP addresses resolved into names at the same time.  NT 4.0 and Windows 95/98 work fine with this check mark turned off.  Performance is best with this turned off.

When this switch is on, Ping Plotter will still uses multiple threads to do tracing, but the looking up of names is done one at a time.  When installing onto a machine running NT 3.51, this option is turned on by default.

Symptoms of having this switch off under NT 3.51 is that Ping Plotter stays in memory - even after you close Ping Plotter.  When you close Windows NT, it notifies you that Ping Plotter is still running.  If you run into this problem, turn this switch on.


Popup_Options_Packet Size
This adjusts the size of the packet that Ping Plotter sends out to the host.  Sometimes routers in the path can be adversely affected by packet size.  You can play with the packet size if you suspect that one of the routers is incorrectly configured or is likely to cause problems with larger (or smaller) packets.

Having this number too high will HUGELY affect your performance.  It's best to leave this pretty small.  Valid ranges are from 10-512 bytes.  Actually, anything up to 32K will be accepted, but using a packet size over 512 bytes is just asking for trouble.


Popup_Options_Scale
By default, Ping Plotter will automatically adjust the scale of the graphs to fit the data you're collection.  Sometimes, if one of the hops in your trace has really bad performance, this can cause the graph to become almost unreadable.  If this happens, you can fix the scale of the graph so it doesn't change.  Both the trace graph - and the time-line graph are fixed by this number when set.


Popup_Options_Show X
To watch "trending", it's sometimes nice to see what the most recent sample is.  This option will enable that.  A little blue X will be drawn on the graph that represents the most recent sample.  You might want to turn this off when submitting a picture to an ISP so as not to confuse them or add anything they can question.


Popup_Options_Timeout Speed
This option allows you to fine-tune your performance a little.  By default, Ping Plotter will wait for 10 seconds for any packet to return.  If the packet doesn't return in 10 seconds, then it is counted as a lost packet.  If patience isn't one of your virtues, you can turn this down somewhat.  No matter what your value is here, timed out packet will show with the time "9999".

Because of the performance enhancements offered by Ping Plotter, it's unlikely that this option needs to be changed.  If it's set too low, it can cause misleading data to be generated.  For best results, leave this at 9999.


Popup_Querying
When the word "Querying" is displayed here, Ping Plotter is waiting on the internet for something - either a trace packet to return or a name lookup to return.  When nothing is displayed here, Ping Plotter is just waiting for you to hit "Trace" or "Resume" - or it's waiting for the specified time interval to elapse so it can get its next sample.


Popup_Round Trip
The round trip line is optional (it can be removed from the "View" Menu).  This shows exactly the same as the last server in the chain, but it's sometimes nice to have this number re-announced for ease of reading.  This line shows the time it takes to get from your computer to the destination server and back again.


Popup_Samples To Include
The Samples To Include is an important one to understand how it works.

When running a trace, Ping Plotter can look at just the most current samples.  This is great to watch "trending" (where the response changes over time).  If you include ALL samples (type 0 in this field), then after a bunch of samples, new samples don't affect the graph very much.  Setting this to something like 10 allows you to see how the response times are right now.  All numbers in the trace (upper) graph are affected by this.


Popup_TimeGraphTimeIndicator
The time under the graph shows what time these samples were taken.  If you have more samples than can be displayed on the graph, you can either change the scale (by right-clicking the graph) or scroll the graph (by clicking on the graph and then dragging left or right).


Popup_TimeGraphTimout
A red line in the time-line graph indicates a timeout in this time period.  You can zoom in on this by double clicking it - to find out where the timeout first occurred (in the upper graph).


Popup_Trace Interval
The Trace Interval is the amount of time Ping Plotter will wait between each sample set.  If you're doing a long term monitoring project, you may want to set this to 1 minute (or more).  If you're just doing a quick set, you might want to set this to something lower (5 seconds or 10 second).  If the up/down arrow doesn't have the amount of time you want, just type in the time interval you want (e.g. 3.5 seconds).


Popup_TraceCount
The "# of times to trace" allows you to stop tracing after a certain number of traces.  If you're only interested in a set trace count, you can save some bandwidth usage by not allowing Ping Plotter to trace forever.


Popup_Variation
The black line on the graph indicates the range of times received.  The leftmost side of the line is the minimum response time - the rightmost being the maximum response time.


Registration

Ping Plotter is developed under the shareware concept.  You're probably familiar with this - you can try out the software for a limited time (30 days) after which you need to pay for it.

It only costs $15.00 per computer to register (contact me at pete@nessoft.com for multi-copy discounts or site licenses - or check the Ping Plotter web page).  You'll get a couple of things when you register:

1)  You can stop having to deal with the annoying registration reminders.

2)  You can send me questions and I'll give you more attention than I do people that don't send me money.

3)  You get free upgrades to future upgrades of Version 2.

4)  You'll be able to run any beta version that becomes available.

If you don't think Ping Plotter is worth $15.00, version 1 of Ping Plotter is freeware - and you can use it without registering.  You won't get any of the great new features of Version 2, though.

The easiest way to register is to check out the Ping Plotter home page (http://www.nessoft.com/pingplotter), find a "Order" button, and use your credit card.  You'll get a registration code immediately and won't have to wait for me to process your order.

You can also register by sending a check to:

Pete Ness

1819 Beacon Hill Circle #31

Cuyahoga Falls, OH 44221.

When I get your check, I'll send you an e-mail with a registration code.  Make sure you provide an e-mail address when sending a check.

These directions are all repeated on the Ping Plotter home page (and may have been updated since this file was made), so check there before you order.

Thanks,

Pete


Reporting

Ping Plotter doesn't have any built-in printing options.  What it WILL do for you though is copy its data to the clipboard or text file and let you manipulate it in your favorite software package from there.

There are several ways to output your data.

1.	The graph.  Select the Edit/Copy as Image option from the main menu to copy the graph and the legend to the clipboard.  The column and graph sizing will match what's on the screen, so make sure everything you want printed is displayed.  You can paste this into MS Paint or any other graphics application to print or save.

2.	Raw data - in TraceRT format.  Select the Edit/Copy as Text option to copy the raw data to the clipboard.  This is copied in a format that's similar to most text-based Trace route programs.  The difference here is that the "Samples to Include" option on the main screen is used to decide how many samples to include in this.  If you're sending a graph to someone trying to show them there's a problem in the network someplace, it's probably a good idea to include this data too.  Just paste this into your e-mail program or whatever.  For best results, use a fixed pitch font (Courier New) like I've done below.
Be careful about including too many samples in this.  I find 5 samples works pretty well - just go to the Samples to include and enter 5 - and then go copy.

Target Name: www.mci.net
         IP: 204.70.133.140

 1   *       *       *       *        []
 2   40 ms   30 ms   20 ms   20 ms   20 ms   akron2.neo.lrun.com [204.210.223.17]
 3   20 ms   20 ms   20 ms   20 ms   30 ms   twcneo-mci.neo.lrun.com [204.210.219.18]
 4   80 ms  350 ms  300 ms  120 ms   90 ms   bordercore2-hssi5-0-2.WillowSprings.mci.net [166.48.22.9]
 5   91 ms  160 ms  150 ms   80 ms  100 ms   core1.Reston.mci.net [204.70.4.229]
 6  101 ms  140 ms  270 ms   70 ms  140 ms     [204.70.176.22]
 7   81 ms  140 ms  190 ms  110 ms  120 ms   fuss1-0.Reston.mci.net [204.70.255.253]
 8  160 ms  190 ms  160 ms   80 ms   90 ms   beauregard.Reston.mci.net [204.70.133.140]

3.	Comma delimited text file.  This is especially built to import into a program like Microsoft Excel - so you can manipulate the numbers around and create output in different formats.
To export to a comma delimited text file, go to the File menu and select "Export to Text File".  From there, you can specify the file you want to export to and a couple of other options.  You can either export all samples in memory - or the range as specified on the main screen.
The option on this screen "Include sample times in export file" will specify whether or not to include the time each sample was taken at.  If you don't have this turned on, all the samples will be output, but you won't get corresponding times.  Turn this option on to include the times.


Support

Ping Plotter is supported under the model that most inexpensive shareware programs are: via e-mail. If you've registered, you're much more likely to have your feature requests incorporated into the new version - you're also much more likely to get help trying to figure out your problems and also help you figure out what's wrong with your internet connection based on the information provided by Ping Plotter.  That doesn't mean that unregistered users don't get support - you're just more likely to have time spent on you if you've paid a little money :).

If you find a problem with Ping Plotter that isn't addressed in the Troubleshooting section, the first thing you should probably do is check the web page for an updated version.  The most recent version is available at:

http://www.nessoft.com/pingplotter

If that doesn't help you, you're welcome to send an e-mail.  Also, if you have a feature request, send mail here.

Internet e-mail:

support@nessoft.com

CompuServe:

102347,710

If you've had a good experience with Ping Plotter, send an e-mail on that too!  It's great to hear success stories!


Timeline Graphing

The timeline graph feature of Ping Plotter is specifically built for long-term monitoring projects.

Often, your ISP problems occur when you're not watching it.  The timeline graph feature of Ping Plotter allows you to trace over a long period of time - and then look back over this history to find when and where the problem occurs.

By default, Ping Plotter will automatically trace the last hop (the host you're tracing to) on a time-line graph.  You also trace any of the other hops by right-clicking on that hop in the trace graph and then selecting "Show this Timeline Graph".  You can also turn off any graph by this same mechanism.

Once tracing, Ping Plotter will record each sample on the time-line graph.  The width of the bar graph will vary depending on the scale of the graph and the time interval of your trace.

To change the scale of the graph, right-click on the timeline graph - then select the time scale you want to use.  This scale affects ALL timeline graphs and is saved when you shut down Ping Plotter.

If there is more data collected than you can show on the timeline graph with your selected scale, click on the graph and while holding down your mouse button, drag the graph.  This will allow you to move back in history and examine the samples.

If you find a time period that looks "interesting", you can double click on the timeline graph at that point.  The upper graph (the trace graph) will move to that time period.  This allows you to troubleshoot where the connection problem may have occurred.

When you're done zooming the graph, right-click on it and select "Reset focus to current".  This will return both graphs (the timeline and the trace graph) to the current time.

Because Ping Plotter takes so little CPU time when running, you can set it up to trace while you're doing something else.  One particularly interesting way to use it is to set it tracing to a site that is hosting a game you're playing (Quake, Nascar racing, or some similar on-line game where ping times are important).  If you notice your response slowing down, you can check out Ping Plotter and use it to quickly troubleshoot where the problem is coming from.


Troubleshooting

Q.	Why doesn't Ping Plotter work on my machine?  It gives me some kind of error message and doesn't work!

A.	The first thing to do in this situation is to try the Windows "TraceRT" command from a DOS command line.  Ping Plotter uses Windows API calls to do its tracing - and TraceRT uses exactly the same API calls.  If TraceRT doesn't work, it's extremely unlikely that Ping Plotter will work.  If TraceRT DOES work, then so should Ping Plotter.

Q.	Why do all hosts show up as "Destination Unreachable" on the 2nd (or 1st or 3rd) hop?

A.	Are you connecting to the Internet via a firewall or proxy server?  Sometimes these services block ICMP echo requests (which Ping Plotter and all Windows trace route software use).  Try using the Windows "TraceRT" command to see if it gives you similar results.

Q.	Why does a trace to www.microsoft.com (and it's affiliates) always return "Destination Host Unreachable"?  How about some of the other sites that return this all the time?  I can connect to these sites fine with Internet Explorer!

A.	One of the routers used between you and the destination site are not passing through ICMP echo requests.  This isn't TOO common, but does happen sometimes.  If you feel you really need to trace to these sites, contact them to find out what you can do about it.