------------------------------------------------------------------                                                               
 
                             TCP Viewer

                            Version 2.80

------------------------------------------------------------------

------------------------------------------------------------------
CONTENTS
------------------------------------------------------------------
INTRODUCTION
DETAILS 
COMMAND-LINE PARAMETERS
REQUIREMENTS
REGISTERING
DISTRIBUTING
CONTACT INFORMATION

------------------------------------------------------------------
INTRODUCTION
------------------------------------------------------------------
TCP Viewer captures and displays all data that is transferred between client
processes and a server process communicating through TCP/IP. The processes can
be running on the same machine or different machines located anywhere on a
network or the Internet. TCP Viewer can run on a machine different than the
machine(s) that the processes are running on. An example of a client and server
is a web browser and web server.

TCP Viewer can be used by a developer to debug protocol problems or by anyone
who is curious about what data is passed between processes.

------------------------------------------------------------------
DETAILS
------------------------------------------------------------------
A program that is similar to TCP Viewer is TCP Spy. TCP Spy works much
differently than TCP Viewer. TCP Spy captures and displays all sockets calls
that an application makes and the data that is sent on the application's
sockets. After TCP Spy's Start button is clicked, the next application that
makes a socket call will be spyed. For more information on TCP Spy, visit
http://www.westbrooksoftware.com.

TCP Viewer is a gateway. It is a server which acts as an intermediary for some
other server. Unlike a proxy, a gateway receives requests as if it were the
intended server and is protocol agnostic. The client is unaware that it is
communicating directly with a gateway and indirectly with the intended server.
TCP Viewer captures and displays the data that it passes from clients to the
intended server and vice-versa.

For a client to connect to a server, it must know the name or IP address of
the machine that the server is running on, and which port number the server
has established. The name or IP address of a machine is like the zip code of a
mailing address. The port number is like the street address. You may be
unaware of port numbers because most protocols have a default port number that
is usually used. For example, HTTP's default port number is 80. Telnet's is
23.

To use TCP Viewer, TCP Viewer needs to be configured to communicate with the
intended server and the client needs to be reconfigured to communicate with
TCP Viewer. Another option is for the intended server to listen on a different
port number than originally configured, and for TCP Viewer to run on the same
machine as the intended server at the port number that the intended server was
listening on. In the latter, the client configuration does not change. This is
easier than it sounds and an example of the first will follow.

TCP Viewer works great with protocols, such as Telnet, that have a constant
connection. For other protocols, such as HTTP, a proxy should be used and TCP
Viewer should be the gateway between the client and the proxy. This is
discussed later. And, a link to a free proxy is provided.

The following is an example on how to use TCP Viewer with HTTP, without
considering whether a proxy is being used.

1. Provide TCP Viewer with the name or IP address of the machine that the
   intended server is running on (Remote Host), and the port number that the
   intended server has established (Remote Port). For example,
   Remote Host=www.yahoo.com, Remote Port=80.
2. Provide TCP Viewer with a arbitrary port number to establish (Local Port).
   If 0 is provided, TCP Viewer will ask the OS for an available port number
   and display it. For example, Local Port=9000.
3. Click TCP Viewer's Start button.
4. Configure a client to connect to TCP Viewer instead of the intended server.
   This involves providing a client with the name or IP address of the machine
   that TCP Viewer is running on, instead of the machine that the intended
   server is running on, and the port number that TCP Viewer has established,
   instead of the port number that the intended server has established. For
   example, http://127.0.0.1:9000. Substitute 127.0.0.1 with the IP address of
   the machine that TCP Viewer is running on. TCP Viewer shows this IP address
   on its status bar.

Despite the example, a proxy should be used for protocols such as HTTP. For a
free proxy, go to: http://www.analogx.com/contents/download/network/proxy.htm.
Consult your client software's documentation on how to configure your client
to use a proxy. You will need to configure the client software to communicate
with TCP Viewer as its proxy, and configure TCP Viewer to communicate with the
real proxy. Make sure the proxy is running before the proxy settings are
altered.

TCP Viewer displays its output in a scrollable text box. This data may
additionally be sent to a file as text or HTML. By default, only 32KB of data
is kept in the scrollable text box. Higher data limits may be selected,
including unlimited. It handles more than one connection.

Based upon the first transferred message, TCP Viewer will determine if the
protocol is text based. If so, TCP Viewer will test each following message for
text. If a message contains only text, TCP Viewer will display it as such.
Else, TCP Viewer will show the message in hexadecimal and ASCII. If the
protocol is HTTP, the HTTP headers will be displayed as text.

The unregistered version does not provide the option of sending data to a
file, only keeps 32KB of data in the scrollable text box and handles a maximum
of four simultaneous connections. When you register TCP Viewer, you will be
sent a code that enables the additional features.

------------------------------------------------------------------
COMMAND-LINE PARAMETERS
------------------------------------------------------------------
No command-line parameters need to be provided to TCP Viewer. If provided, it
must conform to the following Usage statement:

Usage: TCPVIEWR <remote host> <remote port> <local port> [-file <log file>]
  [-size 32KB|128KB|512KB|2MB|Unlimited] [-detail Low|Medium|High] [-auto]

 -auto causes TCP Viewer to 'Start' automatically. And, it will not prompt for
confirmation, when closing, if the local port is still opened.

For example, 'TCPVIEWR www.yahoo.com 80 9000 -file YAHOO.TXT -auto'.

------------------------------------------------------------------
REQUIREMENTS
------------------------------------------------------------------
* Windows 9X/ME/NT/2000/XP
* 2MB RAM 
* 1MB hard disk space 

------------------------------------------------------------------
REGISTERING
------------------------------------------------------------------
The registration fee for TCP Viewer is $20 and licenses everyone in your
company to use it. See the registering topic in TCP Viewer's help file for
additional details.

------------------------------------------------------------------
DISTRIBUTING
------------------------------------------------------------------
You may make as many copies of the software as you wish; give exact copies of
it to anyone; and distribute the software in its unmodified form via
electronic means. There is no charge for any of the above.

You are provided with a license code when you register. You may not distribute
the license code to anyone outside of your company.

------------------------------------------------------------------
CONTACT INFORMATION
------------------------------------------------------------------
Name
David Westbrook

Electronic Mail Address
david@westbrooksoftware.com

Phone
1-877-634-6754 (Toll Free)

World Wide Web
http://www.westbrooksoftware.com

Address
11129 Harbour North Lane
Jacksonville, FL 32225


