Network Working Group                                          D. Cantor
Request for Comments: 565                Computer Corporation of America
NIC: 18777                                                28 August 1973


            Storing Network Survey Data at the Datacomputer

   In November, 1972, Computer Corporation of America (CCA) and the
   Programming Technology Division of the Dynamics Modeling System (DMS)
   at M.I.T.'s Project MAC began planning to transmit to CCA's
   datacomputer [1] information about the behavior of ARPA network hosts
   collected by DMS's program SURVEY [2].  The information was to be
   stored at the datacomputer and retrieved by an interactive program
   that would address the datacomputer from DMS's PDP-10.

   One goal of this joint project was to enable DMS to retain all of the
   information that SURVEY collects: SURVEY had been running since late
   1971, saving only a short daily summary of its findings and
   discarding potentially useful details.  A second goal was to discover
   and remove shortcomings in the interface between CCA's datacomputer
   and a program running at a remote host.

   The project was completed last month, and the programs described in
   this document have been operating successfully with the datacomputer
   since July 10.

   Part 1, below, describes SURVEY's output.  Part 2 describes a program
   that retrieves portions of that output from the datacomputer.

Part 1: The Survey Database

   Every twenty minutes, DMS's program SURVEY wakes up and performs the
   initial connection protocol from the PDP-10 at DMS to the logger
   socket (socket 1) of each 28 network hosts.

   SURVEY records a date time, host, status,and response time for each
   host.  A host may be in one of these states:

      undetermined or not surveyed

      disconnect from the network or dead

      network control program not responding

      ICP to logger aborted by the host

      ICP to logger timed out by SURVEY after 20 seconds




Cantor                                                          [Page 1]


RFC 565               Storing Network Survey Data         28 August 1973


      logger available and responding within 20 seconds

   SURVEY records response times responding in tenths of seconds.

   When the data for all 28 hosts has been assembled, SURVEY transmits
   that data to CCA's datacomputer.  If for some reason the datacomputer
   cannot accept the information, it is held at DMS and sent another
   time.

   The datacomputer's survey database is inverted by host, status,
   month, and year.  That is to say that the datacomputer maintains
   several indices to records of one attempt to establish a full duplex
   connection to one host's logger: it maintains one such index for each
   host, one for each status, one for each month, and one for each year.
   The datacomputer can select records that are specified in boolean
   expressions by performing boolean operations on the inversion, and
   without consulting the data itself.  The inversion thus facilitates
   rapid interaction between the survey retrieval program described
   below and the survey database at the datacomputer.

   SURVEY expresses the record of each attempt to access one host in 17
   ASCII characters.  The record of one survey then occupies 17 * 28 =
   476 characters, and each day the datacomputer receives 3 * 24 * 476 =
   34,272 characters from DMS.

Part 2: Retrieving Survey Data

   A Program called SURRET, written at DMS in the language MUDDLE,
   allows one to selectively retrieve material from the survey data base
   stored at the datacomputer [3].  Its user may specify values, groups
   of values, or, where appropriate, upper and lower bounds for values
   of each of five fields: host name, date, time, response time, and
   host status.  In addition, one may request that all five fields or
   any subset of the five be retrieved.  A sample interaction with
   SURRET is reproduced below.

    <HOST (CASE-10)>$
    "OK"
    <DATE (AUG 5 73)>$
    "OK"
    <TIME (BETWEEN 2000 2400)>$
    "OK"
    <REQ ((TIME STATUS RESTIME))>$
    ;J205 10-08-73 1557:20 RHRUN: SUCCESSFUL COMPILATION
    .1241 10-08-73 1557:21 OCSOP: (DEFAULT) OUTPUT PORT OPENED






Cantor                                                          [Page 2]


RFC 565               Storing Network Survey Data         28 August 1973


   TIME           STATUS             R.T.(1/10 SEC)
   2004    LOGGER RESPONDING (UP)        019
   2024    LOGGER RESPONDING (UP)        024
   2044    LOGGER RESPONDING (UP)        021
   2104    LOGGER RESPONDING (UP)        016
   2124    LOGGER RESPONDING (UP)        046
   2144    LOGGER RESPONDING (UP)        018
   2204    LOGGER RESPONDING (UP)        017
   2224    LOGGER RESPONDING (UP)        017
   2244    LOGGER RESPONDING (UP)        023
   2304    LOGGER RESPONDING (UP)        015
   2324    LOGGER RESPONDING (UP)        016
   2344    LOGGER RESPONDING (UP)        015
   "END OF DATCOMPUTER OUTPUT"

   The angle brackets, the material they enclose, and '$' (ESC or
   altmode) were typed by a person using SURRET.  The remainder was
   typed by the system.  The phrases in quotation marks are,
   effectively, SURRET prompts.  The status messages beginning with ';'
   and '.' were generated by the datacomputer.  The column headings and
   table were formatted by SURRET using figures retrieved from the
   datacomputer.

   SURRET generates datalanguage, sends it to the datacomputer, and
   processes systems diagnostics and data sent to it from the
   datacomputer.  The datalanguage generated for the foregoing SURRET
   request was:

   FOR |SURVEY.LOGTRY, SURVEY.LOGTRY WITH
     ((YEAR EQ '73' AND MONTH EQ '08' AND DAY EQ '05')
     AND (HRMIN GE '2000' AND HRMIN LE '2400')
     AND (HOST EQ '013'))
   HRMIN=HRMIN ;  STATUS=STATUS  ;  RESTIME=RESTIME  ;
   END;

   The field names in the datalanguage were entered with file
   descriptors before the first data was loaded.

   One can ask SURRET to retrieve new data by changing the values of any
   number of fields and issuing a new REQ (request).  The command
   <state> displays current values for the five prospective retrieval
   criteria.  Thus:

    <HOST (USC-44)>$
    "OK"
    <STATE>$
    !HOST: (USC-44)STATUS: () RESTIME: () DATE: (AUG 5 73)
      TIME: (BETWEEN 2000 2400)!



Cantor                                                          [Page 3]


RFC 565               Storing Network Survey Data         28 August 1973


    <REQ ((TIME STATUS RESTIME))>$
    ;J205 10-08-73 1610:08 RHRUN: SUCCESSFUL COMPILATION
    .1241 10-08-73 1610:09 OCSOP: (DEFAULT) OUTPUT PORT OPENED

   TIME           STATUS             R.T.(1/10 SEC)
   2004    LOGGER RESPONDING (UP)        020
   2024    LOGGER RESPONDING (UP)        008
   2044    LOGGER RESPONDING (UP)        008
   2104    LOGGER RESPONDING (UP)        009
   2124    LOGGER NOT RESPONDING (LNR)   000
   2144    LOGGER NOT AVAILABLE(DEAD)    000
   2204    NCP NOT RESPONDING (NNR)      000
   2224    LOGGER NOT RESPONDING (LNR)   000
   2244    LOGGER NOT AVAILABLE (DEAD)   000
   2304    LOGGER NOT AVAILABLE (DEAD    000
   2324    NCP NOT RESPONDING (NNR)      000
   2344    LOGGER RESPONDING (UP)        007
   "END OF DATCOMPUTER OUTPUT"

   We might have retrieved all of the foregoing output with:

         <HOST (CASE-10 OR USC-44)>

      Moreover,

         <HOST (CASE-10 CCA OR USC-44)>

   would cause SURRET to access the database twice, once for information
   about Case-10, and then a second time for information about the
   remaining two hosts.

   Detailed Survey data from July 10, 1973 forward is available either
   directly from the datacomputer or through SURRET.  Persons who wish
   to use the datacomputer directly may obtain the pertinent documents
   through the NIC or by contacting Dale Stern at CCA (617-491-3670).

Endnotes

   [1] An overview of the data computer is given in Thomas Marill, The
   Datacomputer, 18 Oct '71, 7pp. (NIC 7979).  A detailed study of the
   programming language for addressing the datacomputer is found in
   Computer Corporation of America, Datacomputer Project Working Paper
   No. 3, Datalanguage, 29 Oct '71, 78 pp. (NIC 8208).  The current
   status of the language is reviewed in Richard Winter, Specifications
   for Datalanguage, Version 0/9, 6 Jun '73, 36 pp. (NIC 16446).  A
   user's manual for version 0/9, will be released by CCA in September,
   1973.




Cantor                                                          [Page 4]


RFC 565               Storing Network Survey Data         28 August 1973


   [2] SURVEY is described in Abhay Bhushan, A Report on the Survey
   Project, 22 June '73 (NIC 17375).

   [3] A detailed discussion of SURRET is found in Safwan Bengelloun,
   MUDDLE Survey Data Retrieval Programs, an internal DMS memo of 14
   June, '73.  Our purpose here is to describe enough of the program's
   syntax and structure to show how it interacts with the datacomputer.


         [ This RFC was put into machine readable form for entry ]
            [ into the online RFC archives by Via Genie 08/00]








































Cantor                                                          [Page 5]