Host-IMP interface

Document Type RFC - Unknown (May 1969; No errata)
Last updated 2014-05-06
Stream Legacy
Formats plain text html pdf htmlized bibtex
Stream Legacy state (None)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state RFC 7 (Unknown)
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                         G. Deloche
Request for Comment: 7           University of California at Los Angeles
NIC: 4693                                                       May 1969

                           Host-Imp Interface

      G. Deloche      -->  Prof. J. Estrin
                           Prof. L. Kleinrock
                           Prof. B Bussel
                           D. Mandell
                           S. Crocker
                           L. Bonamy

   Object: Arpa Network - Specification Outlines for Host-IMP (HI)
   Interface Programs.


   I.  Introduction

   II.  Scope of the software organization.
           II-1    Network program
           II-2    Handler program

   III.  Questions

   [The original of RFC 7 was hand-written, and only partially illegible
   copies exist.  RFC 7 was later typed int NLS by the Augmentation
   Research Center (ARC) at SRI.  The following is the best
   reconstruction we could do.  RFC Editor.]

Deloche                                                         [Page 1]
RFC 7                      Host-IMP Interface                   May 1969

I.  Introduction

   This paper is concerned with the preliminary software design of the
   Host IMP interface.  Its main purpose is on the one hand to define
   functions that will be implemented, and on the other hand to provide
   a base for discussions and ...(unreadable).

   This study is based upon a study of the BBN Report No. 763.

II.  Scope of the software organization.

   The system is based upon two main programs: the Handler program that
   drives the channel hardware unit, and the Network program which
   carries out the user's transmission requests.

   As the communication is full duplex, each of these programs can be
   viewed as divided into two parts: one is concerned with the output
   data, the other with the input. (See Fig. 1)

   These two programs exchange data through a pool of buffers, and
   logical information through an interface table.

   In the following we only focus on the output part of each program
   (See Fig. 2).  The input part would be very similar.

II-1.   Network program.

II-1-1. Multiplex function.

   This program multiplexes the outgoing messages (and distributes the
   incoming messages).  The multiplexing consists in stacking up all the
   user's (or caller, or party) requests and filling up the pool of
   buffers so as to keep the handler busy emitting.

   Multiplexing (and distribution) is based on the link identification
   numbers.  (Link = logical connection between two users).  The
   multiplexing problem is closely related to the interface between a
   user's program and the network program, that is in
   fact...(unreadable) operating system (See below: Questions).

II-1-2.  Output message processing.

   When a user's program wants to send out text it should indicate the
   following information (through a macro, or as call parameters): text
   location, text length in bytes, and destination.

Deloche                                                         [Page 2]
RFC 7                      Host-IMP Interface                   May 1969

   Using these data the Network program:

      *  prepares a 16 bit Host heading (1 bit: trace, 2 bits: spares, 8
         bits: link identification no., 5 bits: destination host)

      *  inserts a 16 bits marking between the header and the text so as
         to start the text at a word boundary.  This marking consists of
         a one preceding the first bit of the text and, in turn,
         preceded by fifteen zeros to fill up the gap.

      *  checks the length of the user's text - if it exceeds 1006 bytes

          +-                                                     -+
          |8080 (max host message length) - 32 (heading + marking)|
          |                8 (byte = 8 bits)                      |
          +-                                                     -+

   the program breaks down the text into a sequence of messages whose
   maximum length is 1006 bytes - Each of these messages is preceded by
   a heading as explained above.

   Remark: in that case one of the heading space bits could be used for
   indicating that several messages belong to the same text.

      *  _transcodes_ the EBCDIC characters constituting the messages
         into ASCII characters.

      *  _fills_ the buffers of the pool with the content of the

      *  _updates_ the content of the interface table and moves the
         filling pointers (see below).

II-2.  Handler program.

   This program is initiated either by the network program, or by the
   I/O interrupt.

   This program will be very short.  It will be coded in master mode
   (privileged instructions) and should be integrated in the I/O
   supervisor of the operating system.
Show full document text