TABLE OF CONTENTS:
INTRODUCTION AND BACKGROUND:
This is the packet used by the GCN/TAN system to monitor the status of the
Internet socket connection between GCN/TAN and the remote computer at the site.
These "imalive" packets are sent by the GCN/TAN computer to each actively
connected socket site and read back. If there is a write error or nothing
is read back, then this automatically signals the GCN/TAN program that the
socket connection is broken and it then initiates the reconnection sequence.
THE SEQUENCE OF ACTIVITIES:
1) The GCN/TAN system starts out in a loop of pinging each "machine.domain"
listed in the "sites.cfg" file that are scheduled for Internet socket
distribution method.
2) If a successful "ping" reply is received, then a connection is opened.
3a) The GCN/TAN program then drops into an infinite loop of sending an Imalive
packet to the remote site once every 60 seconds. The serial number and
sending times are recorded for each site.
3b) If an error during the write operation is detected, that site is marked
as being disconnected (and then a series of reconnection attempts are made).
4) After sending Imalives to all the actively connected socket connection
sites, it drops into a sub-loop of trying to read back the echoed Imalive
packet. All packets read back are checked for the proper serial number
and the total round-trip travel time is recorded in a log file. All errors
are also recorded in the log file.
THE UTILITY OF THIS IMALIVE PACKET:
There is a two-fold utility to these Imalive packets. The first is that it
allows the GCN/TAN system to monitor the status of the socket connection (both
ways) to be able to detect when the connection is broken or even in a disabled
state (poor transmission time or intermitant transmission). The other is that
it allows the remote site to monitor the status of the connection. If the
remote site does not get an Imalive packet every 60 seconds, then it knows
(a) the connection is broken and it should drop back into an initialized
state of waiting for a new connection attempt, or (b) the GCN/TAN system is
not functioning (for any of several causes).
The roundtrip travel time is also recorded. This provides a measure of the responsiveness of the Internet. It is therefore important that the sites write the Imalive packet back to the socket immediately after reading (with no intervening processing at your end) so that the roundtrip time is a realistic measure of the Internet and not of your machine's load-factor. And for more information on the Internet socket connection method and a histogram of roundtrip travel times.
FORMATS:
The format of the Imalive packet is described in the
socket definition document
to get the details (this is packet_type=3).
A brief description of the format and contents are also listed below.
DISTRIBUTION METHODS:
Imalive packets are available only throught he socket connection and dedicated
phone connection methods. It would be absurd to send imalives to sites
via the e-mail or pager methods [people already get too much e-mail ;-)].
FURTHER HELP:
For more information, please contact me:
Phone: 301-286-3106
E-mail: scott@lheamail.gsfc.nasa.gov
The Imalive packet consists of 40 four-byte quantities. It is used to monitor the socket connection between GCN/TAN and the remote site. The order and contents are listed in the table below. They have the same function, meaning, and content as the items of the same name in the packet types 1 & 2. Declaration Index Item Units Comments Type Name ----------- ----- --------- ---------- ---------------- long 0 pkt_type integer Packet type number (=3) long 1 pkt_sernum integer 1 thru infinity long 2 pkt_hop_cnt integer Incremented by each node long 3 pkt_sod [centi-sec] (int)(sssss.sss *100) long 4-38 spare[35] integer 140 bytes for the future long 39 pkt_term integer Pkt Termination (always = \n)